Citrix Hypervisor

Multipathing

Dynamische Multipathing-Unterstützung ist für Fibre-Channel- und iSCSI-Speicher-Backends verfügbar.

Citrix Hypervisor verwendet Linux Native Multipathing (DM-MP), die generische Linux-Multipathing-Lösung, als Multipathing-Handler. Citrix Hypervisor ergänzt diesen Handler jedoch um zusätzliche Funktionen, sodass Citrix Hypervisor herstellerspezifische Funktionen von Speichergeräten erkennen kann.

Die Konfiguration von Multipathing bietet Redundanz für den Remote-Speicherverkehr bei teilweisem Konnektivitätsverlust. Multipathing leitet den Speicherverkehr über mehrere Pfade an ein Speichergerät weiter, um Redundanz und erhöhten Durchsatz zu gewährleisten. Multipathing ist eine aktiv-aktive Konfiguration. Standardmäßig verwendet Multipathing je nach Speicher-Array-Typ entweder Round-Robin- oder Multibus-Lastausgleich. Alle Strecken haben während des normalen Betriebs aktiven Verkehr, was zu einem erhöhten Durchsatz führt.

Wichtig:

Wir empfehlen, dass Sie Multipathing für alle Server in Ihrem Pool aktivieren, bevor Sie das SR erstellen. Wenn Sie das SR erstellen, bevor Sie Multipathing aktivieren, müssen Sie Ihre Server in den Wartungsmodus versetzen, um Multipathing zu ermöglichen.

NIC-Bonding kann auch Redundanz für den Speicherverkehr bieten. Für iSCSI-Speicher empfehlen wir, nach Möglichkeit Multipathing anstelle von NIC-Bonding zu konfigurieren.

Multipathing ist in den folgenden Szenarien nicht wirksam:

  • NFS-Speichergeräte
  • Sie haben eine begrenzte Anzahl von Netzwerkkarten und müssen iSCSI-Verkehr und Dateiverkehr (NFS oder SMB) über dieselbe Netzwerkkarte leiten

In diesen Fällen sollten Sie stattdessen die NIC-Bindung verwenden. Weitere Informationen zum NIC-Bonding finden Sie unter Netzwerk.

Voraussetzungen

Bevor Sie Multipathing aktivieren, überprüfen Sie, ob die folgenden Anweisungen zutreffen:

  • Auf Ihrem Speicherserver sind mehrere Ziele verfügbar.

    Beispielsweise gibt ein iSCSI-Speicher-Backend, das nach sendtargets für ein bestimmtes Portal 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.strawberry:litchie
      192.168.0.204:3260,2 iqn.strawberry:litchie
    

    Sie können jedoch eine zusätzliche Konfiguration durchführen, um iSCSI-Multipath für Arrays zu aktivieren, die nur ein einziges Ziel verfügbar machen. Weitere Informationen finden Sie unter iSCSI Multipath für Arrays, die nur ein einziges Zielverfügbar machen.

  • Nur für iSCSI hat die Steuerdomäne (dom0) eine IP-Adresse in jedem Subnetz, das vom Multipath-Speicher verwendet wird.

    Stellen Sie sicher, dass Sie für jeden Pfad, den Sie zum Speicher haben möchten, über eine Netzwerkkarte verfügen 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 iSCSI hat jedes iSCSI-Ziel und jeder iSCSI-Initiator einen eigenen IQN.

  • Nur für iSCSI arbeiten die iSCSI-Zielports im Portalmodus.

  • Nur für HBA sind mehrere HBAs an die Switch-Fabric angeschlossen.

Konfigurieren von Multipathing

Sie können Multipathing in XenCenter oder auf der xe-CLI aktivieren.

