Runecast-Akademie
5
:

Lagerung

In Teil 5 dieser Serie werfen wir einen Blick auf die verschiedenen Arten der Datenspeicherung, die Überlegungen, die dahinter stehen, und die Aspekte, die sie einzigartig machen (oder auch nicht).

Lagerung

In Teil 5 dieser Serie werfen wir einen Blick auf die verschiedenen Arten der Datenspeicherung, die Überlegungen, die dahinter stehen, und die Aspekte, die sie einzigartig machen (oder auch nicht).

Hier eine Auswahl der behandelten Bereiche:

  • Was sind Festplattentypen, Dateisystem, RAID & Cache (ein eleganter Trick)
  • Speichertypen wie Lokal, Zentral, Blockebene und (2) mehr!
  • Ein sehr weises Nachwort

Runecast Academy Serie 1 - Teil 5. Lagerung

Wir wissen aus der Runecast Academy - 4. Virtuelle Maschinen, dass jede virtuelle Maschine aus ein paar Dateien besteht. Wir haben mehrere verschiedene Optionen, wie wir sie speichern und darauf zugreifen können. Einige Technologien passen vielleicht besser in Ihr Rechenzentrum und zu Ihren Arbeitslasten als andere, also lassen Sie uns durch die Speicherwelt fliegen.

Disks

Der Weg von der virtuellen Festplatte der virtuellen Maschine (VM) zur physischen Festplatte kann ganz einfach oder sehr komplex sein, aber am Ende des Weges steht ein Festplattenlaufwerk (HDD) mit rotierenden Magnetplatten oder eine Solid-State-Disk (SSD) mit Chips, die die Daten speichern. SSDs sind im Preis gesunken und die Technologie hat sich bereits bewährt, so dass sie auch im Serverbereich langsam die HDDs ersetzen - nicht nur wegen der Geschwindigkeit des Datenzugriffs, sondern auch, weil sie weniger Strom verbrauchen und nicht so viel Wärme erzeugen. 

Dateisystem

Um die Daten auf der Platte irgendwie zu sortieren, formatieren wir die Platte mit einem Dateisystem. Dieses kann für allgemeine Daten oder für die Speicherung bestimmter Daten ausgelegt sein. VMware hat ein VMFS-Dateisystem (derzeit Version 6) eingeführt, das für die Speicherung von VM-Festplatten und den gleichzeitigen Zugriff von mehreren Servern konzipiert ist.

RAID

Sie können eine physische Festplatte in Ihrem Server haben, aber Murphy's Law bedeutet, dass die Festplatte wahrscheinlich genau dann ausfällt, wenn Sie die Daten wirklich brauchen. Außerdem können Sie eine einzelne Festplatte nicht aufblähen, wenn Sie mehr Bytes speichern müssen, und die Datenübertragungsgeschwindigkeit ist begrenzt. Aus diesem Grund verwenden wir die RAID-Speichertechnologie (Redundant Array of Independent Disks), die mehrere physische Festplatten zu einer virtuellen Festplatte zusammenfasst. Um RAID zu erstellen, benötigen Sie einen RAID-Controller und mindestens zwei physische Festplatten. Es wurden mehrere Schemata definiert, und in der Praxis werden Sie höchstwahrscheinlich auf RAID 5 (besteht aus mindestens drei Festplatten und schützt Sie vor dem Ausfall einer Festplatte) oder RAID 6 (mindestens vier Festplatten und übersteht den Ausfall von zwei Festplatten gleichzeitig) treffen. Wenn eine Festplatte ausfällt, ersetzen Sie sie einfach durch eine neue. 

Cache

Wir wollen so schnell wie möglich auf unsere Daten zugreifen, aber kein Vermögen für schnelle SSDs für unser gesamtes Array ausgeben. Wir haben also einen eleganten Trick in der Tasche... Wir können die Daten mit einer SSD-Platte oder einem speziellen Speicherchip zwischenspeichern. Beim Schreiben von Daten können wir diese schnell in der Cache-Ebene speichern und später auf der Zielfestplatte ablegen. Wir können auch Daten, auf die regelmäßig zugegriffen wird, im Lese-Cache speichern, damit sie gelesen werden können, ohne auf die langsamere Festplatte zu warten.

Lokale Speicherung

Die lokale Speicherung ist eine recht preiswerte Option, da der Server und in der Regel auch ein RAID-Controller bereits vorhanden sind, so dass Sie nur noch ein paar Festplatten kaufen müssen. Die Leistung ist in der Regel nicht perfekt, kann aber gut genug sein. Konfiguration, Verwaltung und Fehlerbehebung sind sehr einfach. Sie verlieren jedoch die hohe Verfügbarkeit und Flexibilität. 

Zentrale Lagerung

Wie wäre es, den RAID-Controller mit den Festplatten vom Server zu entfernen, ihn in einer speziellen Box unterzubringen und den/die Server über das Netzwerk damit zu verbinden? Ja, wir haben jetzt einen zentralen Speicher. Das bringt zwar mehr Kabel und Boxen, aber auch mehr Stabilität und Flexibilität für Ihr Rechenzentrum. Es gibt drei Methoden, wie man mit dem zentralen Speicher arbeiten kann. Sie können mit den Daten als Blöcke, Dateien oder Objekte arbeiten.

