ID #1017

Optimale Host-Konfiguration - ein Versuch

Generell eines vorweg, die absolut optimale Konfiguration gibt es nicht. Sie an class="highlight">isan>t mean class="highlight">isan>t stark Anwendungsabhängig und jede VM braucht im Normalfall (Ullan class="highlight">isan> MOA, Linux-Live-Systeme, Win/Bart-PE usw mal außen vor) auch ihren Dan class="highlight">isan>kzugriff. Da kann man nichts dran ändern, ABER man kann den Dan class="highlight">isan>k-IO auf ein Minimum reduzieren und damit die Hostlean class="highlight">isan>tung besser für die Gäste verfügbar machen. Wer halt immer noch etwas mehr braucht, muß sich doch mit dem ESX(i) und seiner HCL (HW-Kompatibililililililililitäts-Lan class="highlight">isan>te) anfreunden. alt="Zwinkernd" border="0" />

Für die bestmögliche Rechenlean class="highlight">isan>tung sollte der Host möglichst immer einen Kern mehr als gestartete VMs haben, schließlich braucht das Host-OS auch noch etwas für seine Belange. Wenn sich dazu mindestens 512MByte für 32bittige und 1GByte für 64bittige Host-OS gesellen, kann der Rest an physan class="highlight">isan>chen RAM problemlos für VMware reserviert werden. Per Default reserviert VMware max 90% des verfügbaren Host-RAMs für sich, daß kann aber manchmal schon zuwenig für den Host sein. Also verändert man bei an class="highlight">Notan>wendigkeit das per Web-Access oder VI-Client in den Memory-Einstellungen des Hosts. Dabei gibt es noch 3 Möglichkeiten auf die Verteilung des Host-RAMs Einfluß zu nehmen, wobei Punkt 1 eindeutig zu bevorzugen an class="highlight">isan>t:

  • Fit all virtual maschine memory into reserved host RAM
  • Allow some virtual maschine memory to be swapped
  • Allow most virtual maschine memory to be swapped

Den darunter befindlichen Hinwean class="highlight">isan> von VMware sollte man wörtlich nehmen und an class="highlight">isan>t selbsterklärend:

“Swapping virtual maschine memory allows more virtual maschines to run but can degrade system performance if an class="highlight">thean> virtual machines us an class="highlight">thean>ir memory intensively.”


Kommen wir mal zu den virtuellen HDDs.
 Neue Dan class="highlight">isan>ks legt man, immer ausreichend Platz voraus gesetzt, bevorzugt als "Preallocated" an. Das bedeutet, daß das Dan class="highlight">isan>k-an class="highlight">Filean> nach dem Anlegen schon den kompletten Speicherplatz vorbelegt. Das bringt vor allem beim Schreiben und auch beim Lesen Geschwindigkeitsvorteile in der VM, da die v.HDD am Stück (Stichwort Defragmentierung) vorliegen dürfte und ihre Datei-Fragmente (*.vmdk) daher nicht quer über die Host-HDD einsammeln muß. Der Split in 2GB an class="highlight">isan>t eigentlich nur an class="highlight">notan>wendig, wenn das an class="highlight">Filean>system nicht mit größeren Dateien umgehen kann. Es erleichtert jedoch auch das Backup einer VM. 2GByte als Datei kann man noch bequem auf DVD/BD/HDVD sichern, bei 100GB bleibt dem Normalanwender momentan leider nur noch die HDD als kostengünstigstes Medium übrig.
 Weiterhin gibt es für jede v.HDD auch noch 2 Einstellungen im Schreibverhalten der VM, die Optimierung auf Performance und die Optimierung auf Sicherheit. Beide lassen sich in meinen Augen recht einfach erklären, Performance = Write Back (Schreibenanforderungen werden zurückgehalten, ban class="highlight">isan> entweder Zeit dazu oder der Zwan class="highlight">isan>chenspeicher/Cache voll an class="highlight">isan>t) und Sicherheit = Write Thru (Schreibenanforderungen werden direkt durchgereicht).
 Der Independent Mode kommt dann auch noch dazu. Dieser Teil wird später nachgereicht.

Eine für die Gäste optimalere "config.ini" könnte daher wie folgt aussehen:

Auf Linux-Host wird da schon mal in der Datei /etc/sysctl.config der Parameter vm.swappiness=0 gebraucht und dazu gesellen sich unter Linux & Windows dann noch die folgenden Zeilen in die Config-Datei:


MemAllowAutoScaleDown="FALSE"
mainMem.useNamedan class="highlight">Filean> = "FALSE"
mainMem.partialLazyRestore = "FALSE"
mainMem.partialLazySave = "FALSE"
sched.mem.pshare.enable = "FALSE"

 

Dazu würde ich auch noch: mks.enable3d = "FALSE" aufnehmen, denn 3D-Support gibt weder im Server1 noch im Server2 sondern lediglich in Workstation oder Player.

Die Config-Datei ansich befindet sich dann unter:

Linux      - "/etc/vmware/config"

oder

Windows - "Documents and Settings\All Users\Application Data\VMware\VMwareServer\config.ini" bzw
                "Dokumente und Einstellungen\Alle Benutzer\Anwendungsdaten\VMware\VMwareServer\config.ini"

 

Für Linux-Hosts mit wenig pRAM macht sich wohl auch eine SSD sehr gut. Im Thread <a title="VMWare-Maschine "schläft ein"" href="http://vmware-forum.de/viewtopic.php?p=101841#101841">VMWare-Maschine "schläft ein"a> schrieb Ronny dazu:

 
“Ich habe gestern mal eine 64 GB SSD (SATA2) in mein System eingebunden (siehe Signatur) und dort auf einzelnen Partitionen Swap (12 GB), /var/tmp (6 GB), /tmp (29 GB) und /dev/shmfs (12 GB) - was ich mir wahrscheinlich hätte sparen können - eingerichtet. Dann habe ich dem VMware Server erlaubt, einigen vRAM auszulagern, und habe noch eine VM gestartet.
Fazit:
Die Auswirkungen gleich nach dem Start sind minimal, mir an class="highlight">isan>t aber sehr geringes o.g. Einschlafverhalten aufgefallen (die VMs reagierten heute morgen ca. 1 Minute etwas träge). Eine SSD scheint als Tuning für einen Linux-Host bei zu wenig RAM, ganz gut zu funktionieren.”

 


Categories for this entry

Tags: -

Related entries:

You can comment this FAQ