PowerVM und virtuelle Netzwerke (Part 1)

In heutigen Netzwerk-Umgebungen werden üblicherweise eine Vielzahl von VLANs (Virtual Local Area Networks) verwendet. Die Verwendung von 12-bit VLAN-IDs erlaubt mehr als 4000 virtuelle Netzwerke in einem physikalischen Netzwerk. Netzwerk-Administratoren vergeben für die verschiedenen VLANs häufig Namen, um den Sinn und Zweck eines VLANs leichter erkennbar zu machen. Dem Netzwerk-Namen Mgmt-AIX sieht man leicht an, das es sich hier um ein Managment-Netz für AIX-Systeme handelt. Der zugehörigen VLAN-ID 815 sieht man dies nicht an.

Die HMC bietet die Möglichkeit für jedes VLAN auf einem Managed System einen symbolischen Namen zu vergeben. In der HMC GUI kann man die Virtuellen Netze nach Auswahl des Managed Systems unter „Power VM“ finden. Auf der Kommandozeile der HMC werden die virtuellen Netze als vnetwork bezeichnet und man kann diese mit den Kommandos „lshwres –r virtualio –-rsubtype vnetwork“ und „chhwres –r virtualio –-rsubtype vnetwork“ administrieren. Beispiele dazu folgen. Für Benutzer des LPAR-Tools gibt es die Kommandos „ms addvnetwork“, „ms chvnetwork“, „ms lsvnetwork“ und „ms rmvnetwork“.

Wir lassen uns zunächst alle virtuellen Netzwerke des Managed Systems ms09 anzeigen:

$ ms lsvnetwork ms09
NAME  VNETWORK            VSWITCH    TAGGED  VLAN_ID
ms09  VLAN725-ETHPROD     ETHPROD    1       725
ms09  VLAN1410-ETHPROD    ETHPROD    1       1410
ms09  VLAN1411-ETHPROD    ETHPROD    1       1411
ms09  VLAN16-ETHPROD      ETHPROD    0       16
ms09  VLAN15-ETHERNET0    ETHERNET0  0       15
ms09  VLAN14-ETHERNET0    ETHERNET0  0       14
ms09  VLAN1406-ETHERNET0  ETHERNET0  1       1406
ms09  VLAN815-ETHERNET0   ETHERNET0  0       815
$

(Das entsprechende Kommando auf der HMC lautet: lshwres -r virtualio –rsubtype vnetwork -m ms09)

Per Default wird als vnetwork der Prefix VLAN, gefolgt von der VLAN-ID, einem Minus-Zeichen, gefolgt vom Namen des virtuellen Ethernet-Switches verwendet. Die Spalte TAGGED gibt an, ob VLAN-Tagging verwendet wird, oder es sich um eine Port-VLAN-ID handelt.

In der letzten Zeile der Ausgabe findet sich das angesprochene Management-Netz für AIX mit der VLAN-ID 815 am Default Switch ETHERNET0. Dieses soll nun den Namen Mgmt-AIX bekommen:

$ ms chvnetwork ms09 VLAN815-ETHERNET0 new_name=Mgmt-AIX
$

(Das entsprechende HMC-Kommando lautet: chhwres -r virtualio –rsubtype vnetwork -m ms09 -o s –vnetwork VLAN815-ETHERNET0 -a ’new_name=Mgmt-AIX‘)

Eine kurze Überprüfung zeigt das das virtuelle Netzwerk wirklich umbenannt wurde:

$ ms lsvnetwork ms09
NAME  VNETWORK           VSWITCH    TAGGED  VLAN_ID
ms09 VLAN725-ETHPROD     ETHPROD    1       725
ms09 VLAN1410-ETHPROD    ETHPROD    1       1410
ms09 VLAN1411-ETHPROD    ETHPROD    1       1411
ms09 VLAN16-ETHPROD      ETHPROD    0       16
ms09 VLAN15-ETHERNET0    ETHERNET0  0       15
ms09 VLAN14-ETHERNET0    ETHERNET0  0       14
ms09 VLAN1406-ETHERNET0  ETHERNET0  1       1406
ms09 Mgmt-AIX            ETHERNET0  0       815
$

Leider hat das virtuelle Netzwerk nur auf dem Managed System ms09 den neuen Namen. Wir müssten das Kommando zum Umbenennen auch auf den anderen Managed Systems ausführen, auf denen es das VLAN 815 gibt. Für jedes Managed System (eventuell verschiedene HMCs) müsste mit lshwres nachgeschaut werden, ob es dort das entsprechende VLAN gibt. Das dürfte ziemlich aufwändig sein, kann aber sicher mit einer oder mehreren for-Schleifen bewältigt werden.

