Best Practices für die Virtualisierung von Servern auf dem SAN?


17

Also gut, ich möchte mein SAN ein wenig stärker nutzen als bisher und gleichzeitig die Vorteile von ESXi nutzen.

Derzeit ist eine Reihe von Dell PowerEdge 1955-Blades an ein EMC AX4-5 FC-Speicherarray mit einem Gehäuse angeschlossen. Ich benutze im Wesentlichen das SAN als DAS. Ich habe LUNs im SAN, die auf bestimmte physische Maschinen verweisen, und diese Maschinen verwenden die LUNs für beliebige Zwecke (hauptsächlich Datenbanken und Samba / NFS-Freigaben, abhängig vom Zielserver).

Ich habe mehrere physische Dateiserver und jeder hat ein Samba-Konfigurationssetup, um die entsprechenden Freigaben zu bedienen. Da ich RHCS nie zum Laufen gebracht habe, sind die LUNs jeweils nur auf einem der Dateiserver gemountet. Für den Fall, dass ein Dateiserver ausfällt, schalte ich ihn manuell ein (entweder durch Entfernen und Entfernen des Laufwerks mithilfe des Dienstprogramms navisphere oder durch Abschalten der Stromversorgung über DRAC) und verwende dann das Dienstprogramm navisphere, um die angezeigten LUNs auf dem nächsten Konkurrenten aufzurufen ( Danach starten Sie Apache und die anderen Daemons. Alles von Hand, gerade jetzt.

Ich fühle mich wie Ferris Bueller auf der Klarinette. Hatte noch nie eine Lektion!

Wie auch immer, ich versuche mich zu verbessern. Ich möchte ESXi auf den physischen Hosts installieren und dann LUNs für zwei Dateiserver-Images erstellen (falls eines beschädigt / fubar wird), von denen eines aktiv und das andere im Standby-Modus ist. Zumindest auf diese Weise verbessere ich die Automatisierung nicht (obwohl ich bald ein Skript schreiben werde, um den "aktiven" Server zu wechseln), aber ich habe das Gefühl, dass ich Flexibilität hinzufüge und es nutzen kann Die ESXi-Hosts können andere VMs aufnehmen, und die Hardware wird nicht wie jetzt verschwendet.

Meine Fragen sind:

1) Wie dumm ist mein Plan?

2) Soll ich bei der tatsächlichen Implementierung ein normales vmdk-Image auf der LUN erstellen oder eine "unformatierte" Partition zuweisen (wenn dies mit ESXi überhaupt möglich ist?)

3) Gibt es eine "gute" Möglichkeit, nicht geclusterte Dateiserver zu verwenden?

Antworten:


7

Dein Plan ist nicht verrückt. Wie üblich gibt es mehr als nur ein paar Möglichkeiten, dies anzugreifen, je nachdem, was Sie erreichen möchten und wie Sie Ihre Daten schützen.

Zunächst können Sie einer VM eine unformatierte LUN mithilfe einer "unformatierten Gerätezuordnung" präsentieren. Um dies zu tun:

  • Präsentieren Sie die LUN dem ESXi-Host (oder der Hostgruppe, wenn Sie Clustering / HA verwenden möchten).
  • Fügen Sie Ihrer VM eine Festplatte hinzu, wählen Sie Raw Device Mapping, und zeigen Sie auf die LUN
  • Scannen Sie den SCSI-Bus in der VM erneut
  • fdisk, mounten und zu fstab hinzufügen, genau wie eine normale Festplatte.

Auf der Oberseite: schnell einzurichten, schnell zu bedienen, einfach, kann die Festplatte für den physischen Host darstellen, wenn Sie feststellen, dass Sie V2P auf der ganzen Strecke benötigen

Nachteil: Je nachdem, ob Sie den physischen oder virtuellen Kompatibilitätsmodus verwenden, können einige VMware-basierte Snapshot- / Rollback-Optionen verloren gehen

Eine alternative Option besteht darin, VMFS auf der LUN zu erstellen, um einen Datenspeicher zu erstellen, und dann der auf diesem Datenspeicher befindlichen VM eine VMDK-Festplatte hinzuzufügen.

  • Positiv zu vermerken ist, dass Storage vMotion-freundlich ist, wenn Sie jemals eine Lizenz zur Nutzung erwerben. Auf diese Weise können VMDK-Festplatten im laufenden Betrieb zwischen LUNs und sogar SANs migriert werden.

In beiden Fällen befinden Sie sich in einer ähnlichen Risikoposition, wenn VMware oder Ihre VM während eines Ausfalls das Dateisystem verschlingen. eines ist nicht drastisch besser als das andere, obwohl die verfügbaren Wiederherstellungsoptionen sehr unterschiedlich sein werden.

