LPAR-Tool: welche LPARs haben keine RMC-Verbindung

Status und Konfiguration von LPARs sind regelmäßig benötigte Informationen bei der Administration von LPARs. Mit dem LPAR-Tool lassen sich Informationen wie Status, RMC-Status, Anzahl Cores, Größe RAM, OS-Version und andere Daten, sehr leicht und schnell ermitteln, auch bei hunderten oder tausenden von LPARs. Welche LPARs keine RMC-Verbindung haben, wird in einem der Beispiele gezeigt.

Alle folgenden Beispiele wurden auf einer Umgebung mit 10 HMCs, 50 Managed Systems und etwas über 500 LPARs durchgeführt. Zur Orientierung wie lange das LPAR-Tool benötigt, wurden jeweils die Laufzeiten der Kommandos mit time gemessen und angegeben.

Die Namen der LPARs wurden in den gezeigten Ausgaben manuell abgeändert und durch generische Namen lparXX und aixYY ersetzt.

Zunächst einmal der Status einer einzelnen LPAR:

$ time lpar status aix01
NAME   LPAR_ID  LPAR_ENV   STATE     PROFILE    SYNC  RMC       PROCS  PROC_UNITS  MEM     OS_VERSION
aix01  27       aixlinux   Running   standard   0     active    1      0.1         8192    AIX 7.1 7100-04-02-1614

real    0m0.210s
user    0m0.011s
sys     0m0.013s
$

Natürlich kann man auch mehrere LPARs angeben. Möchte man den Status aller LPARs (in unserem Falle etwas über 500 LPARs) wissen, läßt man einfach das Argument weg:

$ time lpar status
NAME    LPAR_ID  LPAR_ENV   STATE     PROFILE      SYNC  RMC       PROCS  PROC_UNITS  MEM     OS_VERSION
aix01   27       aixlinux   Running   standard     0     active    1      0.1         8192    AIX 7.1 7100-04-02-1614
aix02   1        aixlinux   Running   standard     -     -         1      -           8320    Unknown
...
lpar01  6        aixlinux   Running   standard     0     active    1      0.4         20480   AIX 7.1 7100-04-05-1720

real	0m18.933s
user	0m3.819s
sys	0m3.789s
$

Hierbei werden im Hintergrund vom LPAR-Tool mehr als 150 Kommandos (lshwres und lssyscfg) auf den HMCs abgesetzt!

Die Ausgabe soll jetzt eingeschränkt werden auf LPARs die gerade aktiv sind (state=Running). Hierzu gibt es die Option „-s„, mit der Kriterien für Attribute angegeben werden können, die erfüllt sein müssen. Nur LPARs die diese Kriterien erfüllen, werden ausgegeben:

$ time lpar status -s state=Running
NAME     LPAR_ID  LPAR_ENV   STATE    PROFILE    SYNC  RMC       PROCS  PROC_UNITS  MEM     OS_VERSION
aix01    27       aixlinux   Running  standard   0     active    1      0.1         8192    AIX 7.1 7100-04-02-1614
aix02    1        aixlinux   Running  standard   -     -         1      -           8320    Unknown
...
lpar01   6        aixlinux   Running  standard   0     active    1      0.4         20480   AIX 7.1 7100-04-05-1720

real	0m17.998s
user	0m3.692s
sys	0m3.647s
$

Wir wollen jetzt wissen, auf welchen dieser LPARs RMC nicht funktioniert/nicht aktiv ist. Die Option „-s“ erlaubt es beliebig viele Kriterien zu kombinieren. Es müssen dann alle angegebenen Kriterien erfüllt sein (logischen UND). Der RMC-Zustand findet sich im Attribut rmc_state:

$ time lpar status -s state=Running,rmc_state!=active
NAME     LPAR_ID  LPAR_ENV   STATE    PROFILE    SYNC  RMC       PROCS  PROC_UNITS  MEM     OS_VERSION
aix02    1        aixlinux   Running  standard   -     -         1      -           8320    Unknown
aix03    2        aixlinux   Running  standard   -     -         1      -           8320    Unknown
...
lpar07   4        aixlinux   Running  standard   0     none      1      1.0         4352    Unknown

