Empfehlungen zum Einrichten von AFA AccelStor bei der Arbeit mit VMware vSphere

In diesem Artikel möchte ich über die Funktionen von All Flash AccelStor-Arrays sprechen, die mit einer der beliebtesten Virtualisierungsplattformen funktionieren – VMware vSphere. Konzentrieren Sie sich insbesondere auf die Parameter, die Ihnen helfen, mit einem so leistungsstarken Tool wie All Flash den maximalen Effekt zu erzielen.

Empfehlungen zum Einrichten von AFA AccelStor bei der Arbeit mit VMware vSphere

AccelStor NeoSapphire™ All Flash-Arrays sind eins oder zwei Knotengeräte auf Basis von SSD-Laufwerken mit einem grundlegend anderen Ansatz zur Umsetzung des Konzepts der Datenspeicherung und Organisation des Zugriffs darauf mithilfe proprietärer Technologie FlexiRemap® anstelle der sehr beliebten RAID-Algorithmen. Die Arrays bieten Blockzugriff auf Hosts über Fibre Channel- oder iSCSI-Schnittstellen. Fairerweise müssen wir anmerken, dass Modelle mit ISCSI-Schnittstelle als netten Bonus auch Dateizugriff haben. In diesem Artikel konzentrieren wir uns jedoch auf die Verwendung von Blockprotokollen als das produktivste für All Flash.

Der gesamte Prozess der Bereitstellung und anschließenden Konfiguration des gemeinsamen Betriebs des AccelStor-Arrays und des VMware vSphere-Virtualisierungssystems kann in mehrere Phasen unterteilt werden:

  • Implementierung der Verbindungstopologie und Konfiguration des SAN-Netzwerks;
  • All-Flash-Array einrichten;
  • Konfigurieren von ESXi-Hosts;
  • Virtuelle Maschinen einrichten.

Als Beispielhardware wurden AccelStor NeoSapphire™ Fibre Channel-Arrays und iSCSI-Arrays verwendet. Die Basissoftware ist VMware vSphere 6.7U1.

Bevor Sie die in diesem Artikel beschriebenen Systeme bereitstellen, wird dringend empfohlen, die Dokumentation von VMware zu Leistungsproblemen zu lesen (Best Practices für die Leistung von VMware vSphere 6.7 ) und iSCSI-Einstellungen (Best Practices für die Ausführung von VMware vSphere auf iSCSI)

Verbindungstopologie und SAN-Netzwerkkonfiguration

Die Hauptkomponenten eines SAN-Netzwerks sind HBAs in ESXi-Hosts, SAN-Switches und Array-Knoten. Eine typische Netzwerktopologie würde so aussehen:

Empfehlungen zum Einrichten von AFA AccelStor bei der Arbeit mit VMware vSphere

Der Begriff „Switch“ bezieht sich hier sowohl auf einen separaten physischen Switch oder eine Reihe von Switches (Fabric) als auch auf ein Gerät, das von verschiedenen Diensten gemeinsam genutzt wird (VSAN im Fall von Fibre Channel und VLAN im Fall von iSCSI). Durch die Verwendung von zwei unabhängigen Schaltern/Fabrics wird eine mögliche Fehlerquelle eliminiert.

Eine direkte Verbindung von Hosts mit dem Array wird zwar unterstützt, wird jedoch dringend nicht empfohlen. Die Leistung von All-Flash-Arrays ist recht hoch. Und für maximale Geschwindigkeit müssen alle Ports des Arrays genutzt werden. Daher ist das Vorhandensein mindestens eines Switches zwischen den Hosts und NeoSapphire™ zwingend erforderlich.

Das Vorhandensein von zwei Ports auf dem Host-HBA ist ebenfalls eine zwingende Voraussetzung, um maximale Leistung zu erreichen und Fehlertoleranz sicherzustellen.

Bei Verwendung einer Fibre-Channel-Schnittstelle muss die Zoneneinteilung konfiguriert werden, um mögliche Kollisionen zwischen Initiatoren und Zielen auszuschließen. Zonen werden nach dem Prinzip „ein Initiator-Port – ein oder mehrere Array-Ports“ aufgebaut.

