Befolgen Sie bei der Verwendung von ESXi mit iSCSI-SAN die Empfehlungen von VMware, um Probleme zu vermeiden.

Erkundigen Sie sich bei Ihrem Speicheranbieter, ob Ihr Speichersystem die Hardwarebeschleunigungsfunktionen der Storage-APIs für die Array-Integration unterstützt. Wenn ja, lesen Sie in der Dokumentation Ihres Anbieters nach, um die Unterstützung für die Hardwarebeschleunigung auf dem Speichersystem zu aktivieren. Weitere Informationen finden Sie unter Speicher-Hardwarebeschleunigung in vSphere.

Vermeiden von iSCSI-SAN-Problemen

Bei Verwendung von ESXi mit einem SAN müssen Sie bestimmte Richtlinien befolgen, um SAN-Probleme zu vermeiden.

Beachten Sie die folgenden Tipps:

  • Platzieren Sie nur einen einzigen VMFS-Datenspeicher in jeder LUN.
  • Ändern Sie die vom System festgelegte Pfadrichtlinie nur, wenn Sie die Auswirkungen dieser Änderung kennen und verstehen.
  • Erstellen Sie eine ausführliche Dokumentation. Notieren Sie Informationen zu Konfiguration, Zugriffssteuerung, Speicher, Switch, Server und iSCSI-HBA-Konfiguration, Software- und Firmware-Versionen sowie zum Speicherkabelplan.
  • Erstellen Sie einen Notfallplan bei Ausfällen:
    • Kopieren Sie Ihre Topologiezuordnungen mehrfach. Ermitteln Sie für jedes Element, welche Auswirkungen ein Ausfall dieses Elements auf das SAN hat.
    • Stellen Sie mithilfe einer Liste aller Verbindungen, Switches, HBAs und anderen Elemente sicher, dass Sie keine wichtige Fehlerstelle in Ihrem Design übersehen haben.
  • Stellen Sie sicher, dass die iSCSI-HBAs an den geeigneten Steckplätzen des ESXi-Hosts installiert sind (basierend auf Steckplatz- und Busgeschwindigkeit). Richten Sie einen PCI-Bus-Lastausgleich für alle Busse des Servers ein.
  • Machen Sie sich mit den verschiedenen Überwachungspunkten in Ihrem Speichernetzwerk an allen Sichtbarkeitspunkten vertraut (einschließlich ESXi-Leistungsdiagramme sowie Statistiken zu Ethernet-Switches und Speicherleistung).
  • Ändern Sie LUN-IDs nur, wenn der auf den LUNs bereitgestellte VMFS-Datenspeicher nicht über laufende virtuelle Maschinen verfügt. Wenn Sie die ID ändern, schlagen die auf dem VMFS-Datenspeicher ausgeführten virtuellen Maschinen möglicherweise fehl.

    Nachdem Sie die ID der LUN geändert haben, müssen Sie den Speicher erneut prüfen, um die ID auf Ihrem Host zurückzusetzen. Weitere Informationen über das erneute Prüfen finden Sie unter Vorgänge zum erneuten Prüfen auf ESXi-Speicher.

  • Wenn Sie den standardmäßigen iSCSI-Namen Ihres iSCSI-Adapters ändern müssen, stellen Sie sicher, dass der Name, den Sie eingeben, weltweit eindeutig und ordnungsgemäß formatiert ist. Um Speicherzugriffsprobleme zu vermeiden, weisen Sie unterschiedlichen Adaptern niemals denselben iSCSI-Namen zu, auch nicht auf unterschiedlichen Hosts.

Optimieren der iSCSI-SAN-Speicherleistung

Bei der Optimierung einer typischen SAN-Umgebung müssen verschiedene Faktoren berücksichtigt werden.

Bei ordnungsgemäßer Konfiguration der Netzwerkumgebung sollten die iSCSI-Komponenten einen ausreichenden Durchsatz und eine ausreichend geringe Latenz für iSCSI-Initiatoren und -Ziele bieten. Wenn das Netzwerk überlastet und die maximale Leistung von Verbindungen, Switches oder Routern erreicht ist, ist die iSCSI-Leistung beeinträchtigt und möglicherweise nicht mehr ausreichend für ESXi-Umgebungen.

Speichersystemleistung

Einer der wichtigsten Faktoren für die Optimierung einer kompletten iSCSI-Umgebung ist die Speichersystemleistung.

Bei Problemen mit der Speichersystemleistung lesen Sie die entsprechende Dokumentation des Speichersystem-Anbieters.

