Thin Provisioned Shared GFS2-Blockspeicher

Bei der Thin Provisioning wird der verfügbare Speicher besser genutzt, indem den VDIs Speicherplatz zugewiesen wird, wenn Daten auf das virtuelle Laufwerk geschrieben werden, anstatt die vollständige virtuelle Größe des VDI im Voraus zuzuweisen. Mit Thin Provisioning können Sie den benötigten Speicherplatz in einem gemeinsam genutzten Speicher-Array und damit Ihre Gesamtbetriebskosten (TCO) erheblich reduzieren.

Die Thin Provisioning für Shared Block Storage ist in folgenden Fällen von besonderem Interesse:

  • Sie wollen mehr Platzeffizienz. Bilder sind dünn und nicht dick zugeordnet.
  • Sie möchten die Anzahl der E/A -Vorgänge pro Sekunde auf Ihrem Speicher-Array reduzieren. Die GFS2 SR ist der erste SR-Typ, der Speicher-Lese-Caching auf Shared Block Storage unterstützt.
  • Sie verwenden ein gemeinsames Basis-Image für mehrere virtuelle Maschinen. Die Images einzelner VMs verbrauchen dann in der Regel noch weniger Speicherplatz.
  • Sie verwenden Snapshots. Jeder Schnappschuss ist ein Bild und jedes Bild ist jetzt spärlich.
  • Ihr Speicher unterstützt NFS nicht und unterstützt nur Blockspeicher. Wenn Ihr Speicher NFS unterstützt, empfehlen wir Ihnen, NFS anstelle von GFS2 zu verwenden.
  • Sie möchten VDIs erstellen, die größer als 2 TiB sind. Der GFS2 SR unterstützt VDIs mit einer Größe von bis zu 16 TiB.

Der freigegebene GFS2-Typ stellt Datenträger als Dateisystem dar, das auf einer iSCSI- oder HBA-LUN erstellt wurde. VDIs, die auf einem GFS2 SR gespeichert sind, werden im QCOW2-Bildformat gespeichert.

Voraussetzungen

Bevor Sie beginnen, stellen Sie sicher, dass die folgenden Voraussetzungen erfüllt sind:

  • Alle Citrix Hypervisor-Server im Cluster-Pool müssen über mindestens 2 GiB Kontrolldomänenspeicher verfügen.

  • Alle Hosts im Cluster müssen statische IP-Adressen für das Clusternetzwerk verwenden.

  • Es wird empfohlen, Clustering nur in Pools zu verwenden, die mindestens drei Hosts enthalten, da Pools von zwei Hosts gegenüber dem Selbst-Fencing des gesamten Pools sensibel sind.

  • Wenn Sie eine Firewall zwischen den Hosts in Ihrem Pool haben, stellen Sie sicher, dass Hosts über die folgenden Ports im Clusternetzwerk kommunizieren können:
    • TCP: 8892, 21064
    • UDP: 5404, 5405

    Weitere Informationen finden Sie unter Von Citrix Technologies verwendete Kommunikationsports.

  • Wenn Sie einen vorhandenen Pool gruppieren, stellen Sie sicher, dass die hohe Verfügbarkeit deaktiviert ist. Sie können die hohe Verfügbarkeit erneut aktivieren, nachdem das Clustering aktiviert ist.

  • Sie haben ein blockbasiertes Speichergerät, das für alle HASH (0x2e68218) Server im Ressourcenpool sichtbar ist.

Einrichten eines gruppierten Pools zur Verwendung eines gemeinsam genutzten GFS2-SR

Um gemeinsam genutzten GFS2-Speicher verwenden zu können, muss der HASH-Ressourcenpool (0x2e68218) ein Clusterpool sein. Aktivieren Sie Clustering in Ihrem Pool, bevor Sie eine GFS2 SR erstellen.

Hinweis:

Clustered Pools verhalten sich anders als nicht gruppierte Pools. Weitere Hinweise zum Clusterverhalten finden Sie unterClustered Pools.

Wenn Sie möchten, können Sie Clustering in Ihrem Pool mithilfe von XenCenter einrichten. Weitere Informationen finden Sie unterXenCenter-Produktdokumentation.