So aktivieren Sie Multipathing über XenCenter

  1. Klicken Sie im Bereich XenCenter Resources mit der rechten Maustaste auf den Server und wählen Sie Wartungsmodus aufrufen.

  2. Warten Sie, bis der Server mit dem Symbol für den Wartungsmodus (ein blaues Quadrat) im Bereich Ressourcen wieder angezeigt wird, bevor Sie fortfahren.

  3. Klicken Sie auf der Registerkarte Allgemein für den Server auf Eigenschaften, und wechseln Sie dann zur Registerkarte Multipathing .

  4. Um Multipathing zu aktivieren, aktivieren Sie das Kontrollkästchen Multipathing auf diesem Server aktivieren.

  5. Klicken Sie auf OK, um die neue Einstellung zu übernehmen. Es gibt eine kurze Verzögerung, während XenCenter die neue Speicherkonfiguration speichert.

  6. Klicken Sie im Bereich Ressourcen mit der rechten Maustaste auf den Server, und wählen Sie Wartungsmodus beenden.

  7. Wiederholen Sie diese Schritte, um Multipathing auf allen Servern im Pool zu konfigurieren.

Stellen Sie sicher, dass Sie Multipathing auf allen Servern im Pool konfigurieren. Die gesamte Verkabelung und, im Fall von iSCSI, Subnetzkonfigurationen müssen mit den entsprechenden Netzwerkkarten auf jedem Server übereinstimmen.

So aktivieren Sie Multipathing mit der xe-CLI

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

  2. Trennen Sie alle PBDs auf dem Server mit dem folgenden Befehl:

    xe pbd-unplug uuid=<pbd_uuid>
    <!--NeedCopy-->
    

    Sie können den Befehl verwenden xe pbd-list, um die UUID der PBDs zu finden.

  3. Setzen Sie den Wert des Parameters multipathing auf true, indem Sie den folgenden Befehl verwenden:

    xe host-param-set uuid=<host uuid> multipathing=true
    <!--NeedCopy-->
    
  4. Wenn auf dem Server SRs vorhanden sind, die im Single-Path-Modus ausgeführt werden, aber mehrere Pfade haben:

    • Migrieren oder sperren Sie alle laufenden Gäste mit virtuellen Datenträgern in den betroffenen SRs

    • Schließen Sie die PBD aller betroffenen SRs erneut an, um sie mithilfe von Multipathing erneut zu verbinden:

       xe pbd-plug uuid=<pbd_uuid>
       <!--NeedCopy-->
      
  5. Wiederholen Sie diese Schritte, um Multipathing auf allen Servern im Pool zu konfigurieren.

Stellen Sie sicher, dass Sie Multipathing auf allen Servern im Pool konfigurieren. Die gesamte Verkabelung und, im Fall von iSCSI, Subnetzkonfigurationen müssen mit den entsprechenden Netzwerkkarten auf jedem Server übereinstimmen.

Deaktivieren Sie Multipathing

Sie können Multipathing in XenCenter oder in der xe-CLI deaktivieren.

Deaktivieren von Multipathing über XenCenter

  1. Klicken Sie im Bereich XenCenter Resources mit der rechten Maustaste auf den Server und wählen Sie Wartungsmodus aufrufen.

  2. Warten Sie, bis der Server mit dem Symbol für den Wartungsmodus (ein blaues Quadrat) im Bereich Ressourcen wieder angezeigt wird, bevor Sie fortfahren.

  3. Klicken Sie auf der Registerkarte Allgemein für den Server auf Eigenschaften, und wechseln Sie dann zur Registerkarte Multipathing .

  4. Um Multipathing zu deaktivieren, deaktivieren Sie das Kontrollkästchen Multipathing auf diesem Server aktivieren .

  5. Klicken Sie auf OK, um die neue Einstellung zu übernehmen. Es gibt eine kurze Verzögerung, während XenCenter die neue Speicherkonfiguration speichert.

  6. Klicken Sie im Bereich Ressourcen mit der rechten Maustaste auf den Server, und wählen Sie Wartungsmodus beenden.

  7. Wiederholen Sie diese Schritte, um Multipathing auf allen Servern im Pool zu konfigurieren.

