Under Construction
Virtuelles Ethernet auf der Client-LPAR
Um festzustellen welche Art der Netzwerk-Virtualisierung eine LPAR verwendet, ist das Kommando „lpar lsvslot“ besonders gut geeignet. Das Kommando zeigt für eine angegebene LPAR alle virtuellen Adapter an.
Suchen Sie sich eine Ihrer LPARs aus und lassen Sie sich für diese LPAR die virtuellen Adapter anzeigen:
$ lpar lsvslot aixe01
SLOT REQ ADAPTER_TYPE STATE DATA
0 Yes serial/server 1 remote: (any)/any connect_status=unavailable hmc=1
1 Yes serial/server 1 remote: (any)/any connect_status=unavailable hmc=1
5 No eth 1 PVID=16 VLANS= ETHMGMT 87DF85895A05
10 No fc/client 1 remote: ms03-vio1(1)/104 c050760bd4280002,c050760bd4280003
20 No fc/client 1 remote: ms03-vio2(2)/104 c050760bd4280000,c050760bd4280001
$
Ein virtueller Ethernet Adapter ist am Adapter-Typ eth (Spalte ADAPTER_TYPE) zu erkennen. In unserem Falle befindet sich im virtuellen Slot 5 ein virtueller Ethernet Adapter.
Sollte die von Ihnen ausgewählte LPAR keinen virtuellen Ethernet Adapter besitzen, so wählen Sie eine andere LPAR aus.
Hinweis: Sollten Sie keine LPAR mit einem virtuellen Ethernet Adapter finden, dann probieren Sie das Kommando „lpar lseth“ aus. Es zeigt sämtliche virtuellen Ethernet Adapter von sämtlichen LPARs an. Sollten hier keine LPARs aufgelistet werden, dann wird in Ihrer Umgebung kein virtuelles Ethernet verwendet. Sie sollten sich dann vielleicht den Abschnitt zu SR-IOV oder vNICs anschauen.
In der Spalte DATA finden sich weitere Informationen zu dem virtuellen Ethernet Adapter. Unser Adapter hat beispielsweise die PVID (Port-VLAN-ID) 16 und besitzt keine weiteren VLANs. Wie bei einem physikalischen Ethernet Adapter ist auch ein virtueller Ethernet Adapter an einen Ethernet Switch angeschlossen. Dieser Switch ist ein virtueller Ethernet Switch, den der POWER Hypervisor bereit stellt. In unserem Falle hat dieser den Namen ETHMGMT. Als letztes ist noch die MAC-Adresse des virtuellen Ethernet Adapters angegeben.
Lassen Sie sich den Namen des zugehörigen Managed Systems für Ihre LPAR anzeigen, indem Sie das Kommando „lpar show“ mit dem Namen Ihrer LPAR starten:
$ lpar show aixe01
NAME ID SERIAL LPAR_ENV MS HMCS
aixe01 4 67165A05 aixlinux ms03 hmc01,hmc02
$
Das zugehörige Managed System ist in unserem Falle ms03 (Spalte MS).
Jedes Managed System besitzt immer einen virtuellen Ethernet Switch mit dem Namen ETHERNET0. Der Administrator kann weitere virtuelle Ethernet Switches nach Bedarf anlegen. Mit dem Kommando „ms lsvswitch“ lassen sich die verfügbaren virtuellen Ethernet Switches anzeigen.
Lassen Sie sich für Ihr Managed System die existierenden virtuellen Ethernet Switches anzeigen:
$ ms lsvswitch ms03
NAME VSWITCH SWITCH_MODE VLAN_IDS
ms03 ETHCUST1 VEB 1,2,110,139
ms03 ETHTSM VEB none
ms03 ETHERNET0(Default) VEB 1,2,3,208,350,351
ms03 ETHCUST2 VEB 1,2,3,99,100,292
ms03 ETHMGMT VEB 1,2,3,4,5,16,17,18,19
ms03 ETHCTRL VEB 1,2,3,5,6
ms03 ETHCUST3 VEB 1,165
$
In unserem Fall gibt es neben dem Default Switch ETHERNET0 noch 6 weitere virtuelle Ethernet Switches. Für jeden dieser virtuellen Ethernet Switches ist in der letzten Spalte aufgeführt welche VLANs von dem virtuellen Switch unterstützt werden.
Bei dem Kommando „lpar lsvslot“ kann nur eine LPAR angegeben werden. Verwenden Sie einmal die Option „-v“ (verbose-only) bei diesem Kommando:
$ lpar -v lsvslot aixe01
hmc01: lshwres -r virtualio --rsubtype eth --level lpar -m ms03 --filter lpar_names=aixe01
hmc01: lshwres -r virtualio --rsubtype fc --level lpar -m ms03 --filter lpar_names=aixe01
hmc01: lshwres -r virtualio --rsubtype scsi --level lpar -m ms03 --filter lpar_names=aixe01
hmc01: lshwres -r virtualio --rsubtype serial --level lpar -m ms03 --filter lpar_names=aixe01
hmc01: lssyscfg -r sys -m ms03 -F capabilities
hmc01: lshwres -r virtualio --rsubtype vnic --level lpar -m ms03 --filter lpar_names=aixe01
$
Da das Kommando alle verfügbaren Arten von virtuellen Adaptern unterstützt und anzeigt, müssen auf der HMC mehrere Kommandos ausgeführt werden. Für jede Adapter-Typ gibt es ein eigenes Kommando auf den HMCs um Informationen zu diesem Adapter-Typ anzuzeigen. Um sich auf einer HMC alle virtuellen Adapter einer LPAR auflisten zu lassen, müssten Sie die oben aufgelisteten (sehr langen) Kommandos verwenden. Das Kommando „lpar lsvslot“ ist da deutlich einfacher in der Benutzung und auch mit weniger Tipp-Arbeit verbunden.
Ist man nur an virtuellen Ethernet Adaptern interessiert, kann man anstelle von „lpar lsvslot“ das Kommando „lpar lseth“ verwenden. Probieren Sie dies für Ihre LPAR von oben aus:
$ lpar lseth aixe01
LPAR_NAME SLOT REQ STATE TRUNK IEEE QOS MAC_ADDR PVID VSWITCH ADDL_VLAN_IDS
aixe01 5 No 1 - 0 none 87DF85895A05 16 ETHMGMT -
$
Es wird nur der virtuelle Ethernet Adapter angezeigt. Die Informationen sind ansonsten ähnlich zu den schon oben gezeigten.
Lassen Sie sich auch hier auflisten welche Kommandos dazu auf der HMC ausgeführt werden:
$ lpar lseth -v aixe01
hmc01: lshwres -r virtualio --rsubtype eth -m ms03 --level lpar
$
Das ist nur ein Kommando. Außerdem liefert dieses Kommando alle virtuellen Ethernet Adapter auf dem Managed System. Das LPAR-Tool filtert dann die benötigten Adapter aus der Ausgabe heraus. D.h. möchte man alle virtuellen Ethernet Adapter für ein Managed System wissen, macht dies keinen Mehraufwand, es ist weiterhin nur ein Kommando auf der HMC notwendig.
Sie können sich mit dem LPAR-Tool daher auch alle virtuellen Ethernet Adapter aller LPARs auf einem Managed System anzeigen lassen. Verwenden Sie dazu die Option „-m“ bei „lpar lseth“ und geben den Namen des Managed Systems an. Probieren Sie das für Ihr Managed System aus:
$ lpar -m ms03 lseth
LPAR_NAME SLOT REQ STATE TRUNK IEEE QOS MAC_ADDR PVID VSWITCH ADDL_VLAN_IDS
aixdbe01 5 No 1 - 0 none 87DF85895A09 16 ETHMGMT -
aixdbe02 5 No 1 - 0 none 87DF85895A07 16 ETHMGMT -
aixdbt11 6 No 1 - 0 none 87DF85895A06 23 ETHMGMT -
aixe01 5 No 1 - 0 none 87DF85895A05 16 ETHMGMT -
aixe02 5 No 1 - 0 none 87DF85895A04 16 ETHMGMT -
…
$
Das Kommando “lpar lseth” unterstützt aber auch die direkte Angabe von beliebig vielen LPARs. Wird keine LPAR angegeben, dann sind damit automatisch alle LPARs gemeint.
Starten Sie das Kommando „lpar lseth“ ohne Argumente, um sich für alle Ihre LPARs alle virtuellen Ethernet Adapter auflisten zu lassen. Verwenden Sie dabei das Kommando time um die Dauer von „lpar lseth“ zu messen:
$ time lpar lseth
LPAR_NAME SLOT REQ STATE TRUNK IEEE QOS MAC_ADDR PVID VSWITCH ADDL_VLAN_IDS
cust1appl31 31 No 1 - 0 none 217EB2059E1F 140 ETHCUST1 -
cust1appl32 31 No 1 - 0 none 217EB2068E07 140 ETHCUST1 -
cust1db51 31 No 1 - 0 none 217EB2059E04 140 ETHCUST1 -
cust1db52 31 No 1 - 0 none 217EB2068E1F 140 ETHCUST1 -
cust1db53 5 No 1 - 0 none 217EB2059E05 140 ETHCUST1 -
…
real 0m7.134s
user 0m2.546s
sys 0m0.813s
$
Hinweis: Das wird in einer der nächsten Versionen durch Parallelisierung noch schneller gehen!
In unserem Fall wurden innerhalb von ca. 7 Sekunden alle virtuellen Ethernet Adapter von ca. 500 LPARs ermittelt (ca 2300 virtuelle Ethernet Adapter). Damit lässt sich beispielsweise innerhalb von 7 Sekunden herausfinden welche der 500 LPARs zu einer bestimmten MAC-Adresse gehört:
$ lpar lseth | grep -i 895bed308106
cust2tsm1 6 No 1 - 0 0 895BED308106 179 ETHCUST2 -
$
Hinweis: Die Suche mit Hilfe von Selektionen (Optionen „-s“ und „-S“) ermöglicht auch viel komplexere Suchen.
Möchte man wissen was es sonst noch an Subkommandos rund um das Thema virtuelles Ethernet gibt, kann man sich diese mittels „lpar help eth“ anzeigen lassen:
$ lpar help eth
USAGE: lpar [<option> ...] <keyword> [<option> ...] [<argument> ...]
Recognized keywords for topic 'eth' are:
[-h <hmc>] [-m <ms>] [-p <profile>] addeth [-d] [-f] [-i] [-I] [-l <detail_level>] [-q <qos_priority>] [-r] [-s <vswitch>] [-t <trunk_priority>] [-w <wait_time>] [-v] <lpar> <slot> <port_vlan_id>|<attributes> [<addl_vlan_ids>|<attributes> ...]
[-h <hmc>] [-m <ms>] [-p <profile>] addvlan [-d] [-f] [-l <detail_level>] [-w <wait_time>] [-v] <lpar> <slot> <vlan_id>[,<vlan_id>...] ...
[-h <hmc>] [-m <ms>] [-p <profile>] cheth [-d] [-f] [-i] [-I] [-l <detail_level>] [-q <qos_priority>] [-r] [-R] [-s <vswitch>] [-t <trunk_priority>] [-w <wait_time>] [-v] <lpar> <slot> [<attributes> ...]
[-h <hmc>] [-m <ms>] disableeth [-v] <lpar> <slot>
[-h <hmc>] [-m <ms>] enableeth [-v] <lpar> <slot>
[-h <hmc>] [-m <ms>] [-p <profile>] lseth [{-o <format>|-f|-j|-y}] [-F <fields>] [-s <selections>] [-v] [<lpar> ...]
[-h <hmc>] [-m <ms>] [-p <profile>] lsvslot [{-o <format>|-f|-j|-y}] [-t <type>] [-F <fields>] [-s <selections>] [-v] <lpar>
[-h <hmc>] [-m <ms>] [-p <profile>] rmeth [-d] [-f] [-l <detail_level>] [-w <wait_time>] [-v] <lpar> <slot>
[-h <hmc>] [-m <ms>] [-p <profile>] rmvlan [-d] [-f] [-l <detail_level>] [-w <wait_time>] [-v] <lpar> <slot> <vlan_id>[,<vlan_id>...] ...
$
Es lassen sich also auch virtuelle Ethernet Adapter anlegen, ändern und löschen! Wir haben uns in diesem Tutorial aber ganz bewusst auf lesende Operationen beschränkt, damit der Leser des Tutorials die gezeigten Operationen gefahrlos ausprobieren kann.
Im nachfolgenden Abschnitt schauen wir uns den Weg der Netzwerk-Pakete vom virtuellen Ethernet Switch zum physikalischen Ethernet Adapter an.