Wenn Sie bei Verwendung eines mit anderen Diensten gemeinsam genutzten Switches eine Verbindung über iSCSI verwenden, ist es unbedingt erforderlich, den iSCSI-Verkehr innerhalb eines separaten VLAN zu isolieren. Es wird außerdem dringend empfohlen, die Unterstützung für Jumbo Frames (MTU = 9000) zu aktivieren, um die Größe der Pakete im Netzwerk zu erhöhen und dadurch die Menge an Overhead-Informationen während der Übertragung zu reduzieren. Es ist jedoch zu beachten, dass es für einen ordnungsgemäßen Betrieb erforderlich ist, den MTU-Parameter auf allen Netzwerkkomponenten entlang der Kette „Initiator-Switch-Ziel“ zu ändern.

All-Flash-Array einrichten

Das Array wird an Kunden mit bereits gebildeten Gruppen geliefert FlexiRemap®. Daher müssen keine Maßnahmen ergriffen werden, um Laufwerke in einer einzigen Struktur zusammenzufassen. Sie müssen lediglich Volumina in der erforderlichen Größe und Menge erstellen.

Empfehlungen zum Einrichten von AFA AccelStor bei der Arbeit mit VMware vSphere
Empfehlungen zum Einrichten von AFA AccelStor bei der Arbeit mit VMware vSphere

Der Einfachheit halber gibt es eine Funktionalität zur Stapelerstellung mehrerer Volumes einer bestimmten Größe gleichzeitig. Standardmäßig werden Thin-Volumes erstellt, da dies eine effizientere Nutzung des verfügbaren Speicherplatzes ermöglicht (einschließlich Unterstützung für Space Reclamation). In Bezug auf die Leistung beträgt der Unterschied zwischen „dünnen“ und „dicken“ Volumina nicht mehr als 1 %. Wenn Sie jedoch „den ganzen Saft“ aus einem Array herauspressen möchten, können Sie jederzeit jedes „dünne“ Volumen in ein „dickes“ umwandeln. Es sollte jedoch daran erinnert werden, dass eine solche Operation irreversibel ist.

Als nächstes müssen noch die erstellten Volumes „veröffentlicht“ und Zugriffsrechte von den Hosts auf sie mithilfe von ACLs (IP-Adressen für iSCSI und WWPN für FC) und physischer Trennung durch Array-Ports festgelegt werden. Bei iSCSI-Modellen erfolgt dies durch die Erstellung eines Ziels.

Empfehlungen zum Einrichten von AFA AccelStor bei der Arbeit mit VMware vSphere
Empfehlungen zum Einrichten von AFA AccelStor bei der Arbeit mit VMware vSphere

Bei FC-Modellen erfolgt die Veröffentlichung durch die Erstellung einer LUN für jeden Port des Arrays.

Empfehlungen zum Einrichten von AFA AccelStor bei der Arbeit mit VMware vSphere
Empfehlungen zum Einrichten von AFA AccelStor bei der Arbeit mit VMware vSphere

Um den Einrichtungsprozess zu beschleunigen, können Hosts zu Gruppen zusammengefasst werden. Wenn der Host außerdem einen Multiport-FC-HBA verwendet (was in der Praxis am häufigsten vorkommt), erkennt das System dank der um eins unterschiedlichen WWPNs automatisch, dass die Ports eines solchen HBA zu einem einzelnen Host gehören. Für beide Schnittstellen wird auch die Stapelerstellung von Ziel/LUN unterstützt.

Ein wichtiger Hinweis bei der Verwendung der iSCSI-Schnittstelle besteht darin, mehrere Ziele für Volumes gleichzeitig zu erstellen, um die Leistung zu steigern, da die Warteschlange auf dem Ziel nicht geändert werden kann und effektiv einen Engpass darstellt.

Konfigurieren von ESXi-Hosts

Auf der ESXi-Hostseite wird die Grundkonfiguration gemäß einem vollständig erwarteten Szenario durchgeführt. Vorgehensweise für iSCSI-Verbindung:

  1. Software-iSCSI-Adapter hinzufügen (nicht erforderlich, wenn er bereits hinzugefügt wurde oder Sie einen Hardware-iSCSI-Adapter verwenden);
  2. Erstellen eines vSwitch, über den der iSCSI-Verkehr geleitet wird, und Hinzufügen eines physischen Uplinks und eines VMkernels;
  3. Hinzufügen von Array-Adressen zu Dynamic Discovery;
  4. Erstellung eines Datenspeichers

