IntelliCache

Hinweis:

Diese Funktion wird nur unterstützt, wenn HASH (0x2c1a078) mit Citrix Virtual Desktops verwendet wird.

Intellicache wird für VMs, die eine GFS2-SR verwenden, nicht unterstützt.

Die Verwendung von HASH (0x2c1a078) mit IntelliCache macht gehostete Virtual Desktop Infrastructure-Bereitstellungen kostengünstiger, da Sie eine Kombination aus freigegebenem Speicher und lokalem Speicher verwenden können. Dies ist von besonderem Vorteil, wenn viele virtuelle Maschinen (VMs) alle gemeinsam ein gemeinsames Betriebssystemabbild nutzen. Die Belastung des Speicher-Arrays wird reduziert und die Leistung wird verbessert. Darüber hinaus wird der Netzwerkverkehr zum und vom freigegebenen Speicher reduziert, wenn der lokale Speicher das Masterimage aus freigegebenem Speicher zwischenspeichert.

IntelliCache arbeitet, indem Daten von einem übergeordneten VDI virtueller Rechner im lokalen Speicher auf dem VM-Host zwischengespeichert werden. Dieser lokale Cache wird dann aufgefüllt, wenn Daten aus dem übergeordneten VDI gelesen werden. Wenn viele VMs eine gemeinsame übergeordnete VDI verwenden, kann eine VM die Daten verwenden, die von einer anderen VM in den Cache gelesen werden. Ein weiterer Zugriff auf das Master-Image auf freigegebenem Speicher ist nicht erforderlich.

Für IntelliCache ist eine Thin Provisioned, lokale SR erforderlich. Thin Provisioning ist eine Möglichkeit, die Nutzung des verfügbaren Speichers zu optimieren. Dieser Ansatz ermöglicht es Ihnen, den lokalen Speicher anstelle des gemeinsam genutzten Speichers stärker zu nutzen. Sie stützt sich auf die On-Demand-Zuweisung von Datenblöcken. Bei anderen Ansätzen werden alle Blöcke vorn zugewiesen.

Wichtig:

Thin Provisioning ändert den lokalen Standardspeichertyp des Hosts von LVM in EXT3. Thin Provisioning muss aktiviert sein , damit das lokale Caching von Citrix Virtual Desktops ordnungsgemäß funktioniert.

Mit Thin Provisioning kann der Administrator den VMs, die mit dem Storage Repository (SR) verbinden, mehr Speicherplatz bereitstellen, als auf der SR verfügbar ist. Es gibt keine Speichergarantien, und die Zuweisung einer LUN beansprucht keine Datenblöcke, bis die VM Daten schreibt.

Achtung:

Thin Provisioned SRs können nicht mehr physischer Speicherplatz verfügbar sein, da die virtuellen Rechner in der Lage sein können, die Festplattenkapazität bei Bedarf zu verbrauchen. IntelliCache-VMs behandeln diese Bedingung, indem sie automatisch auf gemeinsam genutzten Speicher zurückkehren, wenn der lokale SR-Cache voll ist. Mischen Sie keine herkömmlichen virtuellen Maschinen und IntelliCache-VMs auf demselben SR, da IntelliCache-VMs schnell an Größe zunehmen können.

IntelliCache-Bereitstellung

IntelliCache muss entweder während der Hostinstallation aktiviert sein oder manuell auf einem laufenden Host mithilfe der CLI aktiviert werden.

Es wird empfohlen, ein hochleistungsfähiges lokales Speichergerät zu verwenden, um eine schnellstmögliche Datenübertragung zu gewährleisten. Verwenden Sie beispielsweise eine Solid State Disk oder ein Hochleistungs-RAID-Array. Berücksichtigen Sie bei der Dimensionierung lokaler Festplatten sowohl den Datendurchsatz als auch die Speicherkapazität. Der freigegebene Speichertyp, der zum Hosten des Virtual Disk Image (VDI) verwendet wird, muss NFS- oder EXT-basiert sein.

Auf Host-Installation aktivieren

Um IntelliCache während der Hostinstallation zu aktivieren, wählen Sie im Bildschirm Speicher für virtuelle Maschinen die Option Thin Provisioning aktivieren aus. Diese Option wählt die lokale SR des Hosts aus, die für das lokale Caching von VM-VDIs verwendet werden soll.

Das Bedienfeld „Virtual Machine Storage“ in den Installationsbildschirmen.

Konvertieren eines vorhandenen Hosts zur Verwendung von Thin Provisioning

Geben Sie die folgenden Befehle ein, um eine vorhandene lokale LVM-basierte SR zu löschen und sie durch eine Thin-bereitgestellte EXT3-basierte SR zu ersetzen.

Achtung:

Mit diesen Befehlen wird die vorhandene lokale SR entfernt, und VMs auf der SR werden endgültig gelöscht.

    localsr=`xe sr-list type=lvm host=hostname params=uuid --minimal`
        echo localsr=$localsr
        pbd=`xe pbd-list sr-uuid=$localsr params=uuid --minimal`
        echo pbd=$pbd
        xe pbd-unplug uuid=$pbd
        xe pbd-destroy uuid=$pbd
        xe sr-forget uuid=$localsr
        sed -i "s/'lvm'/'ext'/" /etc/firstboot.d/data/default-storage.conf
        rm -f /etc/firstboot.d/state/10-prepare-storage
        rm -f /etc/firstboot.d/state/15-set-default-storage
        service firstboot start
        xe sr-list type=ext

