PXE besteht aus mehreren Komponenten: DHCP, HTTP und TFTP. Hier wird gezeigt, wie Sie einen PXE-Server unter Ubuntu einrichten.
DHCP verteilt IP-Einstellungen dynamisch an NSX-T Data Center-Komponenten wie NSX Edge. In einer PXE-Umgebung ermöglicht es der DHCP-Server NSX Edge, automatisch eine IP-Adresse anzufordern und zu erhalten.
TFTP ist ein Dateiübertragungsprotokoll. Der TFTP-Server überwacht stets PXE-Clients im Netzwerk. Wenn er erkennt, dass ein Netzwerk-PXE-Client PXE-Dienste anfragt, stellt er die NSX-T Data Center-Komponenten-ISO-Datei und die in einer vordefinierten Datei enthaltenen Installationseinstellungen bereit.
Prozedur
- (Optional) Verwenden Sie eine Kickstart-Datei, um neue TFTP oder DHCP-Dienste auf einem Ubuntu-Server einzurichten.
Eine Kickstart-Datei ist eine Textdatei mit CLI-Befehlen, die Sie nach dem ersten Start auf der Appliance ausführen.
Der Name der Kickstart-Datei basiert auf dem PXE-Server, auf den sie verweist. Beispiel:
nsxcli.install
Die Datei muss in Ihren Webserver kopiert werden (z. B. unter
/var/www/html/nsx-edge/nsxcli.install).
In der Kickstart-Datei können Sie CLI-Befehle hinzufügen. Zum Beispiel, um die IP-Adresse der Verwaltungsschnittstelle zu konfigurieren:
stop service dataplane
set interface eth0 <ip-cidr-format> plane mgmt
start service dataplane
Um das Kennwort des Admin-Benutzers zu ändern:
set user admin password <new_password> old-password <old-password>
Wenn Sie in der Datei preseed.cfg ein Kennwort angeben, sollten Sie dasselbe Kennwort in der Kickstart-Datei verwenden. Verwenden Sie andernfalls das Standardkennwort „default“.
So verbinden Sie NSX Edge mit der Management Plane:
join management-plane <manager-ip> thumbprint <manager-thumbprint> username <manager-username> password <manager password>
- Erstellen Sie zwei Schnittstellen: eine für das Management und eine andere für DHCP- und TFTP-Dienste.
Stellen Sie sicher, dass sich die DHCP/TFTP-Schnittstelle im selben Subnetz befindet wie
NSX Edge.
Beispiel: Wenn sich die NSX Edge-Managementschnittstellen im Subnetz 192.168.210.0/24 befinden, müssen Sie eth1 ebenfalls in diesem Subnetz platzieren.
# The loopback network interface
auto lo
iface lo inet loopback
# PXE server's management interface
auto eth0
iface eth0 inet static
address 192.168.110.81
gateway 192.168.110.1
netmask 255.255.255.0
dns-nameservers 192.168.110.10
# PXE server's DHCP/TFTP interface
auto eth1
iface eth1 inet static
address 192.168.210.82
gateway 192.168.210.1
netmask 255.255.255.0
dns-nameservers 192.168.110.10
- Installieren Sie die DHCP-Serversoftware und konfigurieren Sie die erforderlichen Einstellungen zum Einrichten des PXE-Servers. Weitere Informationen finden Sie in der Linux-Dokumentation.
- Installieren Sie den Apache-Server und TFTP sowie andere Komponenten, die zum Konfigurieren des PXE-Servers erforderlich sind.
- Kopieren Sie die ISO-Datei des NSX Edge-Installationsprogramms in einen temporären Ordner oder laden Sie sie dorthin herunter.
- Stellen Sie die ISO-Datei bereit und kopieren Sie die Installationskomponenten in den TFTP-Server und den Apache-Server.
sudo mount -o loop ~/nsx-edge.<build>.iso /mnt
cd /mnt
sudo cp -fr install/netboot/* /var/lib/tftpboot/
sudo mkdir /var/www/html/nsx-edge
sudo cp -fr /mnt/* /var/www/html/nsx-edge/
- (Optional) Bearbeiten Sie die Datei /var/www/html/nsx-edge/preseed.cfg, um die verschlüsselten Kennwörter zu ändern.
Sie können ein Linux-Tool wie mkpasswd verwenden, um ein Kennwort-Hash zu erstellen.
sudo apt-get install whois
sudo mkpasswd -m sha-512
Password:
$6$SUFGqs[...]FcoHLijOuFD
- Ändern Sie das Root-Kennwort, bearbeiten Sie /var/www/html/nsx-edge/preseed.cfg und suchen Sie nach der folgenden Zeile:
d-i passwd/root-password-crypted password $6$tgmLNLMp$9BuAHhN...
- Ersetzen Sie die Hash-Zeichenfolge.
Sonderzeichen wie $, ', ", oder \ müssen nicht maskiert werden.
- Fügen Sie den Befehl usermod zu preseed.cfg hinzu, um das Kennwort für Root, Admin oder beides festzulegen.
Fügen Sie beispielsweise den folgenden Befehl hinzu.
usermod --password '\$6\$VS3exId0aKmzW\$U3g0V7BF0DXlmRI.LR0v/VgloxVotEDp00bO2hUF8u/' root; \
usermod --password '\$6\$VS3exId0aKmzW\$U3g0V7BF0DXlmRI.LR0v/VgloxVotEDp00bO2hUF8u/' admin; \
Die Hash-Zeichenfolge stellt ein Beispiel dar. Sie müssen alle Sonderzeichen maskieren. Das Root-Kennwort im ersten usermod-Befehl ersetzt das in d-i passwd/root-password-crypted password $6$tgm...
festgelegte Kennwort.
Wenn Sie das Kennwort mit dem Befehl usermod festlegen, wird der Benutzer nicht aufgefordert, das Kennwort bei der ersten Anmeldung zu ändern. Andernfalls muss der Benutzer das Kennwort bei der ersten Anmeldung ändern.
- Fügen Sie die folgenden Zeilen zur Datei /var/lib/tftpboot/pxelinux.cfg/default hinzu.
Ersetzen Sie 192.168.210.82 durch die IP-Adresse Ihres TFTP-Servers.
label nsxedge
kernel ubuntu-installer/amd64/linux
ipappend 2
append netcfg/dhcp_timeout=60 auto=true priority=critical vga=normal partman-lvm/device_remove_lvm=true netcfg/choose_interface=auto debian-installer/allow_unauthenticated=true preseed/url=http://192.168.210.82/nsx-edge/preseed.cfg mirror/country=manual mirror/http/hostname=192.168.210.82 nsx-kickstart/url=http://192.168.210.82/nsx-edge/nsxcli.install mirror/http/directory=/nsx-edge initrd=ubuntu-installer/amd64/initrd.gz mirror/suite=bionic netcfg/do_not_use_netplan=true --
- Fügen Sie die folgenden Zeilen zur Datei /etc/dhcp/dhcpd.conf hinzu.
Ersetzen Sie 192.168.210.82 durch die IP-Adresse Ihres DHCP-Servers.
allow booting;
allow bootp;
next-server 192.168.210.82; #Replace this IP address
filename "pxelinux.0";
- Starten Sie den DHCP-Dienst neu.
sudo service isc-dhcp-server restart
Hinweis: Wenn ein Fehler zurückgegeben wird, beispielsweise „stop: Unknown instance: start: Job failed to start“, führen Sie
sudo /etc/init.d/isc-dhcp-server stop und dann
sudo /etc/init.d/isc-dhcp-server start aus. Mit dem Befehl
sudo /etc/init.d/isc-dhcp-server start können Sie Informationen zur Fehlerursache abrufen.
Nächste Maßnahme
Installieren Sie NSX Edge mithilfe einer ISO-Datei auf einer Bare-Metal-Bereitstellung. Siehe Automatisches Installieren von NSX Edge via ISO-Datei.