Einige wichtige Hinweise:

  • Im Allgemeinen können Sie natürlich einen vorhandenen vSwitch verwenden, aber im Fall eines separaten vSwitch ist die Verwaltung der Hosteinstellungen viel einfacher.
  • Um Leistungsprobleme zu vermeiden, ist es notwendig, den Verwaltungs- und iSCSI-Verkehr auf separate physische Verbindungen und/oder VLANs aufzuteilen.
  • Die IP-Adressen des VMkernal und die entsprechenden Ports des All-Flash-Arrays müssen sich wiederum aus Leistungsgründen im selben Subnetz befinden.
  • Um Fehlertoleranz gemäß VMware-Regeln sicherzustellen, muss vSwitch über mindestens zwei physische Uplinks verfügen
  • Wenn Jumbo Frames verwendet werden, müssen Sie die MTU von vSwitch und VMkernal ändern
  • Es wäre nützlich, Sie daran zu erinnern, dass gemäß den Empfehlungen von VMware für physische Adapter, die für die Arbeit mit iSCSI-Verkehr verwendet werden, Teaming und Failover konfiguriert werden müssen. Insbesondere darf jeder VMkernal nur über einen Uplink arbeiten, der zweite Uplink muss in den unbenutzten Modus geschaltet werden. Aus Gründen der Fehlertoleranz müssen Sie zwei VMkernale hinzufügen, von denen jeder über seinen eigenen Uplink arbeitet.

Empfehlungen zum Einrichten von AFA AccelStor bei der Arbeit mit VMware vSphere