So deaktivieren Sie Multipathing mit der xe-CLI

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

  2. Trennen Sie alle PBDs auf dem Server mit dem folgenden Befehl:

    xe pbd-unplug uuid=<pbd_uuid>
    <!--NeedCopy-->
    

    Sie können den Befehl verwenden xe pbd-list, um die UUID der PBDs zu finden.

  3. Setzen Sie den Wert des Parameters multipathing auf false, indem Sie den folgenden Befehl verwenden:

    xe host-param-set uuid=<host uuid> multipathing=false
    <!--NeedCopy-->
    
  4. Wenn auf dem Server SRs vorhanden sind, die im Single-Path-Modus ausgeführt werden, aber mehrere Pfade haben:

    • Migrieren oder sperren Sie alle laufenden Gäste mit virtuellen Datenträgern in den betroffenen SRs

    • Trennen Sie die PBD aller betroffenen SRs und schließen Sie sie erneut an, um sie mithilfe von Multipathing erneut zu verbinden:

       xe pbd-plug uuid=<pbd_uuid>
       <!--NeedCopy-->
      
  5. Wiederholen Sie diese Schritte, um Multipathing auf allen Servern im Pool zu deaktivieren.

Multipath-Werkzeuge

Die Multipath-Unterstützung in Citrix Hypervisor basiert auf dem Geräte-Mapper multipathd components. Die Storage Manager-API verwaltet die automatische Aktivierung und Deaktivierung von Multipath-Knoten. Im Gegensatz zu den Standardtools dm-multipath in Linux werden Device Mapper-Knoten nicht automatisch für alle LUNs im System erstellt. Device Mapper-Knoten werden nur bereitgestellt, wenn LUNs aktiv von der Speicherverwaltungsebene verwendet werden. Daher ist es nicht erforderlich, eines der CLI-Tools dm-multipath zum Abfragen oder Aktualisieren von DM-Tabellenknoten in Citrix Hypervisor zu verwenden.

Wenn es notwendig ist, den Status von Device-Mapper-Tabellen manuell abzufragen oder aktive Device Mapper-Multipath-Knoten im System aufzulisten, verwenden Sie das Dienstprogramm mpathutil:

mpathutil list
<!--NeedCopy-->
mpathutil status
<!--NeedCopy-->

iSCSI-Multipath für Arrays, die nur ein einziges Ziel verfügbar machen

Sie können Citrix Hypervisor so konfigurieren, dass iSCSI-Multipath mit Speicher-Arrays verwendet wird, die nur ein einzelnes iSCSI-Ziel und einen IQN über eine IP-Adresse verfügbar machen. Sie können diese Schritte beispielsweise befolgen, um Dell EqualLogic PS und FS Unified Series Storage-Arrays einzurichten.

Standardmäßig stellt Citrix Hypervisor nur eine Verbindung pro iSCSI-Ziel her. Daher wird bei der Standardkonfiguration empfohlen, NIC-Bonding zu verwenden, um Failover und Lastausgleich zu erreichen. Das in diesem Abschnitt beschriebene Konfigurationsverfahren beschreibt eine alternative Konfiguration, bei der mehrere iSCSI-Verbindungen für ein einzelnes iSCSI-Ziel hergestellt werden. NIC-Bonding ist nicht erforderlich.

Hinweis:

Die folgende Konfiguration wird nur für Server unterstützt, die ausschließlich an Speicher-Arrays angeschlossen sind, die nur ein einziges iSCSI-Ziel verfügbar machen. Diese Speicher-Arrays müssen für dieses Verfahren mit Citrix Hypervisor qualifiziert sein.