So verwenden Sie die xe-CLI zum Erstellen eines gruppierten Pools:

  1. Erstellen Sie ein verbundenes Netzwerk, das als Clusternetzwerk verwendet werden soll. Führen Sie auf dem Citrix Hypervisor-Server, auf dem Sie der Poolmaster sein möchten, die folgenden Schritte aus:

    1. Öffnen Sie eine Konsole auf dem Citrix Hypervisor-Server.

    2. Benennen Sie Ihren Ressourcenpool mithilfe des folgenden Befehls:

      xe pool-param-set name-label="New Pool" uuid=<pool_uuid>
      
    3. Erstellen Sie mithilfe des folgenden Befehls ein Netzwerk zur Verwendung mit der gebundenen Netzwerkkarte:

      xe network-create name-label=bond0
      

      Die UUID des neuen Netzwerks wird zurückgegeben.

    4. Suchen Sie die UUIDs der PIFs, die in der Bindung verwendet werden sollen, indem Sie den folgenden Befehl verwenden:

      xe pif-list
      
    5. Erstellen Sie Ihr verbundenes Netzwerk entweder im Aktiv-Aktiv-Modus, im Aktiv-Passivmodus oder im LACP-Bond-Modus. Führen Sie je nach verwenddem Bondmodus eine der folgenden Aktionen aus:

      • Um die Bindung im aktiv-aktiven Modus zu konfigurieren (Standard), verwenden Sie denbond-create Befehl, um die Bindung zu erzeugen. Geben Sie mithilfe von Kommas die neu erstellte Netzwerk-UUID und die UUIDs der zu gebundenen PIFs an:

         xe bond-create network-uuid=<network_uuid> /
              pif-uuids=<pif_uuid_1>,<pif_uuid_2>,<pif_uuid_3>,<pif_uuid_4>
        

        Geben Sie zwei UUIDs ein, wenn Sie zwei Netzwerkkarten anschließen, und vier UUIDs, wenn Sie vier Netzwerkkarten anschließen. Die UUID für die Bindung wird nach dem Ausführen des Befehls zurückgegeben.

      • Verwenden Sie die gleiche Syntax, fügen Sie den optionalenmode Parameter hinzu und geben Sie Folgendes an, um die Bindung im Aktiv-Passiv-lacp oder LACP-Bondmodus zu konfigurierenactive-backup :

         xe bond-create network-uuid=<network_uuid> pif-uuids=<pif_uuid_1>, /
              <pif_uuid_2>,<pif_uuid_3>,<pif_uuid_4> /
              mode=balance-slb | active-backup | lacp
        

    Nachdem Sie Ihr verbundenes Netzwerk auf dem Poolmaster erstellt haben, werden die Netzwerk- und Bindungsinformationen automatisch auf den beitretenden Server repliziert, wenn Sie andere Citrix Hypervisor-Server mit dem Pool verbinden.

    Weitere Informationen finden Sie unter Networking.

  2. Erstellen Sie einen Ressourcenpool von mindestens drei Citrix Hypervisor-Servern.

    Wiederholen Sie die folgenden Schritte auf jedem Citrix Hypervisor-Server, der ein (Nicht-Master-) Poolmitglied ist:

    1. Öffnen Sie eine Konsole auf dem Citrix Hypervisor-Server.
    2. Verbinden Sie den Citrix Hypervisor-Server mit dem Pool auf dem Poolmaster, indem Sie den folgenden Befehl verwenden:

      xe pool-join master-address=master_address master-username=administrators_username master-password=password
      

      Der Wert desmaster-address Parameters muss auf den vollqualifizierten Domänennamen des Citrix Hypervisor-Servers festgelegt werden, der der Poolmaster ist. Derpassword muss das Administratorkennwort sein, das bei der Installation des Poolmasters festgelegt wurde.

    Weitere Informationen finden Sie unter Hosts und Ressourcenpools.

  3. Legen Sie für jeden PIF, der zu diesem Netzwerk gehört, festdisallow-unplug=true.

    1. Suchen Sie die UUIDs der PIFs, die zum Netzwerk gehören, mithilfe des folgenden Befehls:

      xe pif-list
      
    2. Führen Sie den folgenden Befehl auf einem Citrix Hypervisor-Server in Ihrem Ressourcenpool aus:

      xe pif-param-set disallow-unplug=true uuid=<pif_uuid>
      
  4. Aktivieren Sie das Clustering in Ihrem Pool. Führen Sie den folgenden Befehl auf einem Citrix Hypervisor-Server in Ihrem Ressourcenpool aus:

    xe cluster-pool-create network-uuid=<network_uuid>
    

    Geben Sie die UUID des gebundenen Netzwerks an, das Sie in einem früheren Schritt erstellt haben.

Einrichten von Speicher-Multipathing für Ihre gemeinsam genutzte GFS2 SR

Wichtig:

