PXE Boot (Preboot Execution Environment) ermöglicht die automatische Installation von Linux-Servern auf Bare-Metal-Hardware. In Kombination mit Kickstart (für RHEL/CentOS) oder Preseed (für Debian/Ubuntu) lassen sich skalierbare, reproduzierbare Deployments realisieren. Dies ist ideal für Rechenzentren, Testumgebungen oder hybride Clouds, in denen schnelle Provisionierung notwendig ist.
1. PXE Boot Grundlagen
PXE ermöglicht es einem Client, über das Netzwerk ein Betriebssystem zu booten, ohne dass ein lokales Medium erforderlich ist. Der Client erhält eine IP über DHCP, lädt ein Boot-Image über TFTP und startet anschließend den Installer.
- DHCP für IP- und Bootinformationen
- TFTP-Server für Kernel- und Initial-Ramdisk-Dateien
- Automatisierte Installation über Kickstart oder Preseed
- Skalierbar auf mehrere Nodes gleichzeitig
2. Infrastruktur vorbereiten
Ein PXE-Setup erfordert einige zentrale Komponenten:
- DHCP-Server: Verteilt IP-Adressen und Boot-Optionen
- TFTP-Server: Stellt Kernel- und initrd-Dateien bereit
- HTTP/FTP-Server: Dient als Repository für Installationspakete
- Optional: DNS, NFS oder iSCSI für spezielle Storage-Anforderungen
Beispiel DHCP-Konfiguration für PXE
subnet 192.168.100.0 netmask 255.255.255.0 {
range 192.168.100.50 192.168.100.200;
option routers 192.168.100.1;
filename "pxelinux.0";
next-server 192.168.100.10;
}
3. TFTP-Server und PXELINUX einrichten
PXELINUX ist ein populärer Bootloader für PXE-Umgebungen. Er lädt Kernel und initrd und kann verschiedene Bootoptionen bereitstellen.
yum install -y syslinux-tftpboot tftp-server
mkdir -p /var/lib/tftpboot/pxelinux.cfg
cp /usr/share/syslinux/pxelinux.0 /var/lib/tftpboot/
systemctl enable --now tftp.socket
Konfiguration der Boot-Optionen:
cat > /var/lib/tftpboot/pxelinux.cfg/default <
4. Automatisierte Installation mit Kickstart
Kickstart-Dateien definieren Installation, Partitionierung, Benutzerkonten und Pakete automatisch.
install
text
lang en_US.UTF-8
keyboard us
network --bootproto=dhcp
rootpw --plaintext MySecurePass
firewall --enabled --service=ssh
selinux --enforcing
timezone Europe/Berlin
bootloader --location=mbr
clearpart --all --initlabel
part / --fstype=ext4 --size=20000
part swap --size=4096
%packages
@core
vim
wget
%end
5. Preseed für Debian/Ubuntu
Für Debian-basierte Systeme wird Preseed genutzt, um ähnliche Automatisierungen zu erreichen.
d-i netcfg/get_hostname string server01
d-i netcfg/get_domain string example.com
d-i passwd/root-password password MySecurePass
d-i passwd/root-password-again password MySecurePass
tasksel tasksel/first multiselect standard
d-i pkgsel/include string vim htop curl
d-i pkgsel/upgrade select safe-upgrade
6. HTTP-Server für Installationsdateien
Kernel- und Paketdateien werden über HTTP bereitgestellt:
yum install -y httpd
mkdir -p /var/www/html/centos
cp -r /mnt/iso/* /var/www/html/centos/
systemctl enable --now httpd
7. Skalierung und parallele Installationen
PXE ermöglicht gleichzeitige Provisionierung mehrerer Nodes:
- DHCP-Range erweitern
- PXELINUX Boot-Menu mit verschiedenen Installationsprofilen
- Netzwerkbandbreite und Storage berücksichtigen
Tipps für große Deployments
- Pre-Boot Scripts für Hardware-Erkennung
- Separate VLANs für PXE-Traffic
- Monitoring von Installationsstatus per Syslog oder HTTP Callback
8. Sicherheit im PXE Setup
- Trennung von PXE- und Produktionsnetzwerken
- Optional: TFTP über VPN oder VLAN absichern
- Kickstart/Preseed Dateien sollten HTTPS bereitgestellt werden
- Root-Passwörter verschlüsselt oder per Vault einbinden
9. Troubleshooting
PXE-Probleme lassen sich über Logs und Testtools analysieren:
- DHCP-Logs prüfen:
journalctl -u dhcpd - TFTP-Test:
tftp 192.168.100.10 -c get pxelinux.0 - Netzwerkverbindungen prüfen:
tcpdump -i eth0 port 69 - PXE Boot Fehlermeldungen auf Konsole beachten
10. Best Practices für Profis
- Golden Images für PXE bereitstellen
- CI/CD Integration: Automatisierte ISO-Builds und Kickstart/Preseed-Templates
- Versionierung der Konfigurationen in Git
- Automatisierte Tests auf virtuellen Maschinen vor Bare-Metal Rollout
- Monitoring der Installationen und Alerting bei Fehlern
Mit PXE Boot und automatisierten Installationsprofilen lassen sich Linux-Server auf Bare-Metal effizient, reproduzierbar und skalierbar bereitstellen. Durch Best Practices, Sicherheitsmaßnahmen und Integration in DevOps-Prozesse können Unternehmen ihre Infrastruktur schnell und konsistent aufbauen, ohne manuelle Eingriffe bei jeder Installation.
Konfiguriere Cisco Router & Switches und liefere ein Packet-Tracer-Lab/GNS3
Ich biete professionelle Unterstützung im Bereich Netzwerkkonfiguration und Network Automation für private Anforderungen, Studienprojekte, Lernlabore, kleine Unternehmen sowie technische Projekte. Ich unterstütze Sie bei der Konfiguration von Routern und Switches, der Erstellung praxisnaher Topologien in Cisco Packet Tracer, dem Aufbau und Troubleshooting von GNS3- und EVE-NG-Labs sowie bei der Automatisierung von Netzwerkaufgaben mit Netmiko, Paramiko, NAPALM und Ansible. Kontaktieren Sie mich jetzt – klicken Sie hier.
Meine Leistungen umfassen:
-
Professionelle Konfiguration von Routern und Switches
-
Einrichtung von VLANs, Trunks, Routing, DHCP, NAT, ACLs und weiteren Netzwerkfunktionen
-
Erstellung von Topologien und Simulationen in Cisco Packet Tracer
-
Aufbau, Analyse und Fehlerbehebung von Netzwerk-Labs in GNS3 und EVE-NG
-
Automatisierung von Netzwerkkonfigurationen mit Python, Netmiko, Paramiko, NAPALM und Ansible
-
Erstellung von Skripten für wiederkehrende Netzwerkaufgaben
-
Dokumentation der Konfigurationen und Bereitstellung nachvollziehbarer Lösungswege
-
Konfigurations-Backups, Optimierung bestehender Setups und technisches Troubleshooting
Benötigen Sie Unterstützung bei Ihrem Netzwerkprojekt, Ihrer Simulation oder Ihrer Network-Automation-Lösung? Kontaktieren Sie mich jetzt – klicken Sie hier.

