Instalarea mai multor distribuții Linux utilizând pornirea în rețea PXE pe RHEL/CentOS 8

Serverul PXE – Preboot eXecution Environment este o arhitectură client-server standardizată care instruiește un sistem client să pornească, să ruleze sau să instaleze mai multe sisteme de operare Linux utilizând o interfață de rețea cu capacitate PXE pe infrastructura de rețea.

Cerințe

    • Instalarea serverului minim CentOS 8 Minimal Server
    • Instalarea serverului minim RHEL 8 Minimal Server
    • Configurarea adresei IP statice în RHEL/CentOS 8

În acest articol, veți învăța cum să instalați și să configurați un server de pornire în rețea PXE pe CentOS/RHEL 8 cu depozitele locale de instalare în oglindă furnizate de imaginile ISO CentOS 8 și RHEL 8.

Pentru această configurație PXE Network Boot, vom instala următoarele pachete pe sistem:

  • DNSMASQ – un forwarder DNS ușor care oferă un DNS și servicii DHCP cu suport pentru PXE și un server TFTP.
  • Syslinux – un încărcător de boot Linux care oferă încărcătoare de boot pentru bootare în rețea.
  • Server TFTP – un protocol simplu de transfer de fișiere cu pas de blocare care creează imagini bootabile disponibile pentru a fi descărcate prin intermediul unei rețele.
  • Server VSFTPD – un protocol de transfer de fișiere securizat care va găzdui imaginea DVD în oglindă montată local – care va acționa ca un depozit de instalare în oglindă oficială RHEL/CentOS 8 din care programul de instalare își va extrage pachetele necesare.

Pasul 1: Instalarea și configurarea serverului DNSMASQ

1. Este important să vă reamintim că una dintre interfețele de rețea trebuie să fie configurată cu o adresă IP statică din același interval IP de rețea care oferă servicii PXE.

După ce ați configurat o adresă IP statică, actualizați pachetele software de sistem și instalați daimonul DNSMASQ.

# dnf install dnsmasq
Instalați DNSMASQ pe CentOS

2. Odată instalat DNSMASQ, veți găsi fișierul său de configurare implicit în directorul /etc/dnsmasq.conf, care este auto-explicativ, dar mai dificil de configurat, din cauza explicațiilor sale foarte comentate.

În primul rând, asigurați-vă că faceți o copie de rezervă a acestui fișier în cazul în care ați putea avea nevoie de el pentru a-l revizui mai târziu și apoi, creați un nou fișier de configurare folosind editorul dvs. preferat, așa cum se arată.

# mv /etc/dnsmasq.conf /etc/dnsmasq.conf.backup# nano /etc/dnsmasq.conf

3. Acum, copiați și lipiți următoarele configurații pe fișierul /etc/dnsmasq.conf și modificați parametrii de configurare în funcție de setările dvs. de rețea.

dnsmasq.conf – Fișier de configurare

Configurați DNSMASQ pe CentOS

Declarațiile de configurare pe care trebuie să le modificați sunt următoarele:

  • interfață – O interfață de rețea a serverului trebuie să asculte și să furnizeze servicii.
  • bind-interfețe – Necomentați pentru a lega interfața la o anumită placă de rețea.
  • domain – Înlocuiți-l cu numele de domeniu.
  • dhcp-range – Schimbați-l cu intervalul IP al rețelei.
  • dhcp-boot – Înlocuiți-l cu adresa IP a interfeței de rețea.
  • dhcp-option=3,192.168.1.1 – Înlocuiți-l cu Gateway-ul rețelei.
  • dhcp-option=6,92.168.1.1 – Înlocuiți-o cu IP-ul serverului DNS.
  • server=8.8.8.4.4 – Adăugați adresele IP ale expeditorilor DNS.
  • dhcp-option=28,10.0.0.255 – Înlocuiți-o cu adresa IP de difuzare a rețelei dvs. opțional.
  • dhcp-option=42,0.0.0.0.0 – Adăugați serverele de timp ale rețelei (adresa 0.0.0.0.0 este pentru auto-referință).
  • pxe-prompt – Păstrează-l ca implicit.
  • pxe=service – Folosește x86PC pentru arhitecturi pe 32 biți/64 biți și adaugă un prompt de descriere a meniului sub ghilimele de șiruri.
  • enable-tftp – Activează serverul TFTP încorporat.
  • tftp-root – Adaugă locația fișierelor de bootare în rețea /var/lib/tftpboot.

Pentru alte opțiuni avansate privind fișierele de configurare nu ezitați să citiți manualul dnsmasq.

Pasul 2: Instalați încărcătoarele de boot SYSLINUX

4. După ce configurația principală DNSMASQ a fost realizată, instalați pachetul Syslinx PXE bootloader folosind următoarea comandă.

# dnf install syslinux
Instalați Syslinux în CentOS

5. Încărcătoarele de boot PXE Syslinx sunt instalate sub /usr/share/syslinux, puteți confirma acest lucru executând comanda ls, așa cum se arată.

# ls /usr/share/syslinux
Verificați încărcătoarele de boot Syslinux

