Cet article est une extension de ma précédente configuration de l’environnement de démarrage PXE sur RHEL/CentOS 7 et se concentre sur la façon dont vous pouvez effectuer des installations automatiques de RHEL/CentOS 7, sans intervention de l’utilisateur, sur des machines sans tête à l’aide d’un fichier Kickstart lu à partir d’un serveur FTP local.

La préparation de l’environnement pour ce type d’installation a déjà été traitée dans le tutoriel précédent concernant la configuration du serveur PXE, la seule clé manquante, un fichier Kickstart, sera abordée plus loin dans ce tutoriel.

Installation multiple de RHEL/CemtOS 7 à l’aide de Kickstart

La façon la plus simple de créer une personnalisation Kickstart que vous pouvez utiliser davantage pour plusieurs installations consiste à effectuer manuellement une installation de RHEL/CentOS 7 et à copier, une fois le processus d’installation terminé, le fichier nommé anaconda-ks.cfgqui réside dans /root chemin d’accès, à un emplacement réseau accessible, et spécifiez le initrd paramètre de démarrage inst.ks=protocol://path/to/kickstart.fileto PXE Menu Configuration File.

Conditions

  1. Configurer un serveur de démarrage réseau PXE sur RHEL/CentOS 7

Ce didacticiel et la configuration du fichier Kickstart ne couvrent que l’installation minimale de RHEL/CentOS 7 sans installation graphique, essentiellement le fichier Kikstart résultant de la précédente procédure d’installation minimale de RHEL/CentOS 7.

  1. Procédure d’installation minimale de CentOS 7
  2. Procédure d’installation minimale de RHEL 7

Si vous avez besoin d’un fichier Kickstart qui couvre GUI Installation et table de partition spécifique, je vous propose d’effectuer au préalable une
Installation graphique de RHEL/CentOS 7 dans un environnement virtualisé et utilisation du fichier Kickstart qui en a résulté pour les futures installations de l’interface graphique.

Étape 1 : créer et copier le fichier Kiskstart sur le chemin du serveur FTP

1. À la première étape, accédez à votre machine PXE /root et copiez le fichier nommé anaconda-ks.cfg à Vsftpd chemin du serveur par défaut (/var/ftp/pub) – aussi le chemin pour RHEL/CentOS 7 Local Mirror Installation Source configuré sur PXE network Boot Server – Step 6 (reportez-vous à l’article de configuration du serveur PXE ci-dessus).

# cp anaconda-ks.cfg  /var/ftp/pub/
# chmod 755 /var/ftp/pub/anaconda-ks.cfg

2. Une fois le fichier copié, ouvrez-le avec votre éditeur de texte préféré et apportez les modifications minimales suivantes.

# nano /var/ftp/pub/anaconda-ks.cfg
  1. Remplacer –urld avec votre emplacement source d’installation réseau : Ex : –url=ftp://192.168.1.25/pub/
  2. Remplacer network –bootproto dhcp si vous avez configuré manuellement les interfaces réseau lors du processus d’installation.

Un extrait de ce à quoi un fichier Kickstart pourrait ressembler est présenté ci-dessous.

#version=RHEL7
# System authorization information
auth --enableshadow --passalgo=sha512

# Use network installation
url --url="ftp://192.168.1.25/pub/"
# Run the Setup Agent on first boot
firstboot --enable
ignoredisk --only-use=sda
# Keyboard layouts
keyboard --vckeymap=us --xlayouts="us"
# System language
lang en_US.UTF-8

# Network information
network  --bootproto=dhcp --device=eno16777736 --ipv6=auto --activate
network  --hostname=localhost.localdomain
# Root password
rootpw --iscrypted $6$RMPTNRo5P7zulbAR$ueRnuz70DX2Z8Pb2oCgfXv4qXOjkdZlaMnC.CoLheFrUF4BEjRIX8rF.2QpPmj2F0a7iOBM3tUL3tyZNKsDp50
# System services
services --enabled="chronyd"
# System timezone
timezone Europe/Bucharest --isUtc
# System bootloader configuration
bootloader --location=mbr --boot-drive=sda
# Partition clearing information
clearpart --none --initlabel
# Disk partitioning information
part pv.20 --fstype="lvmpv" --ondisk=sda --size=19979
part /boot --fstype="xfs" --ondisk=sda --size=500
volgroup centos --pesize=4096 pv.20
logvol /  --fstype="xfs" --grow --maxsize=51200 --size=1024 --name=root --vgname=centos
logvol swap  --fstype="swap" --size=2048 --name=swap01 --vgname=centos

