Tento článek je druhou částí ze dvou krátké série. Pokud vám to uniklo, přečtěte si první článek Jak nastavit spouštění PXE pro hardware UEFI .
V prvním článku jste vytvořili fungující PXE server, DHCP server nakonfigurovaný pro doručování IP adres do PXE zaváděných systémů a TFTP server pro dodání bootovatelného systému a ISO obrazů. Tento článek pokračuje v dokončení vašeho prostředí a obsahuje několik tipů pro odstraňování problémů, když se něco pokazí.
Nastavení HTTP
K poskytnutí nového serveru Kickstart
je potřeba HTTP server soubor a také operační systém, který se má nainstalovat. Tyto soubory je možné poskytovat přes HTTPS, ale pro většinu nových serverů se pro zjednodušení používá HTTP.
Zde jsou kroky k nastavení serveru HTTP:
1- Nainstalujte HTTP
server:
# yum install -y httpd
2- Připojte obraz ISO hostitele virtualizace Red Hat (pokud není připojen):
# mount -t iso9660 /path/iso-file.iso /mnt -o loop,ro
3- Zkopírujte obraz Squashe a soubory ISO do cílových umístění:
# mkdir /var/www/html/rhv4.3/{ISO,image}
# cp -a /mnt /var/www/html/rhv4.3/ISO
# cp /mnt/Packages/redhat-virtualization-host-image-update* /tmp
# rpm2cpio redhat-virtualization-host-image-update* | cpio -idmv
# cp /tmp/usr/share/redhat-virtualization-host-version_number_version.squashfs.img /var/www/html/rhv4.3/image
4- Zkopírujte Kickstart
soubor do cílového umístění:
# mkdir /var/www/html/kickstarts/
# vi /var/www/html/kickstarts/ks.cfg 🡪 Create a new file called ks.cfg
5- Povolte a spusťte httpd
služba:
#systemctl enable httpd; systemctl start httpd
Soubor Kickstart
Zde je ukázka Kickstart
soubor, který lze použít k instalaci OS RHVH. Red Hat důrazně doporučuje použít možnost „Automaticky konfigurovat dělení“ v cíli instalace.
lang en_US
keyboard us
eula --agreed
rootpw Redhat --plaintext
#platform x86, AMD64, or Intel EM64T
reboot
text
bootloader --location=mbr --append="rhgb quiet crashkernel=auto"
zerombr
liveimg --url=http:// 192.168.1.10/rhv4.3/image/redhat-virtualization-host-version_number_version.squashfs.img
clearpart --drives=sda --all
ignoredisk --only-use=sda
autopart --type=thinp
%post --erroronfail
nodectl init
%end
Poznámky:
1- Níže uvedená adresa URL je poskytnuta společností Red Hat a lze ji použít k vytvoření přizpůsobeného Kickstart
soubor:
[https://access.redhat.com/labs/kickstartconfig/](https://access.redhat.com/labs/kickstartconfig/)
2- V %post
části Kickstart
lze přidat příkazy Linux pro nastavení statických IP adres pro ovirtmgmt
stejně jako název hostitele
.
Možnosti automatizace
Tento postup je vhodný pro instalaci více serverů, ale vyžaduje ruční změny. Může být však plně automatizován různými způsoby.
Automatizace je mimo rozsah tohoto článku, ale na vysoké úrovni zde budou zmíněny dvě různé možnosti automatizace:
Použití Ansible k automatizaci napájení serverů
Většina dodavatelů HW má nyní svůj Ansible
moduly pro načtení různých podrobností týkajících se serverů a také pro jejich zapínání a vypínání, takže pro automatizaci instalace operačního systému musíme vytvořit Ansible playbook, abychom mohli provést následující:
- Play 1:Vytvořte šablonu Jinja2 pro
Kickstart
soubor, kde jsou statická IP a název hostitele v sekci příspěvku správně nahrazeny, pomocí proměnného souboru, který mapuje MAC adresu rozhraní PXE na statickou IP a název hostitele pro každý server, a poté vložte dynamicky generovanýKickstart soubor do příslušného umístění na serveru HTTP.
- Play 2:Zapněte potřebný server pomocí MAC adresy rozhraní PXE.
- Play 3:Před přesunem na jiný server k instalaci otestujte nově nainstalovaný server pomocí statické IP adresy.
Výhody:
- V případě nových serverů není potřeba žádná ruční činnost kromě aktualizace souboru proměnných.
Nevýhody:
- Tato možnost vyžaduje integraci s rozhraním API pro správu hardwaru.
- Tato možnost může nainstalovat operační systém na jeden server současně (na serveru http můžete mít hostovaný pouze jeden soubor kickstart najednou).
Použití Ansible k odeslání konfigurace hostitelů po instalaci OS
Zde v dhcpd.conf
pevně zakódujeme IP adresu, která bude přidělena každé MAC adrese nového serveru v zřizovací síti. Dále vytvoříme soubor inventáře obsahující tyto IP adresy a také proměnný soubor obsahující název hostitele a statickou IP adresu pro každý server, který je namapován na jeho IP adresu v zřizovací síti. Nakonec vytvořte jednu hru Ansible, která bude konfigurovat server po instalaci operačního systému.
Výhody:
- Žádná závislost na modulech Ansible od dodavatele hardwaru.
- Paralelně lze konfigurovat více serverů.
Nevýhody:
- Není plně automatizované jako
dhcpd.conf
je třeba upravit a také je třeba přidat proměnné pro nové servery. Kromě toho je třeba servery zapnout ručně.
[ Potřebujete více o Ansible? Absolvujte bezplatný kurz technického přehledu od společnosti Red Hat. Ansible Essentials:Technický přehled jednoduchosti v automatizaci ]
Nastavení brány firewall a sítě
Pokud jsou mezi servery PXE a zajišťovacími sítěmi brány firewall, musí být povolen příchozí provoz TFTP a HTTP ze zajišťovacích sítí směrem k serverům PXE. Musí být povolen také provoz ICMP ze serverů PXE směrem k zajišťovacím sítím (nové servery musí být pingovatelné ze serveru DHCP).
Příchozí provoz SSH ze sítí pro poskytování služeb směrem k serverům PXE musí být povolen z důvodu odstraňování problémů, jak bude vysvětleno v následující části.
Navíc propojení PXE rozhraní na nových serverech komplikuje nastavení a není potřeba.
Ze serverů PXE musí být pomocí firewallu
povoleny služby DHCP, TFTP a HTTP . Za předpokladu, že služby DHCP, TFTP a HTTP jsou všechny umístěny na stejném serveru, je třeba provést následující příkaz:
# firewall-cmd --permanent --add-service=http --add-service=dhcp --add-service=tftp
# firewall-cmd –reload
Odstraňování problémů
Nastavení PXE vyžaduje na začátku určité úsilí a řešení problémů může být problém, protože na nových serverech toho moc dělat nemůžeme, protože zatím nemají žádný OS. Zde je několik tipů, které mohou pomoci při odstraňování problémů:
- Zkontrolujte, zda je server dostupný přes DHCP IP. To lze provést vyhledáním příslušné IP adresy DHCP v
/var/lib/dhcpd/dhcpd.leases
(nebo pomocí kteréhokoli z veřejně dostupných skriptů Pythonu k analýze tohoto souboru) a poté na něj odešlete příkaz ping. - Použijte
tcpdump
na serverech PXE, které vám pomohou při odstraňování problémů. - Shromažďování souboru
/run/initramfs/rdsosreport.txt
přihlaste se v případě, že se instalace serveru nezdaří.
Toto je nejsložitější část při odstraňování problémů. Pokud se instalace nezdaří, nebudete mít žádnou síť pro přenos tohoto souboru a podpora Red Hat vám bez tohoto souboru nebude schopna pomoci.
Existuje mnoho způsobů, jak tento soubor shromáždit, ale nejjednodušší způsob je následující:
- Zaveďte nový server z RHEL 7 iso.
- Vyberte
Záchrana
možnost. - Stiskněte
Shift+F2
k zobrazení výzvy shellu. - Použijte
fdisk
pro vytvoření nového oddílu na/dev/sda
typu Linux. - Odpojte ISO.
- Restartujte server.
- Jakmile se instalace nezdaří a budete na příkazovém řádku Dracut, proveďte následující:
#mkdir /mnt
#mount /dev/sda1 /mnt
#cp /run/initramfs/rdsosreport.txt /dev/sda1
#umount /dev/sda1
- Znovu restartujte server a opakujte kroky 1 až 3.
- Připojit
/dev/sda1
#mkdir /mnt
#mount /dev/sda1 /mnt
- Zde máte dvě možnosti:
- Získejte adresu IP DHCP pomocí:
#dhclient
#scp /mnt/rdsosreport.txt [email protected]:/root
- Připojte adresář na svůj notebook jako oddíl na nový server a zkopírujte
rdsosreport.txt
do tohoto oddílu.
Koneckonců
Gratuluji k dosažení tohoto bodu. Nyní máte funkční systém PXE, který může nasadit nové hostitele RHV. Pokud vše nefunguje podle očekávání, přečtěte si část o odstraňování problémů. Musíte také dokončit každý krok, jak je napsáno, abyste se úspěšně dostali do tohoto bodu. Zkontrolujte svou práci, protože obsahuje mnoho podrobných kroků. Hodně štěstí v novém prostředí.
Reference
- Hostitelé instalace pro virtualizaci Red Hat
- Příprava na síťovou instalaci