cat-hyper-v

Hyper-V, Pagefile und der Automatic Memory Dump

HYPER-V

Wie gross muss das Pagefile bei Hyper-V sein? Eine Frage welche noch immer wieder gerne gestellt wird. In einem früheren Artikel wurde bereits darauf eingegangen und empfohlen, dass für Windows Server 2012 die Option “Automatically manage paging file size for all drives” gewählt werden sollte. Doch was wenn das Pagefile nun doch zu gross wird?

Bevor nun manuell eingegriffen wird, sollte der Frage nachgegangen werden wieso es zu diesem Datenwachstum gekommen ist. Als Erstes sollte sichergestellt werden, dass keine andere Dienste oder Applikationen als Hyper-V (und unterstützende Dienste, Managment Agents) installiert sind und entsprechend Memory konsumieren. Kann dies ausgeschlossen werden drängt sich der Verdacht auf, dass der Hyper-V Hosts in den vergangenen (4) Wochen einen Crash hatte. Da die in Windows Server 2012 (und Windows 8) eingeführte Funktion “Automatic Memory Dump” per Default aktiviert ist, wurde automatisch die Grösse des Pagefile angepasst um einen Crash Dump anzulegen.

Automatic Memory Dump optimiert das Verhalten des “System Managed” Pagefile, welche zum Beispiel für Hyper-V empfohlen wird. Das “System Managed” Pagefile wurde übrigens in Windows Server 2012 soweit optimiert, dass weniger Speicherplatz benötigt wird. Es handelt sich dabei allerdings nicht um eine neue Funktion, es dreht sich weiterhin um die bereits bekannten Optionen Mini, Kernel, und Complete Memory Dump. Mit Automatic wird jeweils ein Kernel Memory Dump erstellt. Die Einstellung erfolgt unter “Control Panel ⇒ System ⇒ Advanced System Settings ⇒ Advanced”:

Configure Automatic Kernel Mode

Oder auch in der Registry unter:

Key: HKLM\System\CurrentControlSet\Control\CrashControl
Entry: CrashDumpEnabled
Type: DWORD

Folgende Optionen stehen für “CrashDumpEnabled” zur Verfügung:

Option Value
Complete Memory Dump 0x1
Kernel Memory Dump 0x2
Small Memory Dump 0x3
Automatic Memory Dump 0x7

Ein Host mit einem “System Managed” Pagefile und einem “Automatic Memory Dump” sollte eine minimale Pagefile Grösse sollte gross genug sein um in der Regel ein Kernel Dump zu erstellen. Da die “Minimum Size” in manchen Fällen nicht ausreicht, gibt es eine Option die Pagefile Grösse anzupassen. Ob der Host ein Crash hatte wird in der Registry festgehalten

Key: HKLM\System\CurrentControlSet\Control\CrashControl
Entry: LastCrashTime
Type: QWORD

Das heisst, für die nächsten vier (4) Wochen nach dem Crash wird ein System Managed Pagefile eine minimale Grösse haben, welche der Grösse des physikalischen Memory entspricht um ein Kernel Memory Dump erstellen zu können. Von einem Host mit 16 GB Memory lässt sich folgendes Beispiel ableiten:

Normal Bug Check

Wieso also nicht gleich “Kernel Memory Dump” selektieren? Ein Vorteil von Automatic ist, dass der SMSS Prozess die Grösse des Pagefile nach den vier Wochen wieder reduzieren kann. Läuft das System für vier (4) Wochen stabil, wird die Pagefile Grösse automatisch wieder reduziert. Bei “Kernel Memory Dump” bleibt das Pagefile immer gross.

Wurde der Fehler behoben, kann das Pagefile mittels Eingriff in der Registry auch vorher wieder auf die minimale Grösse reduziert werden. Dazu muss lediglich der Eintrag “LastCrashTime” entfernt oder umbenannt werden.

Um nochmals auf den Crash zurückzukommen. Es sollte regelmässig geprüft werden, ob allenfalls wichtige Hotfixes für Hyper-V oder Failover Cluster fehlen und installiert werden müssen.

Weitere Informationen

Hyper-V , Windows Server 2012

, , , ,

About the Author

Michel Luescher is a solution architect in the worldwide Datacenter & Cloud Infrastructure Center of Excellence (CoE) at Microsoft Corporation based out of Zurich, Switzerland. Primarily, Michel is focused on hybrid cloud solutions (Hyper-V, System Center and Microsoft Azure). In addition Michel is speaker, blogger and author of several books.

Leave a Reply.

This site uses Akismet to reduce spam. Learn how your comment data is processed.

Windows Server and System Center 2012 R2 Preview verfügbar Der Hyper-V Replica Capacity Planner