Ab und zu soll es vorkommen, dass sich IP-Adressen ändern und diese auch in der XenServer Umgebung geändert werden müssen. Linux Admins werden beim XenServer weniger Probleme haben, aber Windows Admins sind an der Stelle auf Hilfe angewiesen. Dieser Beitrag beschreibt wie man in einer XenServer Umgebung die bei der Installation gesetzten IP-Adressen ändern kann.
Login als Root am XenServer (Konsole oder über SSH)
Über das Kommando xe pif-list die UUID des Management Interface anzeigen lassen
xe pif-list management=true params=uuid --minimal
Mit der UUID das Interface neu konfigurieren
xe pif-reconfigure-ip uuid=UUID mode=static IP=NeueIP netmask=255.255.255.0 ∠ gateway=GW-Adresse
Falls die IP-Adresse an einem Pool Master durchgeführt wurde, müssen noch die Slaves benachrichtigt werden.
xe pool-recover-slaves
Diese Prozedur funktioniert auch in einer Sub-Shell mit nur einer einzigen Kommandozeile.
xe pif-reconfigure-ip uuid=$(xe pif-list management=true params=uuid ∠ --minimal) mode=static IP=NeueIP netmask=255.255.255.0 gateway=GW-Adresse
Jedes Interface hat ein eigenes Konfigurationsscript unter /etc/sysconfig/network-scripts/.
[root@XENHOST network-scripts]# ls ifcfg-eth0 ifdown-ippp ifdown-sl ifup-ipv6 ifup-sit ifcfg-eth1 ifdown-ipsec ifdown-tunnel ifup-ipx ifup-sl ifcfg-lo ifdown-ipv6 ifup ifup-isdn ifup-tunnel ifcfg-xenbr0 ifdown-isdn ifup-aliases ifup-plip ifup-wireless ifcfg-xenbr1 ifdown-post ifup-bnep ifup-plusb init.ipv6-global ifdown ifdown-ppp ifup-eth ifup-post net.hotplug ifdown-bnep ifdown-routes ifup-ippp ifup-ppp network-functions ifdown-eth ifdown-sit ifup-ipsec ifup-routes network-functions-ipv6
Die beiden physischen Netzwerkschnittstellen (hier eth0 und eth1) haben ihre Konfiguration in den Skripten ifcfg-eth0 bzw. ifcfg-eth1.
XEMANAGED=yes DEVICE=eth0 ONBOOT=no TYPE=Ethernet HWADDR=00:1c:c4:12:d5:8a BRIDGE=xenbr0
Interessant sind hier nur die Einträge XEMANAGED=yes und BRIDGE=xenbr0. XEMANAGED zeigt uns, dass dieses Interface von Xen verwaltet wird, was nicht immer der Fall ist z.B. bei Interfaces die über einen Trunk verbunden sind oder für eigene iSCSI Netzwerke konfiguriert sind. Das Interface das der XenServer benutzt heißt hier xenbr0 und hat ebenfalls ein eigenes ifcfg-xenbr0 Skript. Der Inhalt sollte in etwa wie folgt aussehen:
XEMANAGED=yes DEVICE=xenbr0 ONBOOT=no TYPE=Bridge DELAY=0 STP=off PIFDEV=eth0 BOOTPROTO=none NETMASK=255.255.255.0 IPADDR=10.231.37.46 GATEWAY=10.231.37.250 DNS1=10.9.12.21 DNS2=10.9.14.23 PEERDNS=yes
In diesem Skript können dann die IP-Adressen angepasst werden. Danach nicht vergessen den Server neu zu starten, bzw. ein xe-toolstack-restart auszuführen.