Ich setze keine RDMs ein, es sei denn, ich muss; Ich habe festgestellt, dass sie mir als VMDK nicht viel Flexibilität verschaffen (und ich wurde von Fehlern gebissen , die sie bei der Durchführung anderer Speicheroperationen unpraktisch machten (da behoben - siehe RDM-Abschnitt in diesem Link)).


Ihre VM ist am flexibelsten, wenn Sie die Startdiskette Ihres Dateiservers als VMDK im SAN speichern, damit andere Hosts sie bei einem Hostausfall starten können. Wenn Sie die HA-Funktionalität von VMware verwenden, wird die VM automatisch auf einem anderen Host gestartet (die VM wird auf dem zweiten Host so gestartet, als wäre die Stromversorgung unterbrochen worden). Erwarten Sie, dass Sie die üblichen Fscks und Aktionen ausführen, um sie wie bei einem normalen Server zu starten ). Hinweis: HA ist eine lizenzierte Funktion.

Um einem VM-Fehler entgegenzuwirken, können Sie einen Light-Clone Ihres Dateiservers erstellen, der das erforderliche Mindestmaß zum Starten und Starten von SAMBA in einem konfigurierten Zustand enthält, und diesen auf der lokalen Festplatte jedes Hosts speichern, bis Sie das Datenlaufwerk vom hinzufügen fehlgeschlagene VM und schalten Sie es ein.

Dies kann im Falle eines SAN-Ausfalls zusätzliche Optionen für Sie bedeuten oder nicht. Im besten Fall erfordert Ihr Datenspeicher eine fsck- oder andere Reparatur, aber Sie müssen die VM nicht oben reparieren, neu erstellen oder konfigurieren. Im schlimmsten Fall haben Sie die Daten verloren und müssen zurück auf Band gehen ... aber Sie waren sowieso schon in diesem Zustand.


1

Ich würde mich an die vmdk-Images halten, nur falls Sie in Zukunft vmotion verwenden, wissen Sie nie, dass Sie möglicherweise ein Budget dafür haben.

Wenn Ihre Maschinen nicht geclustert sind, ist es für mich die beste Möglichkeit, sie zu verwalten, die Last so gleichmäßig wie möglich zu verteilen. Ich habe 3 nicht gruppierte 2950, ​​wo die Last von den kritischsten VMS so viel wie möglich 1/3 auf jedem ist. Die Theorie besagt, dass es unwahrscheinlich ist, dass ich mehr als eine Box auf einmal verliere, sodass mindestens 2/3 in der Lage sein werden, unbeeinflusst weiterzuarbeiten.

Aus Sicht der Stromversorgung wäre es wahrscheinlich effizienter, die Maschinen so weit wie möglich zu laden und andere Maschinen auszuschalten, aber es scheint, als würden Sie mir alle Eier in einen Korb legen.

Ich würde mich nicht als Experte bezeichnen, genau das, was ich tue.


1

Hey Matt. Es gibt viele Möglichkeiten, eine Lösung aufzuteilen, wenn Sie eine Virtualisierungslösung verwenden. Zunächst gab es viele Benchmarks, die die Raw LUN (RDM) -Leistung im Vergleich zur VMDK-Leistung zeigten, und der Unterschied ist normalerweise vernachlässigbar. Einige Dinge, die bei RDMs beachtet werden müssen: Nur bestimmte Clustering-Situationen erfordern die Verwendung von RDMs (MS-Clustering). RDMs haben ein Limit von 2 TB, aber LVM kann verwendet werden, um dieses Limit zu umgehen. RDMs sind schwerer nachzuverfolgen, als ESXi eine LUN für VMFS zu geben und vmdk darauf abzulegen. VMDKs (wie erwähnt) haben einige nette Vorteile: svMotion, Snapshots (kann kein pRDM-Snapshot erstellen).

Wenn Sie Free ESXi verwenden, gehe ich wie folgt vor. Zunächst befinden sich alle Daten in vmdk-Dateien auf VMFS-LUNS. Richten Sie 2 VMs ein und verwenden Sie Heartbeat für das Failover von IP und Diensten. Heartbeat verschiebt die Dienst-IP und kann Skripte ausführen, um die Daten-LUN gegebenenfalls zu entfernen / bereitzustellen. Sie können sogar einige VMware Remote-CLI-Skripts ausführen, um sicherzustellen, dass die heruntergefahrene VM zum Schutz ausgeschaltet wird. Da Heartbeat direkt zwischen den Systemen koordiniert wird, sollte das Risiko, dass beide auf die Daten zugreifen bzw. dieselben Dienste ausführen, äußerst gering sein. Der Schlüssel hierbei ist, sicherzustellen, dass das Aktivieren / Deaktivieren der Daten-LUN und das Starten / Herunterfahren von Diensten von Heartbeat und nicht von den normalen Initialisierungsmechanismen ausgeführt wird.