Für Nutzer des LPAR-Tools gestaltet sich dies etwas einfacher. Wir lassen einfach alle virtuellen Netze auflisten und wählen jeweils nur die Einträge für VLAN-ID 815 und VSwitch ETHERNET0 aus:

$ ms lsvnetwork -s vswitch=ETHERNET0,vlan_id=815
NAME    VNETWORK           VSWITCH    TAGGED  VLAN_ID
ms05    VLAN815-ETHERNET0  ETHERNET0  1       815
ms06    VLAN815-ETHERNET0  ETHERNET0  1       815
ms07    VLAN815-ETHERNET0  ETHERNET0  1       815
ms08    VLAN815-ETHERNET0  ETHERNET0  1       815
ms09    Mgmt-AIX           ETHERNET0  1       815
ms11    VLAN815-ETHERNET0  ETHERNET0  1       815
…
$

Wir brauchen nur die erste Spalte (Name des Managed Systems), aber ohne ms09 (dort wurde der neue Name ja schon gesetzt):

$ ms lsvnetwork -s vswitch=ETHERNET0,vlan_id=815 -F name | grep -v ms09
ms05
ms06
ms07
ms08
ms11
...
$

Verpacken wir dies noch in eine for-Schleife, dann läßt sich auf allen Managed Systems das virtuelle Netz umbenennen. Da wir vorsichtig sind, fügen wir zunächst noch ein echo vor das „ms chvnetwork“-Kommando ein:

$ for ms in $( ms lsvnetwork -s vswitch=ETHERNET0,vlan_id=815 -F name | grep -v ms09 )
> do
> echo ms chvnetwork $ms VLAN815-ETHERNET0 new_name=Mgmt-AIX
> done
ms chvnetwork ms05 VLAN815-ETHERNET0 new_name=Mgmt-AIX
ms chvnetwork ms06 VLAN815-ETHERNET0 new_name=Mgmt-AIX
ms chvnetwork ms07 VLAN815-ETHERNET0 new_name=Mgmt-AIX
ms chvnetwork ms08 VLAN815-ETHERNET0 new_name=Mgmt-AIX
ms chvnetwork ms11 VLAN815-ETHERNET0 new_name=Mgmt-AIX
...
$

Die Kommandos passen und wir lassen nun das echo-Kommando weg und führen die Umbenennung durch.

$ for ms in $( ms lsvnetwork -s vswitch=ETHERNET0,vlan_id=815 -F name | grep -v ms09 )
> do
> ms chvnetwork $ms VLAN815-ETHERNET0 new_name=Mgmt-AIX
> done
$

Eine kurze Überprüfung zeigt das die Netzwerke umbenannt wurden.

$ ms lsvnetwork -s vswitch=ETHERNET0,vlan_id=815
NAME    VNETWORK  VSWITCH    TAGGED  VLAN_ID
ms05    Mgmt-AIX  ETHERNET0  1       815
ms06    Mgmt-AIX  ETHERNET0  1       815
ms07    Mgmt-AIX  ETHERNET0  1       815
ms08    Mgmt-AIX  ETHERNET0  1       815
ms09    Mgmt-AIX  ETHERNET0  1       815
ms11    Mgmt-AIX  ETHERNET0  1       815
…
$

Natürlich kann man bei der Suche auch das vnetwork angeben:

$ ms lsvnetwork -s vnetwork=Mgmt-AIX
NAME    VNETWORK  VSWITCH    TAGGED  VLAN_ID
ms05    Mgmt-AIX  ETHERNET0  1       815
ms06    Mgmt-AIX  ETHERNET0  1       815
ms07    Mgmt-AIX  ETHERNET0  1       815
ms08    Mgmt-AIX  ETHERNET0  1       815
ms09    Mgmt-AIX  ETHERNET0  1       815
ms11    Mgmt-AIX  ETHERNET0  1       815
…
$

Das Resultat ist wie erwartet identisch.

Die Verwendung von Netzwerk-Namen identisch zu den Namen der Netzwerk-Kollegen sollte auch die Kommunikation mit diesen vereinfachen. Man redet auch wirklich über die gleiche Sache.

Ein letzter Hinweis: Die Methode mit der for-Schleife ist natürlich relativ aufwändig, wenn man viele Netzwerk-Namen auf allen Managed Systems bekannt machen möchte. Wir haben dazu ein Skript, das wir gerne zur Verfügung stellen.

Im zweiten Teil wird das Anlegen und Löschen von virtuellen Netzwerken behandelt: PowerVM und virtuelle Netzwerke (Part 2)

Zurück zu LPAR-Tool