Dit artikel is een uitbreiding van mijn vorige PXE Boot Environment Setup op RHEL/CentOS 7 en het is gericht op hoe u Automatische Installaties van RHEL/CentOS 7 kunt uitvoeren, zonder tussenkomst van de gebruiker, op headless machines met behulp van een Kickstart-bestand gelezen van een lokale FTP-server.

De voorbereiding van de omgeving voor dit soort installatie is al verwerkt in de vorige tutorial over PXE Server setup, de enige ontbrekende sleutel, een Kickstart-bestand, zal verder in deze tutorial worden besproken.

Meerdere RHEL/CemtOS 7-installatie met behulp van Kickstart

De eenvoudigste manier om een ​​custom te maken Kickstart dat u het verder kunt gebruiken voor meerdere installaties, is om handmatig een installatie van RHEL/CentOS 7 uit te voeren en, nadat het installatieproces is voltooid, het bestand met de naam te kopiëren anaconda-ks.cfgdat woont in /root pad, naar een toegankelijke netwerklocatie, en specificeer de initrd opstartparameter inst.ks=protocol://path/to/kickstart.fileto PXE Menu Configuration File.

Vereisten

  1. Stel een PXE Network Boot Server in op RHEL/CentOS 7

Deze tutorial en de Kickstart-bestandsconfiguratie hebben alleen betrekking op de minimale installatie van RHEL/CentOS 7 zonder een grafische installatie, in feite is het Kikstart-bestand het resultaat van de vorige minimale installatieprocedure van RHEL/CentOS 7.

  1. CentOS 7 Minimale installatieprocedure
  2. RHEL 7 Minimale installatieprocedure

Als je een Kickstart-bestand nodig hebt dat dekt GUI Installatie en een specifieke partitietabel, ik raad u aan eerst een aanpasbare
Grafische installatie van RHEL/CentOS 7 in een gevirtualiseerde omgeving en gebruik dat resulteerde in een Kickstart-bestand voor toekomstige GUI-installaties.

Stap 1: Maak en kopieer Kiskstart-bestand naar FTP-serverpad

1. Ga bij de eerste stap naar uw PXE-machine /root en kopieer het bestand met de naam anaconda-ks.cfg tot Vsftpd standaard serverpad (/var/ftp/pub) – ook het pad voor RHEL/CentOS 7 Local Mirror Installation Source geconfigureerd op PXE network Boot Server – Step 6 (raadpleeg het artikel over het instellen van de PXE-server hierboven).

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

2. Nadat het bestand is gekopieerd, opent u het met uw favoriete teksteditor en brengt u de volgende minimale wijzigingen aan.

# nano /var/ftp/pub/anaconda-ks.cfg
  1. Vervangen –urld met de bronlocatie van uw netwerkinstallatie: Bijvoorbeeld: –url=ftp://192.168.1.25/pub/
  2. Vervangen network –bootproto dhcp voor het geval u tijdens het installatieproces handmatig netwerkinterfaces hebt geconfigureerd.

Een fragment over hoe een Kickstart-bestand eruit zou kunnen zien, wordt hieronder weergegeven.

#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
CentOS Kickstart-configuratie
Kickstart-configuratie

Voor meer geavanceerde Kickstart-bestandsopties en syntaxis, voel je vrij om te lezen RHEL 7 Kickstart-documentatie.

3. Voordat u dit bestand probeert te gebruiken voor installatieprocedures, is het belangrijk dat u het bestand verifieert met: ksvalidator inbegrepen op Pykickstart, vooral als handmatige aanpassingen waren uitgevoerd. Installeren Pykickstart en verifieer je Kickstart-bestand door de volgende opdrachten uit te voeren.

# yum install pykickstart
# ksvalidator /var/ftp/pub/anaconda-ks.cfg
Installeer Pykickstart in CentOS
Pykickstart-pakket installeren
Verifieer de Kickstart-configuratie
Verifieer Kickstart-bestanden

4. De laatste verificatie is om er zeker van te zijn dat het Kickstart-bestand toegankelijk is vanaf de door jou opgegeven netwerklocatie – in dit geval FTP Local Mirror Installation Source gedefinieerd door het volgende URL-adres.

ftp://192.168.1.25/pub/
FTP-mirror verifiëren
FTP-mirror verifiëren

Stap 2: Kikstart-installatielabel toevoegen aan PXE-serverconfiguratie

5. Om toegang te krijgen Automatic Installation of RHEL/CentOS 7 van PXE Menu voeg het volgende label toe aan de standaardbestandsconfiguratie van PXE.

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

PXE Menu Label-uittreksel.

Voor 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
Voor 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
Voeg Kickstart toe aan PXE-menu
Voeg Kickstart toe aan PXE-menu

Zoals u in dit voorbeeld kunt zien, kan de automatische installatie worden gecontroleerd via VNC wachtwoord (vervang het VNC-wachtwoord dienovereenkomstig) en het Kickstart-bestand bevindt zich lokaal op de PXE-server en wordt gespecificeerd door de initrd opstartparameter inst.ks= FTP-netwerklocatie (vervang het protocol en de netwerklocatie dienovereenkomstig als u andere installatiemethoden gebruikt, zoals HTTP, HTTPS, NFS of externe installatiebronnen en Kickstart-bestanden).

Stap 3: Clients configureren om RHEL/CentOS 7 automatisch te installeren met Kickstart

6. Om RHEL/CentOS 7 automatisch te installeren en toezicht te houden op het hele installatieproces, vooral op headless servers, instrueert u uw clientcomputer vanuit het BIOS
om op te starten vanaf het netwerk, wacht een paar seconden en druk dan op F8 en Enters, selecteer vervolgens Kickstart uit het PXE-menu.

PXE-opstartmenu
PXE-opstartmenu

7. Na de kernel en ramdisk laadt en detecteert het Kickstart-bestand, start het installatieproces automatisch zonder enige tussenkomst van de gebruiker. Als je het installatieproces wilt zien, maak dan verbinding met een VNC client vanaf een andere computer met behulp van het adres dat het installatieprogramma u geeft en geniet van het uitzicht.

Automatische CentOS 7-installatie
Automatische OS-installatie
VNC Remote CentOs-installatie
Maak verbinding met VNC
Kickstart Automatische CentOS-installatie
Kickstart Automatische OS-installatie

8. Nadat het installatieproces is voltooid, logt u in op het nieuw geïnstalleerde systeem met: root account en het wachtwoord dat bij de vorige installatie is gebruikt (de
een die je het Kickstart-bestand hebt gekopieerd) en verander je root-wachtwoord van de klant door het uitvoeren van passwd.

Verbinding maken met nieuw geïnstalleerde server
Verbinding maken met nieuw geïnstalleerde server

Dat is alles! Automatic Kickstart installaties bieden veel voordelen voor systeembeheerders in omgevingen die systeeminstallaties op meerdere machines tegelijk moeten uitvoeren, in een korte tijdspanne, zonder de noodzaak om het installatieproces handmatig te verstoren.