Speicherung auf Blockebene

Die Speicherung auf Blockebene ist die universellste. Aus der Sicht der Speicherbox sind alle Daten einfach Blöcke aus Einsen und Nullen. Aus der Sicht von ESXi handelt es sich um lokalen Speicher, der irgendwo in der Ecke liegt und vom ESXi-Server mit dem VMFS-Dateisystem formatiert wird.

Wir haben mehrere Möglichkeiten, wie wir mit solchen Speichern kommunizieren können:

Die älteste, sehr stabile, aber etwas teure Methode ist die Verwendung von Fibre Channel (FC) Storage Area Network (SAN). Sie benötigen spezielle Speicher-Switches und HBA-Adapter auf Ihren Servern. Es gibt einen guten Grund für die Verwendung des SAN-Netzwerks, denn es ist für den schnellen und sicheren Zugriff auf das Speichersystem konzipiert. Fibre Channel ist ein verlustfreies Protokoll, und das SAN-Netzwerk ermöglicht Ihnen die Verwaltung von Multipathing auf allen Pfaden zwischen Server und Speicher sowie Zoning (um sicherzustellen, dass die Server nur auf die ihnen zugewiesenen Daten zugreifen).

In einem kleineren Rechenzentrum können Sie iSCSI verwenden. Dieses Protokoll nutzt ein Standard-TCP/IP-Netzwerk, so dass Sie Ihre vorhandene Netzwerkinfrastruktur und Netzwerkkarten verwenden können. Sie sollten die Verwendung von Jumbo-Frames (größere Ethernet-Frames als üblich) in Betracht ziehen. Stellen Sie sicher, dass diese auf dem gesamten Pfad zwischen Ihrem ESXi-Host und dem Speicher aktiviert sind.

Die neueste Option ist die Verwendung von FCoE (Fibre Channel over Ethernet). Die Idee hinter dieser Technologie ist die Nutzung von Fibre Channel mit einer "normalen" Netzwerkinfrastruktur. Der Trick dabei ist, dass nur wenige der "normalen" Netzwerk-Switches und "normalen" Netzwerkkarten FCoE wirklich unterstützen, und Sie müssen sie auf eine spezielle Weise konfigurieren, um FCoE zu unterstützen.

Speicherung von Dateien

Eine zweite Möglichkeit ist die Verwendung des Dateizugriffs. In diesem Fall stellt das Speicherarray ein komplettes Dateisystem (NFS) bereit, und ESXi arbeitet mit den darauf gespeicherten Dateien. Der NFS-Speicher ist über ein Standard-TCP/IP-Netzwerk angeschlossen. Das NFS-Protokoll Version 4.1 wird von vSphere unterstützt und ermöglicht die Konfiguration von Multipathing.

Es gibt einen nicht enden wollenden Kampf zwischen iSCSI- und NFS-Fans. Sie werden tonnenweise Artikel finden, in denen diese Technologien miteinander verglichen werden, wobei alles verglichen wird, was sich vergleichen lässt. Die Realität ist, dass es vollkommen sicher ist, beide Technologien zu verwenden. Richten Sie Ihre Umgebung einfach gemäß den Empfehlungen des Herstellers und den KBs von VMware ein.

Objektbasierte Speicherung

Eine etwas andere Möglichkeit ist die Verwendung von objektbasiertem Speicher. Dieser Speicher versteht, dass wir virtuelle Maschinen speichern, und kann entsprechend mit den Daten arbeiten. VMware hat uns den virtuellen Speicher vSAN zur Verfügung gestellt, der ein typischer objektbasierter Speicher ist. Dank dieser Lösung brauchen wir keine externe Speicherbox, wir können einfach Festplatten in unsere ESXi-Hosts einbauen, sie mit einem schnellen Netzwerk verbinden, globale oder pro VM geltende Richtlinien definieren und haben einen "zentralen Speicher" mit sehr guter Leistung und hoher Verfügbarkeit. Wir werden in einem unserer späteren Runecast Academy-Artikel etwas tiefer in diese Thematik einsteigen.

Nachwort

Für welche Speicherlösung Sie sich auch immer entscheiden, denken Sie daran, dass selbst die kugelsicherste Technologie Sie überraschen kann. Bereiten Sie daher am besten einen Notfallplan vor und sichern Sie alles. Und vergessen Sie nicht, dass eine Sicherungskopie nicht unbedingt bedeutet, dass Sie bei Bedarf einen konsistenten Zustand wiederherstellen können.

Martin Rehula

Martin ist ein VMware-Ingenieur bei Runecast. Er begann seine Karriere als UNIX-Administrator, aber als er zum ersten Mal mit VMware ESX in Berührung kam (damals in den Tagen von v2.5), beschloss er, im Bereich der Virtualisierung zu bleiben. Er war Administrator in VMware- und Citrix-basierten virtuellen Umgebungen mit Schwerpunkt auf zentralisiertem Management und Automatisierung bei Tieto und Hella. Vielleicht treffen Sie ihn in der Stadt, im Wald oder in den Bergen - auf der Suche nach dem entscheidenden Moment und Punkt, den er mit seiner Kamera einfangen kann. Sie finden ihn auf Twitter als @virt4all.

Alle Artikel der Akademie
Keine Artikel gefunden.