%packages
@compat-libraries
@core
wget
net-tools
chrony

%end
Configuration de lancement de CentOS
Configuration de démarrage

Pour des options et une syntaxe de fichier Kickstart plus avancées, n’hésitez pas à lire Documentation de démarrage RHEL 7.

3. Avant d’essayer d’utiliser ce fichier pour les procédures d’installation, il est important de vérifier le fichier à l’aide de ksvalidator inclus sur Pykickstart, surtout si des personnalisations manuelles ont été effectuées. Installer Pykickstart et vérifiez votre fichier Kickstart en exécutant les commandes suivantes.

# yum install pykickstart
# ksvalidator /var/ftp/pub/anaconda-ks.cfg
Installer Pykickstart dans CentOS
Installer le paquet Pykickstart
Vérifier la configuration de démarrage
Vérifier les fichiers Kickstart

4. La dernière vérification consiste à s’assurer que le fichier Kickstart est accessible à partir de votre emplacement réseau spécifié – dans ce cas FTP Local Mirror Installation Source défini par l’adresse URL suivante.

ftp://192.168.1.25/pub/
Vérifier le miroir FTP
Vérifier le miroir FTP

Étape 2 : Ajouter l’étiquette d’installation de Kikstart à la configuration du serveur PXE

5. Afin d’accéder Automatic Installation of RHEL/CentOS 7 de PXE Menu ajoutez l’étiquette suivante à la configuration du fichier PXE par défaut.

# nano /var/lib/tftpboot/pxelinux.cfg/default

Extrait de l’étiquette du menu PXE.

Pour RHEL 7
label 5
menu label ^5) Install RHEL 7 x64 with Local Repo using Kickstart
kernel vmlinuz
append initrd=initrd.img inst.ks=ftp://192.168.1.25/pub/anaconda-ks.cfg inst.vnc inst.vncpassword=password
Pour CentOS 7
label 5
menu label ^5) Install CentOS 7 x64 with Local Repo using Kickstart
kernel vmlinuz
append initrd=initrd.img inst.ks=ftp://192.168.1.25/pub/anaconda-ks.cfg inst.vnc inst.vncpassword=password
Ajouter Kickstart au menu PXE
Ajouter Kickstart au menu PXE

Comme vous pouvez le voir sur cet exemple, l’installation automatique peut être supervisée via VNC mot de passe (remplacez le mot de passe VNC en conséquence) et le fichier Kickstart est situé localement sur le serveur PXE et est spécifié par le initrd paramètre de démarrage inst.ks= Emplacement réseau FTP (remplacez le protocole et l’emplacement réseau en conséquence si vous utilisez d’autres méthodes d’installation telles que HTTP, HTTPS, NFS ou des sources d’installation à distance et des fichiers Kickstart).

Étape 3 : Configurer les clients pour installer automatiquement RHEL/CentOS 7 à l’aide de Kickstart

6. Pour installer automatiquement RHEL/CentOS 7 et superviser l’ensemble du processus d’installation, en particulier sur les serveurs sans tête, indiquez à votre ordinateur client à partir du BIOS
pour démarrer à partir du réseau, attendez quelques secondes puis appuyez sur F8 et Enters, puis sélectionnez Kickstart depuis le menu PXE.

Menu de démarrage PXE
Menu de démarrage PXE

7. Après le kernel et ramdisk charge et détecte le fichier Kickstart, le processus d’installation démarre automatiquement sans qu’aucune intervention de l’utilisateur ne soit nécessaire. Si vous souhaitez suivre le processus d’installation, connectez-vous à un VNC client à partir d’un autre ordinateur à l’aide de l’adresse fournie par le programme d’installation et profitez de la vue.

Installation automatique de CentOS 7
Installation automatique du système d’exploitation
Installation de CentOs à distance VNC
Connectez-vous à VNC
Lancer l'installation automatique de CentOS
Lancer l’installation automatique du système d’exploitation

8. Une fois le processus d’installation terminé, connectez-vous au système nouvellement installé avec root compte et le mot de passe utilisé lors de l’installation précédente (le
celui que vous avez copié le fichier Kickstart) et changez votre mot de passe root client en exécutant passwd.

Se connecter au nouveau serveur installé
Se connecter au nouveau serveur installé

C’est tout! Automatic Kickstart Les installations offrent de nombreux avantages aux administrateurs système dans des environnements où ils doivent effectuer des installations système sur plusieurs machines en même temps, dans un court laps de temps, sans avoir besoin d’interférer manuellement avec le processus d’installation.