Bedenken Sie beim Zuweisen von LUNs, dass über verschiedene Hosts auf jede gemeinsam genutzte LUN zugegriffen werden kann und dass auf jedem Host mehrere virtuelle Maschinen ausgeführt werden können. Auf einer LUN, die vom ESXi-Host verwendet wird, sind E/A-Vorgänge von einer Vielzahl von unterschiedlichen Anwendungen möglich, die unter verschiedenen Betriebssystemen ausgeführt werden. Aufgrund dieser unterschiedlichen Arbeitslast sollte die RAID-Gruppe mit den ESXi-LUNs keine LUNs enthalten, die von anderen Hosts verwendet werden, auf denen nicht ESXi für E/A-intensive Anwendungen ausgeführt wird.

Aktivieren Sie die Lese- und Schreibcache.

Lastenausgleich ist der Vorgang zum Verteilen von E/A-Anforderungen eines Servers auf alle verfügbaren Speicherprozessoren und die verknüpften Hostserverpfade. Das Ziel ist die Optimierung der Leistung im Hinblick auf den Durchsatz (E/A pro Sekunde, MB pro Sekunde oder Reaktionszeiten).

SAN-Speichersysteme müssen kontinuierlich neu ausgelegt und optimiert werden, um sicherzustellen, dass die E/A-Last auf alle Speichersystempfade verteilt ist. Um diese Anforderung zu erfüllen, verteilen Sie die Pfade zu den LUNs auf alle Speicherprozessoren. Das Ergebnis ist ein optimaler Lastenausgleich. Eine sorgfältige Überwachung zeigt an, wenn die LUN-Verteilung manuell angepasst werden muss.

Bei der Optimierung von Speichersystemen mit statischem Lastenausgleich ist die Überwachung der spezifischen Leistungsstatistiken (beispielsweise E/A-Vorgänge pro Sekunde, Blocks pro Sekunde und Reaktionszeit) und Verteilung der LUN-Arbeitslast auf alle Speicherprozessoren von größter Bedeutung.

Serverleistung mit iSCSI

Um eine optimale Leistung des ESXi-Hosts sicherzustellen, müssen verschiedene Faktoren berücksichtigt werden.

Der Zugriff jeder Serveranwendung auf den integrierten Speicher muss mit den folgenden Bedingungen gewährleistet sein:

  • Hohe E/A-Rate (Anzahl an E/A-Vorgängen pro Sekunde)
  • Hoher Durchsatz (MB pro Sekunde)
  • Minimale Latenz (Reaktionszeiten)

Da für jede Anwendung andere Anforderungen gelten, können Sie diese Ziele erreichen, indem Sie eine geeignete RAID-Gruppe für das Speichersystem wählen.

Zum Erreichen von Leistungszielen halten Sie sich an die folgenden Richtlinien:

  • Platzieren Sie jede LUN in einer RAID-Gruppe, die die erforderlichen Leistungsebenen bietet. Überwachen Sie die Aktivitäten und Ressourcennutzung anderer LUNs in der zugewiesenen RAID-Gruppe. Mit einer hochleistungsfähigen RAID-Gruppe mit zu vielen Anwendungen, die eine E/A-Last verursachen, können die Leistungsziele möglicherweise nicht erreicht werden, die für eine Anwendung auf dem ESXi-Host erforderlich sind.
  • Um den maximalen Durchsatz für die Anwendungen auf dem Host in der Spitzenzeit zu erzielen, installieren Sie genügend Netzwerkadapter bzw. iSCSI-Hardwareadapter. Bei Verteilung der E/A-Last auf mehrere Ports wird ein höherer Durchsatz und eine geringere Latenz für jede Anwendung erreicht.
  • Um für Software-iSCSI Redundanz zu bieten, verbinden Sie den Initiator mit allen Netzwerkadaptern, die für die iSCSI-Konnektivität verwendet werden.
  • Beachten Sie, dass beim Zuweisen von LUNs oder RAID-Gruppen für ESXi-Systeme diese Ressourcen durch mehrere Betriebssysteme gemeinsam verwendet werden. Die vom ESXi-Host erforderliche LUN-Leistung könnte viel höher als die Leistung sein, die normale physische Maschinen benötigen. Wenn Sie z. B. die Ausführung von vier E/A-intensiven Anwendungen planen, weisen Sie für die ESXi-LUNs die vierfache Leistungskapazität zu.
  • Wenn Sie mehrere ESXi-Systeme mit vCenter Server verwenden, erhöhen sich die Anforderungen an die Speicherleistung.
  • Die Anzahl an ausstehenden E/A-Vorgängen von Anwendungen, die auf einem ESXi-System ausgeführt werden, muss mit der Anzahl an E/A-Vorgängen übereinstimmen, die das SAN verarbeiten kann.

