Konfigurowanie serwera rozruchowego „PXE Network” dla wielu instalacji dystrybucji Linux w RHEL/Centos 7

Konfigurowanie serwera rozruchowego „PXE Network” dla wielu instalacji dystrybucji Linux w RHEL/Centos 7

Serwer PXE - Środowisko wykonawcze Preboot - instruuje komputer klienta do uruchamiania, uruchamiania lub instalacji systemu operacyjnego bezpośrednio tworzą interfejs sieciowy, eliminując potrzebę spalania CD/DVD lub użycia fizycznego medium lub może złagodzić zadanie instalowania rozkładów Linux na Twoim infrastruktura sieciowa na wielu maszynach w tym samym czasie.

Ustawienie rozruchu sieci PXE w RHEL/CENTOS 7

Wymagania

  1. Centos 7 Minimalna procedura instalacji
  2. RHEL 7 Minimalna procedura instalacji
  3. Skonfiguruj statyczny adres IP w RHEL/CENTOS 7
  4. Usuń niechciane usługi w RHEL/CENTOS 7
  5. Zainstaluj serwer NTP, aby ustawić prawidłowy czas systemu w RHEL/CENTOS 7

W tym artykule wyjaśniono, w jaki sposób możesz zainstalować i skonfigurować Serwer PXE NA Rhel/Centos 7 x64-bit z lustrzanymi lokalnymi repozytoriami instalacji, źródła dostarczone przez obraz ISO Centos 7, z pomocą DNSMASQ serwer.

Co zapewnia DNS I DHCP usługi, Syslinux Pakiet, który zapewnia bootloaders do uruchamiania sieci, TFTP-SERVER, co udostępnia obrazy rozruchowe do pobrania za pośrednictwem sieci za pomocą Trywialny protokół przesyłania plików (TFTP) i VSFTPD Serwer, który będzie gospodarzem zamontowanego na lustrzanym obrazie DVD - który będzie działał jako oficjalne repozytorium instalacji lustra RHEL/Centos 7.

Krok 1: Zainstaluj i skonfiguruj serwer DNSMASQ

1. Nie trzeba przypominać, że absolutnie wymaga tego, aby jeden z interfejsów karty sieciowej, w przypadku, gdy twój serwer stawia więcej sieci NICS, musi być skonfigurowany ze statycznym adresem IP z tego samego zakresu IP, który należy do segmentu sieci, który zapewni PXE Services.

Po skonfigurowaniu statycznego adresu IP zaktualizowania systemu i wykonaniu innych ustawień początkowych, użyj następującego polecenia, aby zainstalować DNSMASQ Demon.

# Yum Instal DNSMASQ 
Zainstaluj pakiet DNSMASQ

2. DNSMASQ Główny domyślny plik konfiguracyjny znajdujący się w /itp Directory jest oczywiste, ale ma być dość trudne do edycji, zrób jego wysoce skomentowane wyjaśnienia.

Najpierw upewnij się, że wykonałeś kopię zapasową tego pliku na wypadek, gdybyś musiał go później przejrzeć, a następnie utworzyć nowy pusty plik konfiguracyjny za pomocą ulubionego edytora tekstu, wydając następujące polecenia.

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

3. Teraz skopiuj i wklej następujące konfiguracje DNSMASQ.conf Złóż i upewnij się, że zmieniasz poniższe wyjaśnione instrukcje, aby odpowiednio pasować do twoich ustawień sieciowych.

interfejs = ENO16777736, LO #Domena interfejsów wiązania = Centos7.LAN # DHCP ZAKRESY ZAKRESOWE DHCP RANGE = ENO1677736,192.168.1.3192.168.1.253 255.255.255.0,1H # pxe dhcp-boot = pxelinux.0, Pxeserver, 192.168.1.20 # Gateway DHCP-Option = 3192.168.1.1 # DNS DHCP-Option = 6,92.168.1.1, 8.8.8.8 serwer = 8.8.4.4 # Adres transmisji DHCP-Option = 28,10.0.0.255 # serwer NTP DHCP-Option = 42,0.0.0.0 pxe-promppt = "Naciśnij F8 dla menu.„, 60 PXE-SERVICE = x86pc,” Zainstaluj Centos 7 z Network Server 192.168.1.20 ", pxelinux Włącz Tftp Tftp-root =/var/lib/tftpboot 
Konfiguracja DNSMASQ

