Systemverwaltete Auslagerungsdatei / virtueller Speicher unzureichend

BridaX

Captain
Registriert
Jan. 2009
Beiträge
3.847
Moin,

ich stolpere in unserer Umgebung des Öfteren über Serverbetriebssysteme, bei denen augenscheinlich der virtuelle Speicher unzureichend ist.

1714139374057.png


Bei uns werden Serverbetriebssysteme grundlegend von unseren VMware Administratoren ausgerollt. Die Pagefile wird auf ein separates Laufwerk ausgelagert und vom System verwaltet. In der Regel beträgt die Größe des Laufwerks dem 1 - 1,5 fachen des Arbeitsspeichers.

1714139678689.png


1714139683040.png


Meiner Einschätzung nach scheint sich Windows aber nicht der gesamten Größe des verfügbaren Speicherplatzes zu bedienen. Als die Meldung (Ereignis 2004: unzureichender virtueller Speicher) getriggert wurde, war das Auslagerungs-Laufwerk nur zu ~20% belegt.

Beispielsweise habe ich eben erst einen Server 2019 STD wieder zum laufen gebracht, der sich geweigert hat, das letzte kumulative Windows Update zu installieren. Auch ist dort der Apache Tomcat wegen eines "unerwarteten Fehlers" schon häufiger abgestürzt, zuletzt ziemlich genau nach der System-Warnung (Ereignis ID 2004).

Das Update ließ sich installieren, indem man den Tomcat-Dienst heruntergefahren hat, was die notwendigen Systemressourcen (bzw. genug virtuellen Speicher) freigegeben hat. Zudem wurde das Auslagerungs-Laufwerk von 6G auf 10GB angehoben. Seitdem keine Abstürze mehr.

Nun könnte man noch eine benutzerdefinierte Größe für die Auslagerungsdatei definieren - aber ich wäre auch davon ausgegangen, dass wenn 6GB zur Verfügung stehen, sich Windows diesen Platz auch nimmt - sofern benötigt?!

Habt ihr eine Idee/Erklärung?

Beste Grüße
 
Zuletzt bearbeitet:
Ich bin jetzt nicht mit Servern gewandert aber warum ist die Auslagerung nicht einfach Systemverwaltet auf C?

Ich habe mal am Spiele Rechner mit der Auslagerungsdatei herumprobiert...ganz klein fest gesetzt, auf extra Laufwerk gelegt, auf Ramdisk gelegt usw....alle typischen Optimierungstipps halt.

Und bei mir habe ich nicht eine messbare Verbesserung finden können. Aber jedes mal wenn ich die Größe fest definiert habe(auch bei 1,5 fach vom RAM und nicht ansatzweise ausgenutzt), hatte ich zufällige Instabilitäten.

Muss sicherlich nicht auftreten, aber es waren vor allem manche Programme, die einfach immer etwas der Auslagerungsdatei reservieren und die dann Probleme hatten wenn diese nicht dynamisch und auf C lag.
 
Auslagerungsdatei wir maßgeblich durch Kernel Fehler Abbild bestimmt, den du in System Eigenschaft einstellen kannst....
wähle vollständig und wundere dich wie groß Auslagerungsdatei wird.
 
Bei uns hat mans so eingerichtet, exemplarisch einer von 12 Anmeldeservern im Bild. Ob das ein Vorteil ist, weiß ich nicht. Zu Hause hab ich da nie was geändert.

1714142786058.png
 
  • Gefällt mir
Reaktionen: BridaX
Baal Netbeck schrieb:
Und bei mir habe ich nicht eine messbare Verbesserung finden können.
Man verändert die Werte bei Servern aus verschiedenen Gründen, zum Beispiel um nicht die Bandbreite von Volumes die auf irgendeinem SAN liegen, für blödsinnige Speicherauslagerung zu verschwenden. Ein zweiter Punkt ist natürlich die Sicherung, geschieht die auf VM Ebene inkrementell, will man nicht gigabyteweise Leerdaten sichern.
 
  • Gefällt mir
Reaktionen: iron_monkey, Baal Netbeck und BridaX
Auslagerungsdatei mag keine Fragmentierung etc. und braucht große freie Blöcke. Und ja solche Probleme bekommt man auch mit einer SSD auf einer kleinen Partition. Warum nicht einfach auf C: lassen, die Partionen sind sowieso sinnlos klein.
 
  • Gefällt mir
Reaktionen: qiller
RAM erhöhen, P mindestens verdoppeln und wieso steht da überhaupt der Servermanager in der Warning? Meldet ihr euch nicht richtig von euren Servern ab und lasst die Sitzung offen?
 
xexex schrieb:
Keine Ahnung wer sich das bei euch so ausgedacht hat, wenn du eine bestimmte Größe haben willst, dann solltest du diese auch angeben, für "systemverwaltet" gilt diese Regel:
Anhang anzeigen 1477834
https://learn.microsoft.com/en-us/t...page-file-size-for-64-bit-versions-of-windows

Danke dir! Das bestätigt so ziemlich mein Beobachtung. Über der Tabelle heißt es "The following table lists the minimum and maximum page file sizes of system-managed page files in Windows 10 and Windows 11". Schließt das nun Serverbetriebssysteme ab S2016 mit ein? Ich nehme mal an...

Ich werde mal an meine Kollegen herantreten.

EDIT: Ergänzend dazu

"System-managed page files automatically grow up to three times the physical memory or 4 GB (whichever is larger, but no more than one-eighth of the volume size) when the system commit charge reaches 90 percent of the system commit limit. This assumes that enough free disk space is available to accommodate the growth."

https://learn.microsoft.com/en-us/t...ent/performance/introduction-to-the-page-file

xexex schrieb:
Man verändert die Werte bei Servern aus verschiedenen Gründen, zum Beispiel um nicht die Bandbreite von Volumes die auf irgendeinem SAN liegen, für blödsinnige Speicherauslagerung zu verschwenden. Ein zweiter Punkt ist natürlich die Sicherung, geschieht die auf VM Ebene inkrementell, will man nicht gigabyteweise Leerdaten sichern.

Das sind die Hauptpunkte. Sicherung ganz vorne.

Auch doof für's Monitoring, wenn ständig Warnschwellen getriggert werden, weil sich beispielsweise das C:\ Laufwerk wegen der Pagefile aufbläht.
 
  • Gefällt mir
Reaktionen: qiller
@dms RAM ist genug da, der virtuelle Speicher (war) das Problem.
 
seit vielen jahren stelle ich die pagefile immer fix auf 4 oder 8gb auf c: ein. ganz egal was der server an ram hat.
die dynamische anpassung der größe war früher ein problem und hat zu vielerlei phänomen und performanceeinbrüchen geführt.
seither habe ich damit keinerlei probleme mehr.
 
  • Gefällt mir
Reaktionen: BridaX
Joar 1/8 von 10GB sind halt nur 1.25GB Swapfile, bisschen wenig.
 
  • Gefällt mir
Reaktionen: BridaX
Zurück
Oben