GNU/Linux >> Tutoriels Linux >  >> Linux

Démarrage PXE avec le matériel UEFI (suite)

Cet article est la deuxième partie de deux d'une courte série. Au cas où vous l'auriez manqué, assurez-vous de lire le premier article, Comment configurer le démarrage PXE pour le matériel UEFI .

Dans le premier article, vous avez créé un serveur PXE fonctionnel, un serveur DHCP configuré pour fournir des adresses IP aux systèmes démarrés par PXE et un serveur TFTP pour fournir un système amorçable et des images ISO. Cet article poursuit la tâche de finition de votre environnement et inclut des conseils de dépannage en cas de problème.

Configuration HTTP

Un serveur HTTP est nécessaire pour fournir au nouveau serveur le Kickstart fichier ainsi que l'OS à installer. Il est possible de fournir ces fichiers via HTTPS, mais pour la plupart des nouveaux serveurs, par souci de simplicité, HTTP est utilisé.

Voici les étapes pour configurer le serveur HTTP :

1- Installez le HTTP serveur :

# yum install -y httpd

2- Montez l'image ISO Red Hat Virtualization Host (si elle n'est pas montée) :

# mount -t iso9660 /path/iso-file.iso /mnt -o loop,ro

3- Copiez l'image Squash et les fichiers ISO vers les emplacements cibles :

# mkdir /var/www/html/rhv4.3/{ISO,image}

# cp -a /mnt /var/www/html/rhv4.3/ISO

# cp /mnt/Packages/redhat-virtualization-host-image-update* /tmp

# rpm2cpio redhat-virtualization-host-image-update* | cpio -idmv

# cp /tmp/usr/share/redhat-virtualization-host-version_number_version.squashfs.img /var/www/html/rhv4.3/image

4- Copiez le Kickstart fichier à l'emplacement cible :

# mkdir /var/www/html/kickstarts/

# vi /var/www/html/kickstarts/ks.cfg 🡪 Create a new file called ks.cfg

5- Activer et démarrer le httpd service :

#systemctl enable httpd; systemctl start httpd

Fichier de lancement

Voici un exemple de Kickstart fichier qui peut être utilisé pour installer le RHVH OS. Red Hat recommande fortement d'utiliser l'option "Configurer automatiquement le portionnement" dans la destination de l'installation.

lang en_US
keyboard us
eula --agreed
rootpw Redhat --plaintext

#platform x86, AMD64, or Intel EM64T
reboot
text
bootloader --location=mbr --append="rhgb quiet crashkernel=auto"
zerombr
liveimg --url=http:// 192.168.1.10/rhv4.3/image/redhat-virtualization-host-version_number_version.squashfs.img
clearpart --drives=sda --all
ignoredisk --only-use=sda
autopart --type=thinp

%post --erroronfail
nodectl init
%end

Remarques :

1- L'URL ci-dessous est fournie par Red Hat et peut être utilisée pour créer un Kickstart personnalisé fichier :

[https://access.redhat.com/labs/kickstartconfig/](https://access.redhat.com/labs/kickstartconfig/)

2- Dans le %post section du Kickstart fichier, des commandes Linux peuvent être ajoutées pour définir les adresses IP statiques pour le ovirtmgmt ainsi que le hostname .

Options d'automatisation

Cette procédure convient à l'installation de plusieurs serveurs, mais elle nécessite des modifications manuelles. Cependant, il peut être entièrement automatisé de différentes manières.

L'automatisation n'entre pas dans le cadre de cet article, mais deux options différentes d'automatisation seront mentionnées ici à un niveau élevé :

Utiliser Ansible pour automatiser la mise sous tension des serveurs

La plupart des fournisseurs de matériel ont maintenant leur Ansible modules pour récupérer différents détails concernant les serveurs, ainsi que pour les allumer et les éteindre, donc pour automatiser l'installation du système d'exploitation, nous devons créer un playbook Ansible pour faire ce qui suit :

  1. Jeu 1 :Créer un modèle Jinja2 pour le Kickstart fichier où l'adresse IP statique et le nom d'hôte sont correctement remplacés dans la section post, en utilisant un fichier variable qui mappe l'adresse MAC de l'interface PXE à l'adresse IP statique et au nom d'hôte de chaque serveur, puis poussez le Kickstart fichier à l'emplacement approprié sur le serveur HTTP.
  2. Jouer 2 :Allumez le serveur nécessaire en utilisant l'adresse MAC de l'interface PXE.
  3. Jouer 3 :Sonder le serveur nouvellement installé à l'aide de l'adresse IP statique avant de passer à un autre serveur pour l'installation.

Avantages :

  1. Aucune activité manuelle n'est nécessaire autre que la mise à jour du fichier variable en cas de nouveaux serveurs.

Inconvénients :

  1. Cette option nécessite une intégration avec l'API de gestion du matériel.
  2. Cette option peut installer un système d'exploitation sur un serveur à la fois (vous ne pouvez avoir qu'un seul fichier kickstart hébergé sur le serveur http à la fois).

Utilisation d'Ansible pour post-configurer les hôtes après l'installation du système d'exploitation

Ici dans le dhcpd.conf nous codons en dur l'adresse IP qui sera attribuée pour chaque adresse MAC d'un nouveau serveur dans le réseau d'approvisionnement. Ensuite, nous créons un fichier d'inventaire comprenant ces adresses IP, ainsi qu'un fichier variable contenant le nom d'hôte et l'adresse IP statique pour chaque serveur qui est mappé à son adresse IP dans le réseau d'approvisionnement. Enfin, créez un jeu Ansible pour publier la configuration du serveur après l'installation du système d'exploitation.

