Automatiske installationer af flere RHEL/CentOS 7-distributioner ved hjælp af PXE-server og Kickstart-filer


Denne artikel er en udvidelse af min tidligere PXE Boot Environment-opsætning på RHEL/CentOS 7, og den fokuserer på, hvordan du kan udføre automatiske installationer af RHEL/CentOS 7 uden behov for brugerindgriben på hovedløse maskiner, der bruger en Kickstart-fil, der læses fra en lokal FTP-server.

Forberedelsen af miljøet til denne type installation er allerede behandlet i den forrige tutorial om PXE Server-opsætning. Den eneste nøgle, der mangler, en Kickstart-fil, vil blive diskuteret yderligere i denne tutorial.

Den enkleste måde at oprette en tilpasnings Kickstart -fil, som du kan bruge den yderligere til flere installationer, er at manuelt udføre en installation af RHEL/CentOS 7 og kopiere, efter installationen er afsluttet, filen med navnet anaconda-ks.cfg , der ligger i /root sti, til en tilgængelig netværksplacering, og angiv initrd bootparameter inst.ks = protokol: //path/to/kickstart.fileto PXE Menu Configuration File.

  1. Opsæt en PXE Network Boot-server på RHEL/CentOS 7

Denne tutorial og Kickstart-filkonfiguration dækker kun den minimale installation af RHEL/CentOS 7 uden en grafisk installation, grundlæggende skyldes Kikstart-filen den tidligere minimale installationsprocedure for RHEL/CentOS 7.

  1. CentOS 7 Minimal installationsprocedure
  2. RHEL 7 Minimal installationsprocedure

Hvis du har brug for en Kickstart-fil, der dækker GUI installation og en bestemt partitionstabel, foreslår jeg, at du først udfører en tilpassbar
Grafisk installation af RHEL/CentOS 7 i et virtualiseret miljø og brug, der resulterede i Kickstart-fil til fremtidige GUI-installationer.

Trin 1: Opret og kopier Kiskstart-fil til FTP-serversti

1. På det første trin skal du gå til din PXE-maskine /root -mappe og kopiere filen med navnet anaconda-ks.cfg til Vsftpd standardserversti (/ var/ftp/pub) - også stien til RHEL/CentOS 7 Local Mirror Installation Source konfigureret på PXE-netværksstartserver - Trin 6 (se artikel om opsætning af PXE-server ovenfor).

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

2. Når filen er kopieret, skal du åbne den med din yndlings teksteditor og foretage følgende minimale ændringer.

# nano /var/ftp/pub/anaconda-ks.cfg

  1. Erstat –url gemt med din netværksinstallationskildeplacering: Eks: –url=ftp://192.168.1.25/pub/
  2. Udskift netværk –bootproto med dhcp hvis du manuelt har konfigureret netværksgrænseflader under installationsprocessen.

Nedenfor vises et uddrag af, hvordan en Kickstart-fil kan se ud.

#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

For mere avancerede Kickstart-filindstillinger og syntaks er du velkommen til at læse RHEL 7 Kickstart-dokumentation.

3. Inden du prøver at bruge denne fil til installationsprocedurer, er det vigtigt, at du bekræfter filen ved hjælp af ksvalidator kommandoen, der er inkluderet i Pykickstart -pakken, især hvis manuelle tilpasninger var blevet udført. Installer Pykickstart -pakken, og bekræft din Kickstart-fil ved at udstede følgende kommandoer.

# yum install pykickstart
# ksvalidator /var/ftp/pub/anaconda-ks.cfg

4. Den sidste verifikation er at sikre, at Kickstart-filen er tilgængelig fra din angivne netværksplacering - i dette tilfælde FTP Local Mirror Installation Source defineret af følgende URL-adresse.

ftp://192.168.1.25/pub/

Trin 2: Tilføj Kikstart-installationsetiket til PXE-serverkonfiguration

5. For at få adgang til Automatisk installation af RHEL/CentOS 7 -mulighed fra PXE-menu skal du tilføje følgende etiket til PXE-standardfilkonfiguration.

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

PXE Menu Etiketuddrag.

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
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

Som du kan se fra dette eksempel, kan den automatiske installation overvåges via VNC med adgangskode (udskift VNC-adgangskode i overensstemmelse hermed), og Kickstart-filen findes lokalt på PXE-serveren og er specificeret af initrd opstartsparameter inst.ks = FTP-netværksplacering (udskift protokol og netværksplacering i overensstemmelse hermed, hvis du bruger andre installationsmetoder såsom HTTP, HTTPS, NFS eller eksterne installationskilder og Kickstart-filer).

Trin 3: Konfigurer klienter til automatisk at installere RHEL/CentOS 7 ved hjælp af Kickstart

6. Hvis du automatisk vil installere RHEL/CentOS 7 og overvåge hele installationsprocessen, især på headless servere, skal du instruere din klientmaskine fra BIOS
for at starte fra netværket, vent et par sekunder, tryk derefter på F8 og Enter tasterne, og vælg derefter Kickstart i PXE-menuen.

7. Når kernen og ramdisk indlæser og registrerer Kickstart-filen, starter installationsprocessen automatisk uden nogen indblanding fra brugersiden. Hvis du vil se installationsprocessen oprette forbindelse til en VNC -klient fra en anden computer ved hjælp af den adresse, som installationsprogrammet giver dig og nyde udsigten.

8. Når installationen er afsluttet, logger du ind på det nyinstallerede system med en root -konto og den adgangskode, der blev brugt ved den tidligere installation (
en, som du kopierede Kickstart-filen), og skift din klients rodadgangskode ved at køre kommandoen passwd .

Det er alt! Automatiske Kickstart -installationer giver en række fordele for systemadministratorer i miljøer, at de skal udføre systeminstallationer på flere maskiner på samme tid på kort tid uden behov for manuelt at forstyrre installationsprocessen.