Etapa 3: Instalați serverul TFTP și copiați-l cu încărcătoarele de boot SYSLINUX

6. Acum, instalați TFTP-Server și copiați toate încărcătoarele de boot Syslinux de la /usr/share/syslinux/ la /var/lib/tftpboot așa cum se arată.

# dnf install tftp-server# cp -r /usr/share/syslinux/* /var/lib/tftpboot
Instalați TFTP-Server în CentOS

Etapa 4: Configurați fișierul de configurare a serverului PXE

7. În mod implicit, serverul PXE își citește configurația dintr-un set de fișiere specifice care se găsesc în pxelinux.cfg, care trebuie să se găsească în directorul descris în setarea tftp-root din fișierul de configurare DNSMASQ de mai sus.

În primul rând, creați un director pxelinux.cfg și creați un fișier default prin emiterea următoarelor comenzi.

# mkdir /var/lib/tftpboot/pxelinux.cfg# touch /var/lib/tftpboot/pxelinux.cfg/default

8. Acum, deschideți și editați fișierul de configurare PXE default cu opțiunile corecte de instalare a distribuției Linux. De asemenea, asigurați-vă că nu uitați că traseele setate în acest fișier trebuie să fie relative la directorul /var/lib/tftpboot.

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

Cel de mai jos este un exemplu de fișier de configurare pe care îl puteți utiliza, dar asigurați-vă că modificați imaginile de instalare, protocoalele și IP-urile pentru a reflecta în mod corespunzător depozitele și locațiile sursei de instalare din rețeaua dumneavoastră.

File de configurare implicită PXE
File de configurare implicită PXE

În configurația de mai sus, puteți observa că imaginile de pornire CentOS 8 (kernel și initrd) se află într-un director centos7 relativ la /var/lib/tftpboot (i.i.e. /var/lib/tftpboot/centos7), iar depozitele de instalare pot fi accesate folosind protocolul FTP pe 192.168.1.2/pub (adresa IP a serverului PXE).

De asemenea, menu label 2 descrie sursele oficiale de instalare CentOS 8, depozite în oglindă (conexiunea la internet este necesară pe sistemul client) și menu label 3 descrie faptul că instalarea clientului trebuie să se facă prin intermediul unui VNC la distanță (aici înlocuiți parola VNC cu o parolă puternică).

Important: După cum vedeți în configurația de mai sus, am folosit imaginea CentOS 8 în scop demonstrativ, dar puteți folosi și imagini RHEL 8.

Pasul 5: Adăugați imaginile de boot CentOS 8 la serverul PXE

9. Pentru a adăuga imagini CentOS 8 la serverul PXE, trebuie să descărcați local imaginea ISO a DVD-ului CentOS 8 folosind comanda wget și să o montați.

10. După ce ați descărcat CentOS 8, trebuie să creați un director centos7 și să copiați imaginile bootabile ale kernelului și initrd.

Motivul care stă la baza acestei abordări este că, mai târziu, puteți avea directoare separate pentru fiecare nouă distribuție Linux sub /var/lib/tftpboot fără a încurca întreaga structură de directoare.

Pasul 6: Creați sursa de instalare locală a oglinzii CentOS 8

11. Există o varietate de protocoale (HTTP, HTTPS sau NFS) care sunt disponibile pentru configurarea sursei de instalare locală a oglinzilor CentOS 8, dar eu am ales protocolul FTP deoarece este ușor de configurat folosind serverul vsftpd.

Să instalăm serverul Vsftpd și să copiem tot conținutul DVD-ului CentOS 8 în directorul FTP /var/ftp/pub, așa cum se arată.

# dnf install vsftpd# cp -r /mnt/* /var/ftp/pub/ # chmod -R 755 /var/ftp/pub

12. Acum că toată configurația serverului PXE este finalizată, puteți să porniți, să activați și să verificați starea serverelor DNSMASQ și VSFTPD.

# systemctl start dnsmasq# systemctl status dnsmasq# systemctl start vsftpd# systemctl status vsftpd# systemctl enable dnsmasq# systemctl enable vsftpd

13. În continuare, trebuie să deschideți porturile de pe firewall-ul dvs. pentru ca sistemele client să ajungă la serverul PXE și să pornească de pe acesta.

14. Pentru a verifica locația de rețea a sursei de instalare FTP, deschideți browserul și tastați adresa IP a serverului PXE cu protocolul FTP urmată de locația de rețea /pub.

ftp://192.168.1.2/pub
Verificați directorul FTP

Pasul 7: Configurați clienții pentru a porni din rețea

15. Acum configurați sistemele client să pornească și să instaleze CentOS 8 pe sistemele lor, configurând Network Boot ca dispozitiv principal de pornire din meniul BIOS.

După ce sistemul pornește, veți obține o solicitare PXE, unde trebuie să apăsați tasta F8 pentru a intra în prezentare și apoi apăsați tasta Enter pentru a trece mai departe la meniul PXE.

Meniul serverului de boot PXE
Instalează CentOS 8 de pe serverul PXE

Acesta este tot pentru configurarea unui server PXE minim pe CentOS/RHEL 8.

.

Lasă un răspuns

Adresa ta de email nu va fi publicată.