Chapitre 21. Préparation à une installation réseau

L'installation d'un réseau avec un serveur d'installation vous permet d'installer Red Hat Enterprise Linux sur de multiples systèmes grâce à un serveur Preboot Execution Environment (environnement d'exécution du pré-démarrage, ou environnement PXE). Ainsi, tous les systèmes configurés effectueront un démarrage en utilisant une image fournie par ce serveur et démarreront le programme d'installation automatiquement.
Contrairement à la plupart des autres méthodes d'installation, il n'est pas nécessaire de brancher un support physique de démarrage au client (c'est-à-dire le système sur lequel vous effectuez l'installation) pour démarrer l'installation. Ce chapitre décrit les étapes à suivre afin de préparer les systèmes à des installations PXE (Preboot Execution Environment).
Il est nécessaire de suivre les étapes suivantes afin de préparer les systèmes pour une installation réseau :
  1. Configurer le serveur de réseau (NFS, HTTPS, HTTP, ou FTP) pour exporter l'arborescence d'installation ou l'image ISO d'installation. Pour connaître les procédures de cette installation, veuillez consulter la Section 2.3.3, « Source d'installation Réseau ».
  2. Configurez les fichiers sur le serveur tftp nécessaire au démarrage de réseau, configurez DHCP et démarrez le service tftp sur le serveur PXE. Voir la Section 21.1, « Configurer le démarrage PXE » pour plus de détails.
  3. Démarrez le client (le système sur lequel vous souhaitez installer Red Hat Enterprise Linux) et lancez l'installation. Voir la Section 21.2, « Démarrer l'installation réseau » pour plus d'informations.

Note

Les procédures décrites dans ce chapitre décrivent comment configurer un serveur PXE sur un système Red Hat Enterprise Linux 7. Pour plus d'informations sur la configuration de PXE sur des versions antérieures de Red Hat Enterprise Linux, veuillez consulter le Guide d'installation de la version concernée.

21.1. Configurer le démarrage PXE

Après avoir paramétré un serveur réseau contenant les référentiels de paquet à utiliser lors de l'installation, l'étape suivante est de configurer le serveur PXE. Ce serveur contiendra les fichiers nécessaires au démarrage de Red Hat Enterprise Linux et au lancement de l'installation. De plus, un serveur DHCP doit être installé et tous les services nécessaires doivent être activés et démarrés.

Note

Les procédures de configuration de démarrage PXE sont différentes selon que le système AMD64/Intel 64 sur lequel vous souhaitez installer Red Hat Enterprise Linux utilise BIOS ou UEFI. Consultez la documentation relative à votre matériel afin de connaître le système utilisé, puis suivez la procédure correspondante dans ce chapitre.
Une autre procédure est indiquée lorsque vous utilisez les serveurs IBM Power Systems en tant que système d'installation. Pour plus de détails, veuillez consulter la Section 21.1.3, « Configuration d'un serveur PXE pour des clients IBM Power Systems ».
IBM System z ne prend pas en charge le démarrage PXE.
Pour plus d'informations concernant la configuration d'un serveur PXE pour une utilisation avec des systèmes headless (c'est-à-dire des systèmes n'étant pas reliés directement à un écran, un clavier ou une souris), veuillez consulter la Section 22.4, « Considérations pour les systèmes Headless (systèmes n'étant pas reliés directement à un écran, un clavier ou une souris) ».

21.1.1. Configuration d'un serveur PXE pour des clients basés BIOS.

La procédure suivante vise à préparer le serveur PXE au démarrage des systèmes AMD64 et Intel 64 basés BIOS. Pour plus d'informations sur les systèmes basés UEFI, veuillez consulter la Section 21.1.2, « Configuration d'un serveur PXE pour des clients basés UEFI ».

Procédure 21.1. Configuration d'un démarrage PXE pour des systèmes basés BIOS.

  1. Installez le paquet tftp en exécutant la commande suivante en tant que root :
    # yum install tftp-server
  2. Dans le fichier de configuration /etc/xinetd.d/tftp, modifiez le paramètre disabled (désactivé) de yes à no.
  3. Configurez votre serveur DHCP pour utiliser les images de démarrage empaquetées avec SYSLINUX. Si vous ne possédez pas de serveur DHCP installé, reportez-vous au Guide de mise en réseau Red Hat Enterprise Linux 7 pour obtenir des instructions.
    Exemple de configuration dans le fichier /etc/dhcp/dhcpd.conf pourrait ressembler à ceci :
      option space pxelinux;
      option pxelinux.magic code 208 = string;
      option pxelinux.configfile code 209 = text;
      option pxelinux.pathprefix code 210 = text;
      option pxelinux.reboottime code 211 = unsigned integer 32;
    
      subnet 10.0.0.0 netmask 255.255.255.0 {
        option routers 10.0.0.254;
        range 10.0.0.2 10.0.0.253;
    
        class "pxeclients" {
          match if substring (option vendor-class-identifier, 0, 9) = "PXEClient";
          next-server 10.0.0.1;
    			
          if option arch = 00:07 {
            filename "uefi/shim.efi";
          } else {
            filename "pxelinux/pxelinux.0";
          }
        }
    
        host example-ia32 {
          hardware ethernet XX:YY:ZZ:11:22:33;
          fixed-address 10.0.0.2;
        }
      }
    
  4. Vous aurez maintenant besoin du fichier pxelinux.0 du paquet SYSLINUX dans le fichier image ISO. Pour y accéder, exécutez les commandes suivantes en tant qu'utilisateur root :
    # mount -t iso9660 /path_to_image/name_of_image.iso /mount_point -o loop,ro
    # cp -pr /mount_point/Packages/syslinux-version-architecture.rpm /publicly_available_directory
    # umount /mount_point
    Extrayez le paquet :
    # rpm2cpio syslinux-version-architecture.rpm | cpio -dimv
  5. Créez un répertoire pxelinux/ dans tftpboot/ et copiez le fichier pxelinux.0 dedans :
    # mkdir /var/lib/tftpboot/pxelinux
    # cp publicly_available_directory/usr/share/syslinux/pxelinux.0 /var/lib/tftpboot/pxelinux
  6. Ajoutez un fichier de configuration au répertoire pxelinux/. Ce fichier doit être nommé default ou selon l'adresse IP. Par exemple, si l'adresse IP de votre machine est 10.0.0.1, alors le nom du fichier sera 0A000001.
    Un exemple de fichier de configuration dans /etc/dhcp/dhcpd.conf pourrait ressembler à ceci :
    default vesamenu.c32
    prompt 1
    timeout 600
    
    display boot.msg
    
    label linux
      menu label ^Install system
      menu default
      kernel vmlinuz
      append initrd=initrd.img ip=dhcp inst.repo=http://10.32.5.1/mnt/archive/RHEL-7/7.x/Server/x86_64/os/
    label vesa
      menu label Install system with ^basic video driver
      kernel vmlinuz
      append initrd=initrd.img ip=dhcp inst.xdriver=vesa nomodeset inst.repo=http://10.32.5.1/mnt/archive/RHEL-7/7.x/Server/x86_64/os/
    label rescue
      menu label ^Rescue installed system
      kernel vmlinuz
      append initrd=initrd.img rescue
    label local
      menu label Boot from ^local drive
      localboot 0xffff
    

    Note

    Deux options permettent de charger l'installateur :
    • Option Anaconda inst.repo=, telle que dans l'exemple ci-dessus. Cette option vous permettra de charger l'installateur et de spécifier la source d'installation au même moment. Pour plus d'informations à propos des options de démarrage pour Anaconda, veuillez consulter la Section 20.1, « Configuration du système d'installation au menu de démarrage ».
    • Option dracut root=. Si vous utilisez cette option, vous devez spécifier l'emplacement du fichier initrd.img extrait du support de démarrage de Red Hat Enterprise Linux 7. Cette option vous permettra de démarrer l'installateur, mais il vous faudra spécifier une source d'installation d'une autre manière (l'aide d'un fichier Kickstart ou de façon manuelle dans l'interface graphique de l'installateur). Pour plus d'informations concernant les options en ligne de commande dracut, veuillez consulter la page man dracut.cmdline(7).
    L'une de ces deux options doit toujours être utilisée.
  7. Copiez les images de démarrage dans votre répertoire root tftp/ :
    # cp /path/to/x86_64/os/images/pxeboot/{vmlinuz,initrd.img} /var/lib/tftpboot/pxelinux/
  8. Activez et lancez les services tftp et xinetd en utilisant la commande systemctl.
    # systemctl enable xinetd.service tftp.service
    # systemctl start xinetd.service tftp.service
Une fois la procédure terminée, le serveur PXE est prêt à démarrer l'installation réseau. Vous pouvez alors démarrer le système sur lequel vous souhaitez installer Red Hat Enterprise Linux, sélectionner le démarrage PXE à l'invite afin de spécifier une source de démarrage et lancer l'installation réseau.

21.1.2. Configuration d'un serveur PXE pour des clients basés UEFI

La procédure suivante vise à préparer le serveur PXE au démarrage des systèmes AMD64 et Intel 64 basés UEFI. Pour plus d'informations sur les systèmes basés BIOS, veuillez consulter la Section 21.1.1, « Configuration d'un serveur PXE pour des clients basés BIOS. ».

Procédure 21.2. Configuration d'un démarrage PXE pour des systèmes basés UEFI.

  1. Installez le paquet tftp en exécutant la commande suivante en tant que root :
    # yum install tftp-server
  2. Dans le fichier de configuration /etc/xinetd.d/tftp, modifiez le paramètre disabled (désactivé) de yes à no.
  3. Configurez votre serveur DHCP pour utiliser les images de démarrage empaquetées avec shim. Si vous ne possédez pas de serveur DHCP installé, reportez-vous au Guide de mise en réseau Red Hat Enterprise Linux 7 pour obtenir des instructions.
    Exemple de configuration dans le fichier /etc/dhcp/dhcpd.conf pourrait ressembler à ceci :
      option space PXE;
      option PXE.mtftp-ip    code 1 = ip-address;
      option PXE.mtftp-cport code 2 = unsigned integer 16;
      option PXE.mtftp-sport code 3 = unsigned integer 16;
      option PXE.mtftp-tmout code 4 = unsigned integer 8;
      option PXE.mtftp-delay code 5 = unsigned integer 8;
      option arch code 93 = unsigned integer 16; # RFC4578
    
      subnet 10.0.0.0 netmask 255.255.255.0 {
        option routers 10.0.0.254;
        range 10.0.0.2 10.0.0.253;
    
        class "pxeclients" {
          match if substring (option vendor-class-identifier, 0, 9) = "PXEClient";
          next-server 10.0.0.1;
    
          if option arch = 00:07 {
            filename "uefi/shim.efi";
            } else {
            filename "pxelinux/pxelinux.0";
          }
        }
    
        host example-ia32 {
          hardware ethernet XX:YY:ZZ:11:22:33;
          fixed-address 10.0.0.2;
        }
      }
    
  4. Vous aurez maintenant besoin du fichier shim.efi du paquet shim et du fichier grubx64.efi du paquet grub2-efi dans le fichier image ISO. Pour y accéder, exécutez les commandes suivantes en tant qu'utilisateur root :
    # mount -t iso9660 /path_to_image/name_of_image.iso /mount_point -o loop,ro
    # cp -pr /mount_point/Packages/shim-version-architecture.rpm /publicly_available_directory
    # cp -pr /mount_point/Packages/grub2-efi-version-architecture.rpm /publicly_available_directory
    # umount /mount_point
    Extrayez les paquets :
    # rpm2cpio shim-version-architecture.rpm | cpio -dimv
    # rpm2cpio grub2-efi-version-architecture.rpm | cpio -dimv
  5. Créez un répertoire à l'intérieur du répertoire tftpboot/ appelé uefi/ pour les images de démarrage EFI, puis copiez-les à partir de votre répertoire de démarrage :
    # mkdir /var/lib/tftpboot/uefi
    # cp publicly_available_directory/boot/efi/EFI/redhat/shim.efi /var/lib/tftpboot/uefi/
    # cp publicly_available_directory/boot/efi/EFI/redhat/grubx64.efi /var/lib/tftpboot/uefi/
  6. Ajoutez un fichier de configuration nommé grub.cfg au répertoire uefi/. Un exemple de fichier de configuration de /var/lib/tftpboot/uefi/grub.cfg pourrait ressembler à :
    set timeout=1
      menuentry 'RHEL' {
      linuxefi uefi/vmlinuz ip=dhcp inst.repo=http://10.32.5.1/mnt/archive/RHEL-7/7.x/Server/x86_64/os/
      initrdefi uefi/initrd.img
    }
    

    Note

    Deux options permettent de charger l'installateur :
    • Option Anaconda inst.repo=, telle que dans l'exemple ci-dessus. Cette option vous permettra de charger l'installateur et de spécifier la source d'installation au même moment. Pour plus d'informations à propos des options de démarrage pour Anaconda, veuillez consulter la Section 20.1, « Configuration du système d'installation au menu de démarrage ».
    • Option dracut root=. Si vous utilisez cette option, vous devez spécifier l'emplacement du fichier initrd.img extrait du support de démarrage de Red Hat Enterprise Linux 7. Cette option vous permettra de démarrer l'installateur, mais il vous faudra spécifier une source d'installation d'une autre manière (l'aide d'un fichier Kickstart ou de façon manuelle dans l'interface graphique de l'installateur). Pour plus d'informations concernant les options en ligne de commande dracut, veuillez consulter la page man dracut.cmdline(7).
    L'une de ces deux options doit toujours être utilisée.
  7. Copiez les images de démarrage dans votre répertoire uefi :
    # cp /path/to/x86_64/os/images/pxeboot/{vmlinuz,initrd.img} /var/lib/tftpboot/uefi/
  8. Activez et lancez les services tftp et xinetd en utilisant la commande systemctl.
    # systemctl enable xinetd.service tftp.service
    # systemctl start xinetd.service tftp.service
Une fois la procédure terminée, le serveur PXE est prêt à démarrer l'installation réseau. Vous pouvez alors démarrer le système sur lequel vous souhaitez installer Red Hat Enterprise Linux, sélectionner le démarrage PXE à l'invite afin de spécifier une source de démarrage et lancer l'installation réseau.

21.1.3. Configuration d'un serveur PXE pour des clients IBM Power Systems

La procédure suivante préparera le serveur PXE au démarrage des serveurs IBM Power Systems.

Procédure 21.3. Configuration d'un démarrage PXE pour des systèmes IBM Power Systems

  1. Installez le paquet tftp en exécutant la commande suivante en tant que root :
    # yum install tftp-server
  2. Dans le fichier de configuration /etc/xinetd.d/tftp, modifiez le paramètre disabled (désactivé) de yes à no.
  3. Configurez votre serveur DHCP pour utiliser les images de démarrage empaquetées avec l'utilitaire yaboot. Si vous ne possédez pas de serveur DHCP installé, reportez-vous au Guide de mise en réseau Red Hat Enterprise Linux 7 pour obtenir des instructions.
    Exemple de configuration dans /etc/dhcp/dhcpd.conf pourrait ressembler à ceci :
      host bonn { 
        filename "yaboot";
        next-server             10.32.5.1;
        hardware ethernet 00:0e:91:51:6a:26;
        fixed-address 10.32.5.144;
      }
    
  4. Vous aurez maintenant besoin du fichier binaire yaboot du paquet yaboot dans le fichier image ISO. Pour y accéder, exécutez les commandes suivantes en tant que root :
    # mkdir /publicly_available_directory/yaboot-unpack
    # mount -t iso9660 /path_to_image/name_of_image.iso /mount_point -o loop,ro
    # cp -pr /mount_point/Packages/yaboot-version.ppc.rpm /publicly_available_directory/yaboot-unpack
    Extrayez le paquet :
    # cd /publicly_available_directory/yaboot-unpack
    # rpm2cpio yaboot-version.ppc.rpm | cpio -dimv
  5. Créez un répertoire yaboot dans le répertoire tftpboot/ et copiez le fichier binaire yaboot dedans :
    # mkdir /var/lib/tftpboot/yaboot
    # cp publicly_available_directory/yaboot-unpack/usr/lib/yaboot/yaboot /var/lib/tftpboot/yaboot
  6. Ajoutez un fichier de configuration nommé yaboot.conf à ce répertoire. Un exemple de fichier de configuration pourrait ressembler à :
    init-message = "
    Welcome to the Red Hat Enterprise Linux 7 installer!
    
    "
    timeout=60
    default=rhel7
    image=/rhel7/vmlinuz-RHEL7
      label=linux
      alias=rhel7
      initrd=/rhel7/initrd-RHEL7.img
      append="ip=dhcp inst.repo=http://10.32.5.1/mnt/archive/RHEL-7/7.0/ppc64/os/"
      read-only
    

    Note

    Deux options permettent de charger l'installateur :
    • Option Anaconda inst.repo=, telle que dans l'exemple ci-dessus. Cette option vous permettra de charger l'installateur et de spécifier la source d'installation au même moment. Pour plus d'informations à propos des options de démarrage pour Anaconda, veuillez consulter la Section 20.1, « Configuration du système d'installation au menu de démarrage ».
    • Option dracut root=. Si vous utilisez cette option, vous devez spécifier l'emplacement du fichier initrd.img extrait du support de démarrage de Red Hat Enterprise Linux 7. Cette option vous permettra de démarrer l'installateur, mais il vous faudra spécifier une source d'installation d'une autre manière (l'aide d'un fichier Kickstart ou de façon manuelle dans l'interface graphique de l'installateur). Pour plus d'informations concernant les options en ligne de commande dracut, veuillez consulter la page man dracut.cmdline(7).
    L'une de ces deux options doit toujours être utilisée.
  7. Copiez les images de démarrage de l'ISO extraite dans votre répertoire racine tftp/ :
    # cp /mount_point/images/ppc/ppc64/vmlinuz /var/lib/tftpboot/yaboot/rhel7/vmlinuz-RHEL7
    # cp /mount_point/images/ppc/ppc64/initrd.img /var/lib/tftpboot/yaboot/rhel7/initrd-RHEL7.img
  8. Nettoyez en supprimant le répertoire yaboot-unpack/ et en démontant l'ISO :
    # rm -rf /publicly_available_directory/yaboot-unpack
    # umount /mount_point
  9. Activez et lancez les services tftp et xinetd en utilisant la commande systemctl.
    # systemctl enable xinetd.service tftp.service
    # systemctl start xinetd.service tftp.service
Une fois la procédure terminée, le serveur PXE est prêt à démarrer l'installation réseau. Vous pouvez alors démarrer le système sur lequel vous souhaitez installer Red Hat Enterprise Linux, sélectionner le démarrage PXE à l'invite afin de spécifier une source de démarrage et lancer l'installation réseau.