Netzwerkleistung

Ein typisches SAN umfasst verschiedene Computer, die über ein Netzwerk aus Switches mit verschiedenen Speichersystemen verbunden sind. Mehrere Computer greifen häufig auf denselben Speicher zu.

Die folgende Abbildung zeigt verschiedene Computersysteme, die über einen Ethernet-Switch mit einem Speichersystem verbunden sind. In dieser Konfiguration wird jedes System über eine einzige Ethernet-Verbindung mit dem Switch verbunden. Der Switch wird mit dem Speichersystem über eine einzige Ethernet-Verbindung verbunden.

Abbildung 1. Eine einzige Ethernet-Verbindung mit dem Speicher
Die Abbildung zeigt verschiedene Systeme, die über einen Ethernet-Switch mit einem Speichersystem verbunden sind.

Wenn Systeme Daten aus dem Speicher lesen, reagiert der Speicher mit dem Senden von genügend Daten, um die Verbindung zwischen den Speichersystemen und dem Ethernet-Switch zu füllen. Es ist unwahrscheinlich, dass ein einziges System oder eine einzige virtuelle Maschine die Netzwerkgeschwindigkeit vollständig nutzen. Diese Situation kann jedoch eintreten, wenn viele Systeme ein Speichergerät gemeinsam nutzen.

Beim Schreiben von Daten in den Speicher versuchen möglicherweise mehrere Systeme oder virtuelle Maschinen, ihre Datenträger zu füllen. Der Switch zwischen den Systemen und dem Speichersystem kann jedoch Pakete im Netzwerk verwerfen. Das Verwerfen der Daten kann auftreten, weil der Switch mehr Datenverkehr zum Speichersystem senden muss, als ein eine einzelne Verbindung übertragen kann. Die Menge an Daten, die der Switch übertragen kann, wird durch die Geschwindigkeit der Verbindung zwischen dem Switch und dem Speichersystem begrenzt.

Abbildung 2. Verworfene Pakete
Die Abbildung stellt den Switch, der Daten verwirft, zwischen den Servern und den Speichersystemen dar.

Das Wiederherstellen von verworfenen Netzwerkpaketen führt zu einer erheblichen Leistungsbeeinträchtigung. Neben der Zeit zur Ermittlung, dass Daten verloren gegangen sind, ist für die erneute Übermittlung Netzwerkbandbreite erforderlich, die anderenfalls für aktuelle Transaktionen verwendet werden kann.

iSCSI-Datenverkehr wird innerhalb des Netzwerks über TCP (Transmission Control Protocol) übermittelt. Bei TCP handelt es sich um ein zuverlässiges Übertragungsprotokoll, mit dem Sie sicherstellen, dass wiederholt versucht wird, verworfene Pakete zu übermitteln, bis diese ihr Ziel erreichen. TCP ist für eine Wiederherstellung und schnelle und problemlose Übermittlung von verworfenen Paketen konzipiert. Wenn der Switch jedoch regelmäßig Pakete verwirft, ist der Netzwerkdurchsatz reduziert. Das Netzwerk wird überlastet mit Anforderungen zum Senden der Daten und mit den zurückgesendeten Paketen. Es werden weniger Daten übertragen als in einem Netzwerk ohne Überlastung.

Die meisten Ethernet-Switches können Daten puffern oder speichern. Mit dieser Technik erhält jedes Gerät, das versucht, Daten zu senden, die gleiche Möglichkeit, zum Ziel zu gelangen. Die Möglichkeit zum Puffern einiger Übertragungen zusammen mit vielen Systemen, die die Anzahl ausstehender Befehle begrenzen, reduziert die Übertragungen auf kleine Spitzen. Die Spitzen von mehreren Systemen können wiederum zu einem Speichersystem gesendet werden.

Wenn die Transaktionen umfangreich sind und mehrere Server Daten über einen einzelnen Switch-Port senden, kann die Möglichkeit zum Puffern erweitert werden. In diesem Fall werden die Daten, die der Switch nicht senden kann, verworfen, und das Speichersystem muss die erneute Übermittlung des verworfenen Pakets anfordern. Wenn zum Beispiel ein Ethernet-Switch 32 KB puffern kann, der Server aber 256 KB an das Speichergerät sendet, werden einige der Daten verworfen.