real	0m19.057s
user	0m3.550s
sys	0m3.512s
$

Als weiteres Beispiel wollen wir wissen auf welchen LPARs AIX 7.1 TL5 installiert ist. Im Attribut os_version findet sich die OS-Version. Mit dem ‚~‚ Operator kann gegen einen regulären Ausdruck verglichen werden (ähnlich wie beim Kommando grep). Wir verwenden den regulären Ausdruck 7100-05:

$ time lpar status -s os_version~7100-05
NAME     LPAR_ID  LPAR_ENV  STATE    PROFILE    SYNC  RMC       PROCS  PROC_UNITS  MEM     OS_VERSION
aix14    14       aixlinux  Running  standard   0     active    2      0.2         16384   AIX 7.1 7100-05-02-1810
aix16    24       aixlinux  Running  standard   0     active    2      0.2         16384   AIX 7.1 7100-05-03-1846
...
lpar10   10       aixlinux  Running  standard   0     active    3      0.3         32768   AIX 7.1 7100-05-02-1810

real	0m18.212s
user	0m3.726s
sys	0m3.676s
$

Bisher haben wir immer das Default Ausgabeformat verwendet. Jetzt würden wir gerne alle Systeme auflisten, die noch unter AIX 6.1 laufen. Aber dieses Mal soll nur der LPAR-Name und die OS-Version ausgegeben werden. Hierfür gibt es die Option „-F„, mit der die gewünschten Ausgabe-Felder angegeben werden können:

$ time lpar status -s os_version~6100 -F name:os_version
aix39:AIX 6.1 6100-07-04-1216
aix46:AIX 6.1 6100-07-04-1216
...
lpar35:AIX 6.1 6100-09-05-1524

real	0m18.041s
user	0m3.619s
sys	0m3.699s
$

Wer lieber JSON-Output hat, kann dies ganz einfach mit der Option „-j“ erreichen, hier das gleiche Beispiel mit JSON-Ausgabe:

$ time lpar status -s os_version~6100 -F name:os_version -j
{
	"name": "aix39",
	"os_version": "AIX 6.1 6100-07-04-1216"
}
{
	"name": "aix46",
	"os_version": "AIX 6.1 6100-07-04-1216"
}
...
{
	"name": "lpar35",
	"os_version": "AIX 6.1 6100-09-05-1524"
}

real	0m21.247s
user	0m3.670s
sys	0m3.720s
$

Natürlich kann man nicht alle Attribut-Namen auswendig wissen! Das ist aber auch gar nicht notwendig, da man sich alle Attribut-Namen einfach anzeigen lassen kann. Man verwendet die Option „-f“ (Stanza-Format) und gibt eine beliebige LPAR an:

$ lpar status -f lpar19
lpar19:
	curr_lpar_proc_compat_mode = POWER7
	curr_mem = 8192
	curr_proc_mode = shared
	curr_proc_units = 0.3
	curr_procs = 2
	name = lpar19
	os_version = AIX 6.1 6100-09-05-1524
...
$

Über die Optionen „-h“ und „-m“ können die LPARs noch in Abhängigkeit von zugehöriger HMC und/oder Managed System ausgewählt werden.

Status aller LPARs mit zugehöriger HMC hmc01:

$ lpar -h hmc01 status

Status aller LPARs deren zugehörige HMC den Typ 7042-CR6 hat:

$ lpar -h 7042-CR6 status

Status aller LPARs deren zugehörige HMC den Typ 7042-CR6 hat und deren Name mit lpar beginnt:

$ lpar -h 7042-CR6 status lpar*

Status aller LPARs auf dem Managed System ms13:

$ lpar -m ms13 status

Status aller LPARs deren Managed System eine S922 ist:

$ lpar -m 9009-22A status

Die vorgestellten Auswahl- und Ausgabemöglichkeiten gelten für alle Ausgabe-Kommandos des LPAR-Tools (außer dem Kommando vios).

Das LPAR-Tool kann in unserem Download-Bereich heruntergeladen werden: https://powercampus.de/download

Das LPAR-Tool beinhaltet eine Test-Lizenz mit einer Gültigkeit bis zum 31. Oktober.