Stwierdzenia, które musisz zmienić, są następujące:

  1. interfejs - Interfejsy, które serwer powinien słuchać i świadczyć usługi.
  2. interfejsy wiązania - Uznanie do wiązania się tylko na tym interfejsie.
  3. domena - Zamień go swoją nazwą domeny.
  4. Range DHCP - Zamień go na zakres IP zdefiniowany przez maskę sieciową w tym segmencie.
  5. DHCP-Boot - Zastąp instrukcję IP na adres IP interfejsu.
  6. DHCP-Option = 3,192.168.1.1 - Zastąp adres IP swoją bramą segmentu sieciowego.
  7. DHCP-Option = 6,92.168.1.Oku.
  8. serwer = 8.8.4.4 - Umieść swoje adresy IPS Forwarders DNS.
  9. DHCP-Option = 28,10.0.0.255 - Zastąp adres IP adresem transmisji sieci.
  10. DHCP-Option = 42,0.0.0.0 - Umieść serwery czasu sieci - opcjonalnie (0.0.0.0 Adres dotyczy samoreferencji).
  11. PXE-PROMPT - Pozostaw go jako domyślnie - oznacza naciśnięcie klucza F8 do wprowadzenia menu 60 z sekundami czasu oczekiwania…
  12. pxe = usługa - Użyj x86pc dla architektury 32-bitowej/64-bitowej i wprowadź monit menu opisu cytatów. Inne typy wartości mogą być: PC98, IA64_EFI, Alpha, ARC_X86, Intel_lean_Client, IA32_EFI, BC_EFI, XScale_EFI i x86-64_efi.
  13. Włącz Tftp - Włącza kompilację serwera TFTP.
  14. TFTP-Root - Użyj/var/lib/tftpboot - lokalizacja wszystkich plików netbooting.

W przypadku innych zaawansowanych opcji dotyczących pliku konfiguracyjnego nie możesz odczytać instrukcji DNSMASQ.

Krok 2: Zainstaluj rozładowcy Syslinux

4. Po edytowaniu i uratowaniu DNSMASQ główny plik konfiguracyjny, śmiało i zainstaluj Syslinx Pakiet PXE Bootloader, wydając następujące polecenie.

# mniam instaluj Syslinux 
Zainstaluj ładloaders Syslinux

5. Pliki PXE Bootloaders znajdują się /usr/share/syslinux Absolutna ścieżka systemowa, dzięki czemu możesz ją sprawdzić, wymieniając tę ​​zawartość ścieżki. Ten krok jest opcjonalny, ale może być konieczne świadomość tej ścieżki, ponieważ w następnym kroku skopiujemy wszystkie jej treści do Serwer TFTP ścieżka.

# ls/usr/share/syslinux 
Pliki Syslinux

Krok 3: Zainstaluj serwer TFTP i wypełnij go bootloaderami Syslinux

6. Teraz przejdźmy do następnego kroku i zainstaluj TFTP-SERVER a następnie skopiuj wszystkie pliki bootloders dostarczone przez pakiet Syslinux z powyższej lokalizacji do /var/lib/tftpboot ścieżka, wydając następujące polecenia.

# Yum Zainstaluj tftp -server # cp -r/usr/share/syslinux/*/var/lib/tftpboot 
Zainstaluj serwer TFTP

Krok 4: Plik konfiguracyjny serwera PXE PXE

7. Zazwyczaj Serwer PXE odczytuje swoją konfigurację z grupy określonych plików (Guid Pliki - pierwszy, PROCHOWIEC Pliki - Dalej, Domyślny plik - ostatni) hostowany w folderze o nazwie Pxelinux.CFG, które muszą znajdować się w katalogu określonym w TFTP-Root Instrukcja z głównego pliku konfiguracyjnego DNSMASQ.

Utwórz wymagany katalog Pxelinux.CFG i wypełnij to domyślny Plik poprzez wydanie następujących poleceń.

# mkdir/var/lib/tftpboot/pxelinux.cfg # touch/var/lib/tftpboot/pxelinux.cfg/domyślnie 

8. Teraz czas na edycję Serwer PXE Plik konfiguracyjny z prawidłowymi opcjami instalacji dystrybucji Linux. Należy również pamiętać, że wszystkie ścieżki użyte w tym pliku muszą być względne /var/lib/tftpboot informator.

Below you can see an example configuration file that you can use it, but modify the installation images (kernel and initrd files), protocols (FTP, HTTP, HTTPS, NFS) and IPs to reflect your network installation source repositories and paths accordingly.

# nano/var/lib/tftpboot/pxelinux.cfg/domyślnie 

Dodaj następujący fragment do pliku.

