6.1. Dedizierter Speicher

Eine LPAR kann entweder mit dediziertem Speicher oder geteiltem Speicher betrieben werden, aber nicht beides gleichzeitig. Wird dedizierter Speicher verwendet, dann steht dieser ausschließlich einer LPAR zur Verfügung und kann nicht von anderen LPARs verwendet werden.

Beim Zuweisen von dediziertem Speicher werden jeweils physikalische Speicherbereiche zugewiesen. Die Größe eines solchen physikalischen Speicherbereichs muß ein Vielfaches der sogenannten Logical Memory Block (LMB) Größe sein. Die LMB-Größe wird durch das Managed System vorgegeben und kann mit dem Kommando „ms lsmem“ (list memory resources) angezeigt werden. Ohne weitere Argumente werden alle vorhandenen Managed Systems aufgelistet:

$ ms lsmem
NAME     INSTALLED  FIRMWARE  CONFIGURABLE  AVAIL   MEM_REGION_SIZE
ms01     524288     6656      524288        498176  256
ms03     524288     14848     524288        26112   256
ms04     524288     12544     524288        61184   256
ms05     1048576    27392     1048576       81664   256
ms06     1048576    25600     1048576       0       256
ms07     2097152    43776     2097152       859392  256
ms08     2097152    50176     2097152       740352  256
$

Die LMB-Größe eines Managed Systems kann in der Spalte MEM_REGION_SIZE abgelesen werden, die Angabe ist in MB.

In Bild 6.1 ist die Zuordnung des Hauptspeichers einiger LPARs zum physikalischen Speicher des Managed Systems gezeigt. Der Hauptspeicher einer LPAR kann sich ohne weiteres aus mehreren physikalischen Speicherbereichen zusammen setzen!

Dedicated memory of some LPARs
Bild 6.1: Dedizierter Speicher einiger LPARs

Beim Erzeugen einer neuen LPAR kann durch Angabe des Attributs mem_mode angegeben werden, ob dedizierter Speicher verwendet werden sollen, oder geteilter Speicher (AMS):

mem_mode : memory sharing mode
ded - dedicated memory
shared - shared memory

Eine neue LPAR kann mit dem Kommando „lpar create“ erzeugt werden. Standardmäßig werden LPARs mit dediziertem Speicher angelegt:

$ lpar -m ms02 create lpar3
.
    > lpar3
$

Die Option „-m“ mit dem Ziel Managed System, muss zwingend angegeben werden, sie legt fest auf welchem der Managed Systems die LPAR angelegt werden soll. Der LPAR-Name, hier lpar3, ist optional. Wird kein Name angegeben, generiert das LPAR-Tool einen eindeutigen Namen.
Eine neu erzeugte LPAR ist zunächst nicht aktiviert. Der größere Teil der LPAR-Konfiguration ist in einem Profil abgelegt, das beim Erzeugen der LPAR angelegt wird. Per Default wird der Name standard für das Profil verwendet, es lässt sich aber auch ein anderer Default hinterlegen. Ein Blick in das Profil standard zeigt das die LPAR mit 1024 MB dediziertem Speicher (Spalte MEMORY DESIRED) konfiguriert wurde:

$ lpar -p standard lsmem lpar3
            MEMORY          MEMORY             HUGE_PAGES    
LPAR_NAME  MODE  AME  MIN   DESIRED  MAX   MIN   DESIRED  MAX
lpar3      ded   0.0  1024  1024     1024  null  null     null
$

Soll eine LPAR mehr als 1024 MB Speicher bekommen, dann kann die gewünschte Speichergröße über das Attribut desired_mem angegeben werden:

$ lpar create -m ms02 lpar4 desired_mem=4096
    > lpar4
$

Die angegebene Speichergröße muß dabei ein ganzzahliges Vielfaches der LMB-Größe sein. Im Profil standard der LPAR lpar4 ist jetzt 4096 MB als desired (gewünscht) hinterlegt:

$ lpar -p standard lsmem lpar4
            MEMORY          MEMORY             HUGE_PAGES    
LPAR_NAME  MODE  AME  MIN   DESIRED  MAX   MIN   DESIRED  MAX
lpar4      ded   0.0  1024  4096     4096  null  null     null
$

Neben dem Attribut desired_mem für die gewünschte Speichergröße, gibt es noch 2 weitere Attribute und zwar min_mem und max_mem. Genauso, wie desired_mem, können auch diese Attribute auf der Kommandozeile beim Erzeugen einer LPAR angegeben werden. Der Wert von min_mem muss kleiner oder gleich dem Wert desired_mem sein, welcher wiederum kleiner oder gleich dem Wert max_mem sein muss:

min_mem <= desired_mem <= max_mem

Der Wert von min_mem kommt mindestens in den folgenden beiden Situationen zum tragen:

    • Eine LPAR wird aktiviert, es steht aber nicht soviel physikalischer Hauptspeicher wie über desired_mem gefordert zur Verfügung. In diesem Fall reduziert PowerVM die Speichergröße, welche der LPAR zugewiesen wird, auf einen kleineren Wert. Allerdings darf dabei der Wert von min_mem nicht unterschritten werden.
    • Bei einer aktiven LPAR mit laufendem Betriebssystem kann dynamisch Speicher hinzugefügt oder weggenommen werden, ohne das Betriebssystem oder Applikationen stoppen zu müssen. Dabei kann die Hauptspeichergröße maximal auf den Wert von max_mem erhöht werden bzw. höchstens auf den Wert von min_mem reduziert werden.

Der Wert von max_mem wird, wie gerade beschrieben, bei der dynamischen Erhöhung des Hauptspeichers berücksichtigt.

Dies ist analog zu den Attributen min_procs, desired_procs und max_procs bei Prozessoren.

Welche Attribute angegeben werden können und welche möglichen Werte diese Attribute haben, kann in der Online Hilfe nachgeschaut werden:

$ lpar help create
USAGE:
lpar [-h <hmc>] [-m <ms>] [-p <profile>] create [{-b <blueprint>|-s <source_lpar>}] [-v] [<lpar>] [<attributes> ...]

DESCRIPTION

Create a new LPAR on a managed system.

-b : blueprint to use for creation'
-s : source LPAR to use as blueprint'

Valid attributes:
name : name for the LPAR
lpar_id : the ID of the LPAR
profile_name : name of the default profile
lpar_env : type of LPAR
aixlinux - AIX or Linux (default)
os400 - IBM i
vioserver - virtual I/O server
min_mem : minimum amount of memory in MB
desired_mem : desired amount of memory in MB
max_mem : maximum amount of memory in MB
mem_expansion : Active Memory Expansion
0 - disable AME
1.00-10.00 - expansion factor

$