So konfigurieren Sie Multipath:

  1. Machen Sie ein Backup aller Daten, die Sie schützen möchten.

  2. Klicken Sie im Bereich XenCenter Resources mit der rechten Maustaste auf den Server und wählen Sie Wartungsmodus aufrufen.

  3. Warten Sie, bis der Server mit dem Symbol für den Wartungsmodus (ein blaues Quadrat) im Bereich Ressourcen wieder angezeigt wird, bevor Sie fortfahren.

  4. Klicken Sie auf der Registerkarte Allgemein für den Server auf Eigenschaften, und wechseln Sie dann zur Registerkarte Multipathing .

  5. Um Multipathing zu aktivieren, aktivieren Sie das Kontrollkästchen Multipathing auf diesem Server aktivieren.

  6. Klicken Sie auf OK, um die neue Einstellung zu übernehmen. Es gibt eine kurze Verzögerung, während XenCenter die neue Speicherkonfiguration speichert.

  7. Konfigurieren Sie in der Serverkonsole zwei bis vier Open-iSCSI-Schnittstellen. Jede iSCSI-Schnittstelle wird verwendet, um einen separaten Pfad einzurichten. Die folgenden Schritte zeigen den Ablauf für zwei Schnittstellen:

    1. Konfigurieren Sie zwei iSCSI-Schnittstellen und führen Sie die folgenden Befehle aus:

      iscsiadm -m iface --op new -I c_iface1
      iscsiadm -m iface --op new -I c_iface2
      

      Stellen Sie sicher, dass die Schnittstellennamen das Präfix c_haben Wenn die Schnittstellen diesen Benennungsstandard nicht verwenden, werden sie ignoriert und stattdessen wird die Standardschnittstelle verwendet.

      Hinweis:

      Diese Konfiguration führt dazu, dass die Standardschnittstelle für alle Verbindungen verwendet wird. Dies zeigt an, dass alle Verbindungen über eine einzige Schnittstelle hergestellt werden.

    2. Binden Sie die iSCSI-Schnittstellen mithilfe der folgenden Befehle an xenbr1 und xenbr2:

      iscsiadm -m iface --op update -I c_iface1 -n iface.net_ifacename -v xenbr1
      iscsiadm -m iface --op update -I c_iface2 -n iface.net_ifacename -v xenbr2
      

      Hinweis:

      Bei dieser Konfiguration wird vorausgesetzt, dass die für die Steuerdomäne konfigurierten Netzwerkschnittstellen (einschließlich xenbr1 und xenbr2) und xenbr0 für die Verwaltung verwendet werden. Es wird auch davon ausgegangen, dass die für das Speichernetzwerk verwendeten NIC-Karten NIC1 und NIC2 sind. Wenn dies nicht der Fall ist, verwenden Sie Ihre Netzwerktopologie, um die Netzwerkschnittstellen und NIC-Karten zu ermitteln, die in diesen Befehlen verwendet werden sollen.

  8. Klicken Sie im Bereich XenCenter Resources mit der rechten Maustaste auf den Server und wählen Sie Wartungsmodus beenden. Setzen Sie Ihre virtuellen Maschinen noch nicht fort.

  9. Führen Sie in der Serverkonsole die folgenden Befehle aus, um die Sitzungen zu ermitteln und sich bei ihnen anzumelden:

    iscsiadm -m discovery -t st -p <IP of SAN>
    iscsiadm -m node -L all
    
  10. Löschen Sie die veralteten Einträge mit alten Sitzungsinformationen, indem Sie die folgenden Befehle verwenden:

    cd /var/lib/iscsi/send_targets/<IP of SAN and port, use ls command to check that>
    rm -rf <iqn of SAN target for that particular LUN>
    
    cd /var/lib/iscsi/nodes/
    rm -rf <entries for that particular SAN>
    
  11. Trennen Sie die LUN und hängen Sie sie erneut an. Sie können dies auf eine der folgenden Arten tun:

    • Nachdem Sie die vorherigen Schritte auf allen Servern in einem Pool ausgeführt haben, können Sie XenCenter verwenden, um die LUN für den gesamten Pool zu trennen und erneut anzuhängen.
    • Alternativ können Sie das PBD für jeden Server trennen und zerstören und dann das SR reparieren.

      1. Führen Sie die folgenden Befehle aus, um die PBD zu trennen und zu zerstören:

        1. Finden der UUID des SRs:

          xe sr-list
          
        2. Rufen Sie die Liste der PBDs ab, die mit dem SR verknüpft sind:

          xe pbd-list sr-uuid=<sr_uuid>
          
        3. Suchen Sie in der Ausgabe des vorherigen Befehls nach der UUID der PBD des iSCSI-Speicherrepositorys mit einer nicht übereinstimmenden SCSI-ID.

        4. Trennen und vernichten Sie die identifizierte PBD.

          xe pbd-unplug uuid=<pbd_uuid>
          xe pbd-destroy uuid=<pbd_uuid>
          
      2. Reparieren Sie den Speicher in XenCenter.

  12. Sie können jetzt Ihre virtuellen Maschinen fortsetzen.

Multipathing