Domyślne menu.C32 MIMPER 0 TIMEOUT 300 ONTIMEOUT LOKALNE MENIZACJA ########################################################### Menu rozruchowe ################### natyka 1 etykieta menu ^1) Zainstaluj Centos 7 x64 z lokalnym jądrem Repo Centos7/vmlinuz Dodatek initrd = centos7/initrd.Metoda IMG = ftp: // 192.168.1.20/pub devfs = nomount etykieta 2 etykieta menu ^2) Zainstaluj centos 7 x64 z http: // luster.Centos.Org Repo jądro Centos7/vmlinuz append initrd = centos7/initrd.IMG Method = http: // lustro.Centos.org/centos/7/os/x86_64/devfs = nomount ip = etykieta DHCP 3 etykieta menu ^3) Zainstaluj Centos 7 x64 z lokalnym repozytem za pomocą VNC jądra Centos7/Vmlinuz append initrd = centos7/initrd.Metoda IMG = ftp: // 192.168.1.20/pub devfs = nomount Inst.VNC Inst.vncPassword = hasło etykieta 4 etykieta menu ^4) uruchamia się z napędu lokalnego 
Skonfiguruj serwer PXE

Jak widać obrazy BOOT Centos 7 (jądro i initrd) znajdują się w katalogu o nazwie Centos7 względne /var/lib/tftpboot (Na bezwzględnej ścieżce systemowej oznaczałoby to /var/lib/tftpboot/centos7) a repozytoria instalatora można osiągnąć za pomocą za pomocą Ftp protokół na 192.168.1.20/Pub Lokalizacja sieci - w tym przypadku repozytorium są hostowane lokalnie, ponieważ adres IP jest taki sam jak adres serwera PXE).

Także menu Etykieta 3 Określa, że ​​instalacja klienta powinna być wykonywana ze zdalnej lokalizacji za pośrednictwem VNC (Tutaj zastąp hasło VNC silnym hasłem) na wypadek instalacji na kliencie bezgłowym i menu Etykieta 2 Określa jako
Źródła instalacyjne Oficjalne lustro Internetu Centos 7 (ten przypadek wymaga połączenia internetowego dostępnego na kliencie za pośrednictwem DHCP i NAT).

Ważny: Jak widać w powyższej konfiguracji, użyliśmy Centos 7 do celów demonstracyjnych, ale możesz również zdefiniować obrazy RHEL 7, a przestrzeganie całej instrukcji i konfiguracji są oparte tylko na CentOS 7, więc bądź ostrożny przy wyborze dystrybucji.

Krok 5: Dodaj obrazy Centos 7 do serwera PXE

9. W przypadku tego kroku Centos Istoter i pliki initrd są wymagane. Aby uzyskać te pliki, potrzebujesz Centos 7 DVD ISO Obraz. Więc śmiało i pobierz obraz Centos DVD, umieść go w napędzie DVD i zamontuj obraz do /MNT ścieżka systemowa, wydając poniższe polecenie.

Powodem użycia DVD, a nie minimalnego obrazu CD jest fakt, że później ta zawartość DVD zostanie użyta do utworzenia
lokalnie instalatorów repozytoriów dla Ftp źródła.

# Mount -o Loop /dev /cdrom /mnt # ls /mnt 
Mount Centos DVD

Jeśli Twój komputer nie ma napędu DVD, możesz również pobrać Centos 7 DVD ISO lokalnie używając wget Lub kędzior narzędzia z lustra Centos i zamontuj.

# wget http: // lusterka.Xservers.RO/CENTOS/7.0.1406/ISOS/x86_64/centos-7.0-1406-X86_64-DVD.ISO # Mount -o Loop/Path/to/Centos -DVD.ISO /MNT 

10. Po udostępnieniu zawartości DVD utwórz Centos7 Katalog i kopiowanie Centos 7 Botowowate jądro i obrazy initrd z lokalizacji zamontowanej DVD do struktury folderu Centos7.

# mkdir/var/lib/tftpboot/centos7 # cp/mnt/images/pxeboot/vmlinuz/var/lib/tftpboot/centos7 # cp/mnt/images/pxeboot/initrd/initrd.IMG/var/lib/tftpboot/centos7 
Kopiuj pliki rozruchowe Centos

Powodem zastosowania tego podejścia jest to, że później możesz utworzyć nowe osobne katalogi w /var/lib/tftpboot Ścieżka i dodaj inne rozkłady Linux do menu PXE bez zepsucia całej struktury katalogu.

Krok 6: Utwórz Centos 7 Lokalne źródło instalacji lustra

11. Chociaż możesz skonfigurować Instalacja lustra źródła Za pomocą różnych protokołów, takich jak HTTP, HTTPS lub NFS, dla tego przewodnika wybrałem Ftp protokół, ponieważ jest bardzo niezawodny i łatwy w konfiguracji za pomocą pomocy VSFTPD serwer.

Dalsze zainstaluj demon VSFTPD, skopiuj całą zawartość zamontowaną DVD na VSFTPD Domyślna ścieżka serwera (/var/ftp/pub) - Może to zająć trochę czasu w zależności od zasobów systemowych i dołączyć czytelne uprawnienia do tej ścieżki, wydając następujące polecenia.