Bevor Sie versuchen, Multipathing zu aktivieren, stellen Sie sicher, dass die folgenden Anweisungen wahr sind:

  • Mehrere Ziele sind auf Ihrem Speicherserver verfügbar.

    Beispielsweise gibt ein iSCSI-Speicher-Back-End, das in einem bestimmten Portal nach sendtargets abgefragt wird, mehrere Ziele zurück, wie im folgenden Beispiel:

      iscsiadm -m discovery — type sendtargets — portal 192.168.0.161
      192.168.0. 161:3260 ,1 iqn.Erdbeere: Litchie
      192.168.0. 204:3260 ,2 iqn.erdbeere: litchie
    
  • Nur für iSCSI verfügt dom0 über eine IP-Adresse in jedem Subnetz, das vom Multipath-Speicher verwendet wird.

    Stellen Sie sicher, dass für jeden Pfad, den Sie zum Speicher benötigen möchten, eine Netzwerkkarte vorhanden ist und dass auf jeder Netzwerkkarte eine IP-Adresse konfiguriert ist. Wenn Sie beispielsweise vier Pfade zu Ihrem Speicher wünschen, müssen Sie über vier Netzwerkkarten verfügen, für die jeweils eine IP-Adresse konfiguriert ist.

  • Nur für HBA sind mehrere HBA mit der Switch-Fabric verbunden.

Mit XenCenter können Sie Speicher-Multipathing einrichten. Weitere Informationen finden SieMassenspeicher-Multipathingin der XenCenter-Produktdokumentation.

Um die xe-CLI zum Einrichten von Speicher-Multipathing zu verwenden, führen Sie die folgenden Schritte auf allen HASH-Servern (0x2e68218) in Ihrem Cluster-Pool aus:

  1. Öffnen Sie eine Konsole auf dem Citrix Hypervisor-Server.

  2. Trennen Sie alle PBDs auf dem Server mithilfe des folgenden Befehls:

    xe pbd-unplug uuid=<pbd_uuid>
    
  3. Legen Sie den Wert desother-config:multipathing Parameterstrue mithilfe des folgenden Befehls auf:

    xe host-param-set other-config:multipathing=true uuid=<server_uuid>
    
  4. Legen Sie den Wert desother-config:multipathhandle Parametersdmp mithilfe des folgenden Befehls auf:

    xe host-param-set other-config:multipathhandle=dmp uuid=<server_uuid>
    
  5. Wenn auf dem Server im Einzelpfadmodus vorhandene SRs vorhanden sind, die jedoch mehrere Pfade aufweisen:

    • Migrieren oder Anhalten von laufenden Gästen mit virtuellen Laufwerken in betroffenen SRs

    • Trennen Sie die PBD aller betroffenen SRs, und schließen Sie sie erneut mit Multipathing an:

       xe pbd-unplug uuid=<pbd_uuid>
       xe pbd-plug uuid=<pbd_uuid>
      

Weitere Informationen finden Sie unter Massenspeicher-Multipathing.

Erstellen einer gemeinsam genutzten GFS2 SR

Sie können Ihre gemeinsam genutzte GFS2-SR auf einer iSCSI oder einer HBA-LUN erstellen.

Erstellen eines gemeinsam genutzten GFS2 über iSCSI-SR

Sie können GFS2 über iSCSI-SRs mithilfe von XenCenter erstellen. Weitere Informationen finden SieSoftware-iSCSI-Speicherin der XenCenter-Produktdokumentation.

Alternativ können Sie die xe-CLI verwenden, um eine GFS2 über iSCSI-SR zu erstellen.

Gerätekonfigurationsparameter für GFS2-SRs:

Parametername Beschreibung Erforderlich?
provider Die Implementierung des Blockanbieters. In diesem Fall,iscsi. Ja
target Die IP-Adresse oder der Hostname des iSCSI-Filers, der hostet Ja
targetIQN Das IQN-Ziel des iSCSI-Filers, der die SR hostet Ja
SCSIid GerätesCSI-ID Ja

Die Werte, die für diese Parameter verwendet werden sollen, finden Sie mithilfe desxe sr-probe-ext Befehls.

xe sr-probe-ext type=<type> host-uuid=<host_uuid> device-config:=<config> sm-config:=<sm_config>
  1. Starten Sie mit dem folgenden Befehl:

    xe sr-probe-ext type=gfs2 device-config:provider=iscsi
    

    Die Ausgabe des Befehls fordert Sie auf, zusätzliche Parameter anzugeben und gibt in jedem Schritt eine Liste möglicher Werte an.

  2. Wiederholen Sie den Befehl und fügen Sie jedes Mal neue Parameter hinzu.

  3. Wenn die Befehlsausgabe mit beginntThe following SRs were found:, können Sie diedevice-configParameter verwenden, die Sie angegeben haben, um die SR beim Ausführen desxe sr-createBefehls zu suchen.