VMkernel-Adapter (vmk#)
Physischer Netzwerkadapter (vmnic#)

vmk1 (Speicher01)
Aktive Adapter
vmnic2
Unbenutzte Adapter
vmnic3

vmk2 (Speicher02)
Aktive Adapter
vmnic3
Unbenutzte Adapter
vmnic2

Für die Verbindung über Fibre Channel sind keine vorbereitenden Schritte erforderlich. Sie können sofort einen Datenspeicher erstellen.

Nach dem Erstellen des Datenspeichers müssen Sie sicherstellen, dass die Round-Robin-Richtlinie für Pfade zum Ziel/zur LUN am leistungsfähigsten ist.

Empfehlungen zum Einrichten von AFA AccelStor bei der Arbeit mit VMware vSphere

Standardmäßig sehen die VMware-Einstellungen die Verwendung dieser Richtlinie nach dem Schema vor: 1000 Anfragen über den ersten Pfad, die nächsten 1000 Anfragen über den zweiten Pfad usw. Eine solche Interaktion zwischen dem Host und dem Zwei-Controller-Array wäre unausgeglichen. Daher empfehlen wir, den Parameter Round Robin Policy = 1 über Esxcli/PowerCLI festzulegen.

Parameter

Für Esxcli:

  • Verfügbare LUNs auflisten

esxcli-Speicher-NMP-Geräteliste

  • Gerätenamen kopieren
  • Ändern Sie die Round-Robin-Richtlinie

esxcli storage nmp psp Roundrobin deviceconfig set —type=iops —iops=1 —device=“Device_ID“

Die meisten modernen Anwendungen sind darauf ausgelegt, große Datenpakete auszutauschen, um die Bandbreitennutzung zu maximieren und die CPU-Belastung zu reduzieren. Daher sendet ESXi standardmäßig E/A-Anfragen an das Speichergerät in Blöcken von bis zu 32767 KB. In einigen Szenarien ist der Austausch kleinerer Blöcke jedoch produktiver. Für AccelStor-Arrays sind dies die folgenden Szenarios:

  • Die virtuelle Maschine verwendet UEFI anstelle des Legacy-BIOS
  • Verwendet vSphere Replication

Für solche Szenarien wird empfohlen, den Wert des Parameters Disk.DiskMaxIOSize auf 4096 zu ändern.

Empfehlungen zum Einrichten von AFA AccelStor bei der Arbeit mit VMware vSphere

Für iSCSI-Verbindungen wird empfohlen, den Parameter „Login Timeout“ auf 30 (Standard 5) zu ändern, um die Verbindungsstabilität zu erhöhen und die DelayedAck-Verzögerung für Bestätigungen weitergeleiteter Pakete zu deaktivieren. Beide Optionen finden Sie im vSphere-Client: Host → Konfigurieren → Speicher → Speicheradapter → Erweiterte Optionen für iSCSI-Adapter

Empfehlungen zum Einrichten von AFA AccelStor bei der Arbeit mit VMware vSphere
Empfehlungen zum Einrichten von AFA AccelStor bei der Arbeit mit VMware vSphere

Ein eher subtiler Punkt ist die Anzahl der für den Datenspeicher verwendeten Volumes. Es ist klar, dass zur Vereinfachung der Verwaltung der Wunsch besteht, ein großes Volumen für das gesamte Volumen des Arrays zu erstellen. Das Vorhandensein mehrerer Volumes und dementsprechend des Datenspeichers wirkt sich jedoch positiv auf die Gesamtleistung aus (mehr zu Warteschlangen weiter unten). Wir empfehlen daher, mindestens zwei Volumes zu erstellen.

Bis vor relativ kurzer Zeit empfahl VMware, die Anzahl der virtuellen Maschinen auf einem Datenspeicher zu begrenzen, wiederum um die höchstmögliche Leistung zu erzielen. Mittlerweile, insbesondere mit der Verbreitung von VDI, ist dieses Problem jedoch nicht mehr so ​​akut. Dies hebt jedoch nicht die seit langem bestehende Regel auf, virtuelle Maschinen, die intensive E/A-Anforderungen erfordern, auf verschiedene Datenspeicher zu verteilen. Um die optimale Anzahl virtueller Maschinen pro Volume zu ermitteln, gibt es nichts Besseres als Lasttest des All Flash AccelStor-Arrays innerhalb seiner Infrastruktur.

Virtuelle Maschinen einrichten

Beim Einrichten virtueller Maschinen gibt es keine besonderen Anforderungen bzw. sind ganz normal:

  • Verwendung der höchstmöglichen VM-Version (Kompatibilität)
  • Es ist sorgfältiger, die RAM-Größe festzulegen, wenn virtuelle Maschinen dicht platziert werden, beispielsweise in VDI (da standardmäßig beim Start eine Auslagerungsdatei mit einer Größe erstellt wird, die dem RAM entspricht, was nützliche Kapazität verbraucht und sich auf Folgendes auswirkt die letzte Aufführung)
  • Verwenden Sie die produktivsten Adapterversionen in Bezug auf IO: Netzwerktyp VMXNET 3 und SCSI-Typ PVSCSI
  • Verwenden Sie den Festplattentyp „Thick Provision Eager Zeroed“ für maximale Leistung und „Thin Provisioning“ für maximale Speicherplatznutzung
  • Wenn möglich, schränken Sie den Betrieb nicht E/A-kritischer Maschinen mit der Funktion „Virtual Disk Limit“ ein
  • Stellen Sie sicher, dass Sie VMware Tools installieren

Hinweise zu Warteschlangen

Warteschlange (oder ausstehende E/As) ist die Anzahl der Eingabe-/Ausgabeanforderungen (SCSI-Befehle), die zu einem bestimmten Zeitpunkt für ein bestimmtes Gerät/eine bestimmte Anwendung auf die Verarbeitung warten. Im Falle eines Warteschlangenüberlaufs werden QFULL-Fehler ausgegeben, was letztendlich zu einer Erhöhung des Latenzparameters führt. Bei der Verwendung von Plattenspeichersystemen (Spindelspeichersystemen) ist theoretisch die Leistung umso höher, je höher die Warteschlange ist. Sie sollten es jedoch nicht missbrauchen, da es leicht ist, auf QFULL zu stoßen. Bei All-Flash-Systemen ist einerseits alles etwas einfacher: Schließlich weist das Array um Größenordnungen geringere Latenzen auf und daher ist es in den meisten Fällen nicht erforderlich, die Größe der Warteschlangen separat zu regeln. Andererseits ist es in einigen Anwendungsszenarien (starke Abweichung der E/A-Anforderungen für bestimmte virtuelle Maschinen, Tests für maximale Leistung usw.) erforderlich, wenn nicht die Parameter der Warteschlangen zu ändern, dann zumindest zu verstehen, welche Indikatoren erreicht werden kann, und die Hauptsache ist, auf welche Weise.

Auf dem AccelStor All Flash-Array selbst gibt es keine Beschränkungen hinsichtlich der Volumes oder I/O-Ports. Bei Bedarf kann sogar ein einzelnes Volume alle Ressourcen des Arrays erhalten. Die einzige Einschränkung in der Warteschlange gilt für iSCSI-Ziele. Aus diesem Grund wurde oben auf die Notwendigkeit hingewiesen, für jedes Volumen mehrere (idealerweise bis zu 8) Ziele zu erstellen, um diese Grenze zu überwinden. Lassen Sie uns auch wiederholen, dass AccelStor-Arrays sehr produktive Lösungen sind. Um die maximale Geschwindigkeit zu erreichen, sollten Sie daher alle Schnittstellen des Systems nutzen.

Auf der ESXi-Hostseite ist die Situation völlig anders. Der Gastgeber selbst praktiziert die Praxis des gleichberechtigten Zugangs zu Ressourcen für alle Teilnehmer. Daher gibt es separate E/A-Warteschlangen für das Gastbetriebssystem und den HBA. Warteschlangen zum Gastbetriebssystem werden aus Warteschlangen zum virtuellen SCSI-Adapter und zur virtuellen Festplatte kombiniert:

Empfehlungen zum Einrichten von AFA AccelStor bei der Arbeit mit VMware vSphere

Die Warteschlange zum HBA hängt vom jeweiligen Typ/Anbieter ab:

Empfehlungen zum Einrichten von AFA AccelStor bei der Arbeit mit VMware vSphere

Die endgültige Leistung der virtuellen Maschine wird durch den niedrigsten Grenzwert für die Warteschlangentiefe unter den Hostkomponenten bestimmt.

Dank dieser Werte können wir die Leistungsindikatoren bewerten, die wir in einer bestimmten Konfiguration erhalten können. Wir möchten beispielsweise die theoretische Leistung einer virtuellen Maschine (ohne Blockbindung) mit einer Latenz von 0.5 ms wissen. Dann sind seine IOPS = (1,000/Latenz) * Ausstehende E/As (Grenze der Warteschlangentiefe)

Примеры

Beispiel 1

  • FC Emulex HBA-Adapter
  • Eine VM pro Datenspeicher
  • Paravirtueller SCSI-Adapter von VMware

Hier wird die Begrenzung der Warteschlangentiefe durch den Emulex-HBA bestimmt. Daher IOPS = (1000/0.5)*32 = 64K

Beispiel 2

  • VMware iSCSI-Softwareadapter
  • Eine VM pro Datenspeicher
  • Paravirtueller SCSI-Adapter von VMware

Hier wird die Warteschlangentiefenbegrenzung bereits durch den Paravirtual SCSI Adapter bestimmt. Daher IOPS = (1000/0.5)*64 = 128K

Topmodelle der All Flash AccelStor-Arrays (z. B. P710) sind in der Lage, eine Schreibleistung von 700 IOPS bei 4K-Block zu liefern. Bei einer solchen Blockgröße ist es ziemlich offensichtlich, dass eine einzelne virtuelle Maschine nicht in der Lage ist, ein solches Array zu laden. Dazu benötigen Sie 11 (zum Beispiel 1) oder 6 (zum Beispiel 2) virtuelle Maschinen.

Dadurch können Sie bei richtiger Konfiguration aller beschriebenen Komponenten eines virtuellen Rechenzentrums sehr beeindruckende Ergebnisse hinsichtlich der Leistung erzielen.

Empfehlungen zum Einrichten von AFA AccelStor bei der Arbeit mit VMware vSphere

4K zufällig, 70 % Lesen/30 % Schreiben

Tatsächlich ist die reale Welt viel komplexer, als sie mit einer einfachen Formel beschrieben werden kann. Ein Host hostet immer mehrere virtuelle Maschinen mit unterschiedlichen Konfigurationen und IO-Anforderungen. Und die E/A-Verarbeitung wird vom Host-Prozessor übernommen, dessen Leistung nicht unendlich ist. Also, um das volle Potenzial desselben auszuschöpfen P710-Modelle in Wirklichkeit benötigen Sie drei Hosts. Darüber hinaus nehmen Anwendungen, die in virtuellen Maschinen ausgeführt werden, ihre eigenen Anpassungen vor. Daher bieten wir eine genaue Größenbestimmung an Verwenden Sie die Verifizierung in Testmodellen Alle Flash-Arrays AccelStor innerhalb der Infrastruktur des Kunden an realen aktuellen Aufgaben.

Source: habr.com

Kommentar hinzufügen