# Yum Instaluj vsftpd # cp -r/mnt/*/var/ftp/pub/ # chmod -r 755/var/ftp/pub 
Zainstaluj serwer VSFTPD Skopiuj pliki na ścieżkę FTP Ustaw uprawnienia na ścieżce FTP

Krok 7: Rozpocznij i włącz system Demons w całym systemie

12. Teraz, gdy konfiguracja serwera PXE jest ostatecznie zakończona, zacznij DNSMASQ I VSFTPD Serwery, zweryfikuj ich status i włącz IT obejmując całe system, aby automatycznie rozpocząć po każdym systemie, uruchamiając poniższe polecenia.

# Systemctl Start Dnsmasq # Systemctl Status DNSMASQ # Systemctl Start vsftpd # Systemctl Status VSFTPD # Systemctl Enable DNSMASQ # Systemctl Enable VSFTPD 
Rozpocznij usługę DNSMASQ Rozpocznij usługę VSFTPD

Krok 8: Otwórz zaporę i przetestuj źródło instalacji FTP

13. Aby uzyskać listę wszystkich portów, które muszą być otwarte w zaporze, aby maszyny klientów mogły dotrzeć do serwera PXE Netstat Polecaj i dodaj reguły Firewalld Centos 7 odpowiednio do portów odsłuchowych DNSMASQ i VSFTPD.

# netstat -tulpn # firewall-cmd --add-service = ftp --Permanent ## port 21 # firewall-cmd --add-service = dns --Permanent ## port 53 # firewalll-cmd --add-service = DHCP --Permanent ## Port 67 # Firewall-CMD --add-Port = 69/Udp --Permanent ## Port dla tftp # firewall-cmd --add -port = 4011/UDP-Port ## dla proxydhcp # Firewall-CMD-RELOOD ## Zastosuj zasady 
Sprawdź porty słuchowe Otwarte porty w zaporze

14. Aby przetestować Surowe ścieżka sieci instalacji FTP, otwórz przeglądarkę lokalnie (Lynx powinien to zrobić) lub na innym komputerze i wpisz adres IP twojego serwera PXE z
Protokół FTP, a następnie /pub Lokalizacja sieci na złożonym adresie URL, a wynik powinien być przedstawiony na poniższym zrzucie ekranu.

ftp: // 192.168.1.20/Pub 
Uzyskaj dostęp do plików FTP za pośrednictwem przeglądarki

15. Aby debugować serwer PXE w celu uzyskania ewentualnych błędnych konfiguracji lub innych informacji i diagnostyki w trybie na żywo, uruchom następujące polecenie.

# Tailf/var/log/wiadomości 
Sprawdź dzienniki PXE pod kątem błędów

16. Wreszcie, ostatnim wymaganym krokiem, który musisz zrobić, jest odłączenie DVD Centos 7 i usunięcie fizycznego medium.

# Umount /Mnt 

Krok 9: Skonfiguruj klientów do uruchamiania z sieci

17. Teraz Twoi klienci mogą uruchomić i instalować Centos 7 na swoich maszynach, konfigurując rozruch sieci jako Podstawowe urządzenie rozruchowe z ich systemów BIOS lub uderzając w określony klucz w trakcie BIOS Post Operacje określone w podręczniku płyty głównej.

Aby wybrać uruchamianie sieciowe. Po pierwszym wyświetleniu monitu PXE naciśnij F8 Klucz do wprowadzenia prezentacji, a następnie uderzenia Wchodzić Klucz, aby przejść do menu PXE.

PXE Network Boot PXE Network OS BOOT

18. Po osiągnięciu menu PXE wybierz typ instalacji Centos 7, naciśnij Wchodzić klucz i kontynuuj procedurę instalacji w taki sam sposób, jak można ją zainstalować z lokalnego urządzenia rozruchowego multimedialnego.

Zanotuj, że użycie wariantu 2 z tego menu wymaga aktywnego połączenia internetowego na kliencie docelowym. Ponadto poniżej
Zrzuty ekranu Możesz zobaczyć przykład zdalnej instalacji klienta za pośrednictwem VNC.

Menu PXE Zdalna instalacja Linux za pośrednictwem VNC Zdalna instalacja centu

To wszystko na ustawianie minimalnego Serwer PXE NA Centos 7. W moim następnym artykule z tej serii omówię inne problemy dotyczące tej konfiguracji serwera PXE, takie jak konfiguracja automatycznych instalacji Centos 7 za pomocą Kickstart pliki i dodanie innych dystrybucji Linux do menu PXE - Serwer Ubuntu I Debian 7.