Um eine gemeinsam genutzte GFS2-SR für eine bestimmte LUN eines iSCSI-Ziels zu erstellen, führen Sie den folgenden Befehl auf einem Server in Ihrem Clusterpool aus:

xe sr-create type=gfs2 name-label="Example GFS2 SR" --shared \
   device-config:provider=iscsi device-config:targetIQN=target_iqns \
   device-config:target=portal_address device-config:SCSIid=scsci_id

Wenn das iSCSI-Ziel nicht erreichbar ist, während GFS2-Dateisysteme gemountet sind, können einige Hosts im Clusterpool umzäunt werden.

Weitere Informationen zum Arbeiten mit iSCSI-SRs finden Sie unterSoftware-iSCSI-Unterstützung.

Erstellen eines gemeinsam genutzten GFS2 über HBA SR

Sie können mithilfe von XenCenter GFS2 über HBA-SRs erstellen. Weitere Informationen finden SieHardware-HBA-Speicherin der XenCenter-Produktdokumentation.

Alternativ können Sie die xe-CLI verwenden, um eine GFS2 über HBA SR zu erstellen.

Gerätekonfigurationsparameter für GFS2-SRs:

Parametername Beschreibung Erforderlich?
provider Die Implementierung des Blockanbieters. In diesem Fall,hba. Ja
SCSIid GerätesCSI-ID Ja

Sie können die Werte für den SCSIID-Parameter mithilfe desxe sr-probe-ext Befehls ermitteln.

xe sr-probe-ext type=<type> host-uuid=<host_uuid> device-config:=<config> sm-config:=<sm_config>
  1. Starten Sie mit dem folgenden Befehl:

    xe sr-probe-ext type=gfs2 device-config:provider=hba
    

    Die Ausgabe des Befehls fordert Sie auf, zusätzliche Parameter anzugeben und gibt in jedem Schritt eine Liste möglicher Werte an.

  2. Wiederholen Sie den Befehl und fügen Sie jedes Mal neue Parameter hinzu.

  3. Wenn die Befehlsausgabe mit beginntThe following SRs were found:, können Sie diedevice-configParameter verwenden, die Sie angegeben haben, um die SR beim Ausführen desxe sr-createBefehls zu suchen.

Um eine gemeinsam genutzte GFS2-SR für eine bestimmte LUN eines HBA-Ziels zu erstellen, führen Sie den folgenden Befehl auf einem Server in Ihrem Clusterpool aus:

xe sr-create type=gfs2 name-label="Example GFS2 SR" --shared \
  device-config:provider=hba device-config:SCSIid=device_scsi_id

Weitere Informationen zum Arbeiten mit HBA-SRs finden Sie unterHardware-Hostbusadapter.

Einschränkungen

Gemeinsamer GFS2-Speicher hat derzeit die folgenden Einschränkungen:

  • VM-Migration mit Speicherlivemigration wird für VMs, deren VDIs auf einem GFS2-SR befinden, nicht unterstützt.
  • Das FCoE-Protokoll wird von GFS2-SRs nicht unterstützt.
  • Trim/Unmap wird auf GFS2-SRs nicht unterstützt.
  • Leistungskennzahlen sind für GFS2-SRs und Festplatten auf diesen SRs nicht verfügbar.
  • Geänderte Blockverfolgung wird für VDIs, die auf GFS2-SRs gespeichert sind, nicht unterstützt.
  • Sie können VDIs, die größer als 2 TiB sind, nicht als VHD oder OVA/OVF exportieren. Sie können jedoch VMs mit VDIs größer als 2 TiB im XVA-Format exportieren.
  • Clustered Pools unterstützen nur bis zu 16 Hosts pro Pool.
  • Wenn ein Netzwerk sowohl für die Verwaltung als auch für das Clustering verwendet wurde, können Sie das Verwaltungsnetzwerk nicht trennen, ohne den Cluster neu zu erstellen.
  • Wenn Sie die IP-Adresse des Clusternetzwerks mithilfe von XenCenter ändern, müssen Clustering und GFS2 vorübergehend deaktiviert werden.
  • Ändern Sie die Bindung Ihres Clusternetzwerks nicht, solange der Cluster live ist und virtuelle Rechner ausgeführt hat. Diese Aktion kann dazu führen, dass der Cluster sich umzäunt.
  • Wenn in Ihrem Clusternetzwerk ein IP-Adresskonflikt (mehrere Hosts mit derselben IP-Adresse) besteht, an dem mindestens ein Host mit aktiviertem Clustering beteiligt ist, werden die Hosts nicht eingegrenzt. Um dieses Problem zu beheben, lösen Sie den IP-Adresskonflikt.