Geben Sie die folgenden Befehle ein, um das lokale Caching zu aktivieren:

    xe host-disable host=hostname
        localsr=`xe sr-list type=ext host=hostname params=uuid --minimal`
        xe host-enable-local-storage-caching host=hostname sr-uuid=$localsr
        xe host-enable host=hostname

VM-Startverhalten

Es gibt zwei Optionen für das Verhalten eines VM-VDI beim Booten der VM:

  1. Freigegebener Desktop-Modus

    Beim Start der virtuellen Maschine wird der VDI in den Zustand zurückgesetzt, in dem er sich beim vorherigen Start befand. Alle Änderungen, während die VM ausgeführt wird, gehen verloren, wenn die VM das nächste Mal gestartet wird.

    Wählen Sie diese Option aus, wenn Sie standardisierte Desktops bereitstellen möchten, an denen Benutzer keine permanenten Änderungen vornehmen können.

  2. Privater Desktop-Modus

    Beim Start der virtuellen Maschine befindet sich der VDI in dem Zustand, in dem er beim letzten Herunterfahren verblieben wurde.

    Wählen Sie diese Option aus, wenn Sie den Benutzern erlauben möchten, permanente Änderungen an ihren Desktops vorzunehmen.

Einstellungen für das Caching von virtuellen Rechnern

Das VDI-Flagallow-caching bestimmt das Caching-Verhalten:

Freigegebener Desktop-Modus

Bei freigegebenen Desktops ist dieon-boot Optionreset und dasallow-caching Flag isttrue . Neue VM-Daten werden nur in den lokalen Speicher geschrieben. Es gibt keine Schreibvorgänge auf freigegebenen Speicher. Dieser Ansatz bedeutet, dass die Belastung des gemeinsam genutzten Speichers reduziert wird. Die VM kann jedoch nicht zwischen Hosts migriert werden.

Privater Desktop-Modus

Bei privaten Desktops ist die Option On-Boot aufpersist und das Flag Allow-caching auf festgelegttrue . Neue VM-Daten werden sowohl auf lokalen als auch auf gemeinsam genutzten Speicher geschrieben. Das Lesen von zwischengespeicherten Daten erfordert keinen E/A -Datenverkehr zum gemeinsam genutzten Speicher, sodass die Belastung des gemeinsam genutzten Speichers reduziert wird. VM-Migration auf einen anderen Host ist zulässig, und der lokale Cache auf dem neuen Host wird beim Lesen der Daten aufgefüllt.

Implementierungsdetails und Fehlerbehebung

F: Ist IntelliCache mit Live-Migration und hoher Verfügbarkeit kompatibel?

A: Sie können Live-Migration und hohe Verfügbarkeit mit IntelliCache verwenden, wenn sich virtuelle Desktops im privaten Modus befinden, d. h. wennon-boot=persist

Achtung:

Eine VM kann nicht migriert werden, wenn in einer der VDIs Caching-Verhaltens-Flags aufon-boot=reset und festgelegt sindallow-caching=true . Migrationsversuche für VMs mit diesen Eigenschaften schlagen fehl.

F: Wo befindet sich der lokale Cache auf der lokalen Festplatte?

A: Der Cache befindet sich in einem Storage Repository (SR). Jeder Host verfügt über einen Konfigurationsparameter (local-cache-sr genannt), der angibt, welche (lokale) SR für die Cache-Dateien verwendet werden soll. Typischerweise handelt es sich bei dieser SR um einen SR vom Typ EXT. Wenn Sie VMs mit IntelliCache ausführen, werden Dateien im SR mit Namen angezeigtuuid.vhdcache. Diese Datei ist die Cache-Datei für den VDI mit der angegebenen UUID. Diese Dateien werden nicht in HASH (0x2e6c8e8) angezeigt. Die einzige Möglichkeit, sie zu sehen, besteht darin, sich bei dom0 anzumelden und den Inhalt von/var/run/sr-mount/sr-uuid

F: Wie gebe ich eine bestimmte SR für die Verwendung als Cache an?

A: Das Hostobjektfeldlocal-cache-sr verweist auf eine lokale SR. Sie können den Wert anzeigen, indem Sie den folgenden Befehl ausführen:

xe sr-list params=local-cache-sr,uuid,name-label

Dieses Feld ist entweder festgelegt:

  • Wenn Sie nach der Hostinstallation die Option „Thin-Provisioning aktivieren“ im Host-Installationsprogramm ausgewählt haben, oder

  • Durch die Ausführungxe host-enable-local-storage-caching host=host sr-uuid=sr. Der Befehl erfordert, dass der angegebene Host deaktiviert ist. Fahren Sie die VMs herunter, wenn Sie diesen Befehl verwenden.

Die erste Option verwendet den lokalen SR vom Typ EXT und wird während der Hostinstallation erstellt. Bei der zweiten Option wird die in der Befehlszeile angegebene SR verwendet.

Achtung:

Diese Schritte sind nur für Benutzer erforderlich, die mehrere lokale SR konfiguriert haben.

F: Wann wird der lokale Cache gelöscht?

A: Eine VDI-Cache-Datei wird nur gelöscht, wenn der VDI selbst gelöscht wird. Der Cache wird zurückgesetzt, wenn ein VDI an eine VM angeschlossen ist (z. B. beim Start von VM). Wenn der Host offline ist, wenn Sie den VDI löschen, sammelt die SR-Synchronisation, die beim Start Garbage ausgeführt wird, die Cache-Datei.

Hinweis:

Die Cache-Datei wird nicht vom Host gelöscht, wenn eine VM auf einen anderen Host migriert oder heruntergefahren wird.