Avantages :

  1. Aucune dépendance vis-à-vis des modules Ansible du fournisseur de matériel.
  2. Plusieurs serveurs peuvent être configurés en parallèle.

Inconvénients :

  1. Pas entièrement automatisé comme dhcpd.conf doit être modifié, ainsi que les variables pour les nouveaux serveurs, doivent être ajoutés. De plus, les serveurs doivent être mis sous tension manuellement.

[ Besoin d'en savoir plus sur Ansible ? Suivez un cours de présentation technique gratuit de Red Hat. Ansible Essentials :présentation technique de la simplicité dans l'automatisation ]

Configuration du pare-feu et du réseau

S'il existe des pare-feu entre les serveurs PXE et les réseaux de provisionnement, le trafic TFTP et HTTP entrant des réseaux de provisionnement vers les serveurs PXE doit être autorisé. Le trafic ICMP des serveurs PXE vers les réseaux d'approvisionnement (les nouveaux serveurs doivent être pingables à partir du serveur DHCP) doit également être autorisé.

Le trafic SSH entrant des réseaux de provisionnement vers les serveurs PXE doit être activé à des fins de dépannage, comme cela sera expliqué dans la section suivante.

De plus, la liaison de l'interface PXE sur les nouveaux serveurs complique la configuration et n'est pas nécessaire.

Depuis les serveurs PXE, les services DHCP, TFTP et HTTP doivent être activés par firewalld . En supposant que les services DHCP, TFTP et HTTP sont tous situés sur le même serveur, la commande suivante doit être exécutée :

# firewall-cmd --permanent --add-service=http --add-service=dhcp --add-service=tftp

# firewall-cmd –reload

Dépannage

Les configurations PXE nécessitent des efforts au début, et le dépannage peut être un problème car nous ne pouvons pas faire grand-chose sur les nouveaux serveurs car ils n'ont pas encore de système d'exploitation. Voici quelques conseils qui pourraient vous aider à résoudre les problèmes :

  1. Vérifiez que le serveur est accessible via l'IP DHCP. Cela peut être fait en trouvant l'adresse IP DHCP appropriée dans /var/lib/dhcpd/dhcpd.leases (ou en utilisant l'un des scripts Python disponibles en public pour analyser ce fichier) puis pingez-le.
  2. Utilisez tcpdump sur le(s) serveur(s) PXE pour faciliter le dépannage.
  3. Collecte de /run/initramfs/rdsosreport.txt connectez-vous en cas d'échec de l'installation du serveur.

C'est la partie la plus délicate du dépannage. Si l'installation échoue, vous n'aurez aucun réseau pour transférer ce fichier, et le support Red Hat ne pourra pas vous aider sans ce fichier.

Il existe plusieurs façons de collecter ce fichier, mais la manière la plus simple est la suivante :

  1. Démarrez le nouveau serveur à partir de RHEL 7 iso.
  2. Choisir le Rescue option.
  3. Appuyez sur Shift+F2 pour obtenir l'invite du shell.
  4. Utilisez fdisk pour créer une nouvelle partition sur /dev/sda de type Linux.
  5. Démontez l'ISO.
  6. Redémarrez le serveur.
  7. Une fois que l'installation a échoué et que vous êtes sur l'invite de la ligne de commande Dracut, procédez comme suit :
#mkdir /mnt

#mount /dev/sda1 /mnt

#cp /run/initramfs/rdsosreport.txt /dev/sda1

#umount /dev/sda1
  1. Redémarrez le serveur et répétez les étapes de 1 à 3.
  2. Monter /dev/sda1
#mkdir /mnt

#mount /dev/sda1 /mnt
  1. Ici, vous avez deux options :
  • Obtenez une adresse IP DHCP en utilisant :
#dhclient

#scp /mnt/rdsosreport.txt [email protected]:/root
  • Montez un répertoire sur votre ordinateur portable en tant que partition sur votre nouveau serveur, et copiez le rdsosreport.txt à cette partition.

Conclusion

Félicitations pour avoir atteint ce point. Vous disposez maintenant d'un système PXE fonctionnel qui peut déployer de nouveaux hôtes RHV. N'oubliez pas de vous référer à la section de dépannage, si tout ne fonctionne pas comme prévu. Vous devez également terminer chaque étape telle qu'elle est écrite pour réussir à atteindre ce point. Vérifiez votre travail car il y a de nombreuses étapes détaillées. Bonne chance à vous avec votre nouvel environnement.

Références

  • Hôtes d'installation pour la virtualisation Red Hat
  • Préparer une installation réseau

Linux
  1. Configuration du démarrage HTTP UEFI avec libvirt

  2. Remplacer la nouvelle ligne par Nul ?

  3. Matériel Uefi et double démarrage avec Windows ?

  4. Filtrez et optimisez les requêtes de fichiers statiques avec NGINX sur Ubuntu 18.04

  5. Aperçu des images avec ngx_http_image_filter_module

Comment créer un serveur de fichiers personnel avec SSH sous Linux

Commande Linux WC avec exemples

Démarrer avec ls

Comment configurer le démarrage PXE pour le matériel UEFI

Signatures numériques avec GnuPG

Administrateur Windows cherchant à démarrer petit avec le serveur de fichiers Linux (ubuntu)