Ein alternatives Failover kann über ein Überwachungssystem durchgeführt werden. Wenn der ausgefallene Host erkannt wird, kann VMware Remote CLI verwendet werden, um das System auszuschalten (um sicherzugehen) und anschließend das Backup-VM einzuschalten. In dieser Situation ist das Zurückfallen ziemlich manuell.

In meiner "winzigen" Umgebung wurde kein VMDK beschädigt. Ich habe auch festgestellt, dass Sie bei mehr als 2 ESX (i) -Hosts oder einem Dutzend VMs mit vCenter den Überblick behalten möchten. Einige der Essential / Plus-Pakete sind angesichts der Vorteile nicht zu teuer.


1

Matt, Sie wissen, dass ich VMware nicht verwende, aber ich habe immer "RAW" mit Xen verwendet. Ich bezweifle, dass Sie mit nur wenigen VMs, die leicht geladen sind, einen großen Leistungsunterschied feststellen werden. Wenn Sie jedoch anfangen, immer mehr Gäste anzusprechen, wenn sich alle diese Gäste im selben Dateisystem befinden, treten Probleme mit der Warteschlangentiefe auf. Dies gilt insbesondere für NFS-gesicherten Speicher. Es ist nicht so sehr, dass der NFS-Server die Probleme hat, aber die meisten NFS-Client-Implementierungen saugen.

Ich kenne keine gute Möglichkeit, die VMDKS zu synchronisieren, wenn Sie nach Redundanz suchen (San-Fehler). Wenn Sie jedoch Block-Geräte verwenden, haben Sie weiterhin die Möglichkeit, mit DRBD nur die VMs zu replizieren, die Sie replizieren möchten / müssen.


0

Ich denke, Sie sollten sich fragen, ob Sie jemals auf physische Server zurückgreifen möchten.

Wenn die Antwort vielleicht ist, sollten Sie sich vielleicht an RDM halten. ESXi mit RDM würde (glaube ich) erfordern, dass Sie etwas kaufen, damit Ihre Glasfaser funktioniert (auch hier ist esxi nicht 100% sicher).

Wir hatten mehrere Maschinen, die ich mit RDM schnell von physischen Servern auf ESX (4.0) umgestellt habe. Ich hatte eine Mischung aus Linux- und Windows-Maschinen (super einfach für beide Plattformen). Wir haben immer noch ein paar ältere FreeBSD-Versionen (6.0 und älter) auf physischen Servern, für die wir RDM nicht verwenden können, da der alte FBSD-Kernel dies nicht unterstützt. Es ging schnell und ich musste nichts anderes tun, als auf meine LUN zu zeigen und dann die VMWare-Tools zu installieren. Das Gehirn ist kinderleicht ... kein Konverter, keine Aufregung ...

Eine andere Frage, die Sie sich stellen sollten, lautet: "Welche Funktionen von VMWare möchte ich verwenden?"

Abhängig von Ihrer Antwort darauf haben Sie möglicherweise keine andere Wahl als VMDK. Wenn Sie Ihr SAN für Snapshots verwenden und sich beispielsweise nicht für die Verwendung von VMware interessieren.

Einige Anmerkungen Ich teile Ihnen mit, worauf wir bisher gestoßen sind. Vmotion funktioniert mit RDM und VMDK gleich gut, Speicher Vmotion hingegen funktioniert nur mit Nicht-RDM einwandfrei, und der Versuch, mit Vmotion-Speicher von RDM zu VMDK zu wechseln, ist zum Kotzen Verwenden Sie einfach den Konverter. Die meisten Linux-Distributionen haben ein Open-Source-Paket für VMware-Tools, wodurch die Installation von Tools kein Problem darstellt. Das Backup-Programm funktioniert wirklich gut und ist frei von VMware, macht aber nicht so viel, wie wir es gerne hätten. Ich empfehle dringend, eine Klasse von VMware zu nehmen. Der eine, den ich in Anspruch nahm, war eine Woche und jeden Cent wert. VMWare-Support ist fantastisch. Wenn Sie einen Supportvertrag erhalten und anrufen müssen, sind sie erstklassig. Ich bin frustriert, jemanden zu finden, der mir helfen kann (zu vielen Menüs). ), aber sobald ich sie bekomme, kommen sie IMMER mit einer schnellen und zuverlässigen Unterstützung.


Vielen Dank. Ich denke, das Training ist ein guter Vorschlag, aber wir können uns die Lizenzen für die Verwendung von Dingen wie vmotion nicht leisten, daher bin ich mir nicht sicher, was ich alles von der Trainingseinheit mit nach Hause nehmen könnte.
Matt Simmons
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.