Die meisten verwalteten Switches bieten Informationen zu verworfenen Paketen, die in etwa den folgenden Angaben entsprechen:

*: interface is up
IHQ: pkts in input hold queue     IQD: pkts dropped from input queue
OHQ: pkts in output hold queue    OQD: pkts dropped from output queue
RXBS: rx rate (bits/sec)          RXPS: rx rate (pkts/sec)
TXBS: tx rate (bits/sec)          TXPS: tx rate (pkts/sec)
TRTL: throttle count
Tabelle 1. Beispiel zu Switch-Informationen
Schnittstelle IHQ IQD OHQ OQD RXBS RXPS TXBS TXPS TRTL
* GigabitEthernet0/1 3 9922 0 0 476303000 62273 477840000 63677 0

In diesem Beispiel eines Cisco-Switches lautet die verwendete Bandbreite 476303000 Bit/s, also weniger als die Hälfte der Kabelgeschwindigkeit. Der Port puffert eingehende Pakete, einige Pakete wurden jedoch verworfen. Die letzte Zeile dieser Schnittstellenübersicht zeigt, dass diese Schnittstelle bereits fast 10.000 eingehende Pakete in der IQD-Spalte verworfen hat.

Um dieses Problem zu verhindern, sind Konfigurationsänderungen erforderlich. Stellen Sie dabei sicher, dass eingehende Ethernet-Verbindungen nicht zu einer ausgehenden Verbindung zusammengefasst werden, sodass die Verbindung „überbucht“ wird. Wenn einige Verbindungen, die nahezu die gesamte Kapazität übertragen, auf eine kleinere Zahl an Verbindungen reduziert werden, kann dies zu einer Überbuchung führen.

In der Regel müssen Anwendungen oder Systeme, die viele Daten in den Speicher schreiben, die gemeinsame Nutzung von Ethernet-Verbindungen zu einem Speichergerät vermeiden. Für diese Anwendungstypen wird mit mehreren Verbindungen zu Speichergeräten eine optimale Leistung erzielt.

„Mehrere Verbindungen zwischen Switch und Speicher“ zeigt mehrere Verbindungen vom Switch zum Speicher.

Abbildung 3. Mehrere Verbindungen zwischen Switch und Speicher
Die Abbildung zeigt mehrere Verbindungen vom Switch zum Speicher.

Die Verwendung von VLANs oder VPNs ist keine geeignete Lösung für das Problem von überlasteten Verbindungen in Konfigurationen mit gemeinsam verwendeten Komponenten. VLANs und andere virtuelle Partitionierungen von Netzwerken bieten die Möglichkeit für ein logisches Netzwerkdesign. Die physischen Kapazitäten von Verbindungen und Trunks zwischen Switches werden dadurch jedoch nicht geändert. Wenn Speicherdatenverkehr und anderer Netzwerkverkehr physische Verbindungen gemeinsam nutzen, kann es zu einer Überbuchung und zu verworfenen Paketen kommen. Gleiches gilt für VLANs mit gemeinsamen Interswitch-Trunks. Für die Leistungsberechnungen in einem SAN müssen die physischen Grenzen des Netzwerks, nicht die logischen Zuordnungen berücksichtigt werden.

Überprüfen von Ethernet-Switch-Statistiken

Eine Vielzahl von Ethernet-Switches bieten verschiedene Methoden zur Überwachung des Switch-Status.

Switches mit Ports, welche die meiste Zeit einen fast maximalen Durchsatz erzielen, bieten keine optimale Leistung. Wenn Sie in Ihrem iSCSI-SAN über solche Ports verfügen, reduzieren Sie die Last. Wenn der Port mit einem ESXi-System oder iSCSI-Speicher verbunden ist, kann die Last über einen manuellen Lastenausgleich reduziert werden.

Wenn der Port mit mehreren Switches oder Routern verbunden ist, ziehen Sie die Installation zusätzlicher Verbindungen zwischen diesen Komponenten in Betracht, um eine höhere Last verarbeiten zu können. Ethernet-Switches bieten darüber hinaus meist Informationen zu Übertragungsfehlern, in der Warteschlange platzierten Paketen und verworfenen Ethernet-Paketen. Wenn ein Switch diese Bedingungen regelmäßig für Ports anzeigt, die für den iSCSI-Datenverkehr verwendet werden, bietet das iSCSI-SAN eine schlechte Leistung.