XenServer

Speicherverbrauch

Zwei Komponenten tragen zum Speicherbedarf des XenServer®-Hosts bei. Erstens der vom Xen-Hypervisor selbst verbrauchte Speicher. Zweitens der von der Kontrolldomäne des Hosts verbrauchte Speicher. Auch bekannt als „Domain0“ oder „dom0“, ist die Kontrolldomäne eine sichere, privilegierte Linux-VM, die den XenServer-Management-Toolstack (XAPI) ausführt. Neben der Bereitstellung von XenServer-Verwaltungsfunktionen führt die Kontrolldomäne auch den Treiber-Stack aus, der von Benutzern erstellten VMs den Zugriff auf physische Geräte ermöglicht.

Speicher der Kontrolldomäne

Die der Kontrolldomäne zugewiesene Speichermenge wird automatisch angepasst und basiert auf der Menge des physischen Speichers auf dem physischen Host. Standardmäßig weist XenServer der Kontrolldomäne 1 GiB plus 5 % des gesamten physischen Speichers zu, bis zu einem anfänglichen Maximum von 8 GiB.

Hinweis:

Der im XenServer-Abschnitt in XenCenter® angegebene Wert umfasst den von der Kontrolldomäne (dom0), dem Xen-Hypervisor selbst und dem Crash-Kernel verwendeten Speicher. Daher kann die in XenCenter angezeigte Speichermenge diese Werte überschreiten. Die vom Hypervisor verwendete Speichermenge ist bei Hosts mit mehr Speicher größer.

Speichermenge der Kontrolldomäne ändern

Sie können die dom0 zugewiesene Speichermenge über XenCenter oder über die Befehlszeile ändern. Wenn Sie die der Kontrolldomäne zugewiesene Speichermenge über den standardmäßig zugewiesenen Wert hinaus erhöhen, steht den VMs weniger Speicher zur Verfügung.

Möglicherweise müssen Sie die der Kontrolldomäne eines XenServer-Hosts zugewiesene Speichermenge in den folgenden Fällen erhöhen:

  • Sie betreiben viele VMs auf dem Host
  • Sie verwenden PVS-Accelerator
  • Sie verwenden Lese-Caching

Wichtig:

Wenn Sie ein GFS2 SR verwenden und einer dieser Fälle auch auf Ihre Umgebung zutrifft, müssen Sie die Speichermenge der Kontrolldomäne erhöhen. Unzureichender Kontrolldomänen-Speicher kann zu Netzwerkinstabilität führen, was Probleme für Cluster-Pools mit GFS2 SRs verursachen kann.

Die der Kontrolldomäne zuzuweisende Speichermenge hängt von Ihrer Umgebung und den Anforderungen Ihrer VMs ab.

Sie können die folgenden Metriken überwachen, um zu beurteilen, ob die Menge des Speichers der Kontrolldomäne für Ihre Umgebung angemessen ist und welche Auswirkungen die von Ihnen vorgenommenen Änderungen haben:

  • Swap-Aktivität: Wenn die Kontrolldomäne swappt, erhöhen Sie den Speicher der Kontrolldomäne.
  • Tapdisk-Modus: Sie können im XenCenter auf der Registerkarte Performance für den Host überwachen, ob sich Ihre Tapdisks im Low-Memory-Modus befinden. Wählen Sie Aktionen > Neues Diagramm und dann das Diagramm Tapdisks im Low-Memory-Modus. Wenn sich eine Tapdisk im Low-Memory-Modus befindet, erhöhen Sie den Speicher der Kontrolldomäne.
  • Pagecache-Druck: Verwenden Sie den Befehl top, um die Metrik buff/cache zu überwachen. Wenn dieser Wert zu niedrig wird, sollten Sie den Speicher der Kontrolldomäne erhöhen.

Ändern des dom0-Speichers mit XenCenter

Informationen zum Ändern des dom0-Speichers mit XenCenter finden Sie unter Ändern des Speichers der Kontrolldomäne in der XenCenter-Dokumentation.

Hinweis:

Sie können XenCenter nicht verwenden, um den dom0-Speicher unter den Wert zu reduzieren, der ursprünglich während der XenServer-Installation festgelegt wurde. Um diese Änderung vorzunehmen, müssen Sie die Befehlszeile verwenden.

Ändern des dom0-Speichers über die Befehlszeile

Hinweis:

Auf Hosts mit weniger Speicher (weniger als 16 GiB) möchten Sie möglicherweise den der Kontrolldomäne zugewiesenen Speicher auf einen Wert unterhalb des Installationsstandardwerts reduzieren. Sie können diese Änderung über die Befehlszeile vornehmen. Wir empfehlen jedoch, den dom0-Speicher nicht unter 1 GiB zu reduzieren und diesen Vorgang unter Anleitung des Support-Teams durchzuführen.

  1. Öffnen Sie auf dem XenServer-Host eine lokale Shell und melden Sie sich als Root an.

  2. Geben Sie Folgendes ein:

    xe host-list uuid=host_uuid params=control-domain-uuid
    xe vm-memory-set uuid=<control domain uuid> memory=<nn>M
    <!--NeedCopy-->
    

    Wobei <nn> die Menge des Speichers in MiB darstellt, die dom0 zugewiesen werden soll.

  3. Starten Sie den XenServer-Host mit XenCenter oder dem Befehl reboot auf der XenServer-Konsole neu.

    Wenn der Host neu startet, führen Sie auf der XenServer-Konsole den Befehl free aus, um die neuen Speichereinstellungen zu überprüfen.

Wie viel Speicher steht VMs zur Verfügung?

Um herauszufinden, wie viel Host-Speicher VMs zugewiesen werden kann, ermitteln Sie den Wert des freien Speichers des Hosts, indem Sie memory-free ausführen. Geben Sie dann den Befehl vm-compute-maximum-memory ein, um die tatsächlich verfügbare Menge an freiem Speicher zu erhalten, die der VM zugewiesen werden kann. Zum Beispiel:

xe host-list uuid=host_uuid params=memory-free
xe vm-compute-maximum-memory vm=vm_name total=host_memory_free_value
<!--NeedCopy-->
Speicherverbrauch