Ich baue eine virtuelle Umgebung für ein kleines Unternehmen. Es basiert auf einem einzelnen ESXi 5.1-Host, auf dem etwa ein halbes Dutzend VMs gehostet werden. Ich habe jedoch einige Zweifel, wie der Speicher implementiert werden soll. Ich möchte natürlich, dass der Datenspeicher fehlertolerant ist, aber ich kann weder die Mittel für einen separaten Speichercomputer noch teure Hardware-RAID-Lösungen erhalten, daher möchte ich wahrscheinlich Software-RAID (lvm / mdadm) verwenden. Wie kann dies umgesetzt werden? Meine einzige Idee bisher wäre, eine VM zu erstellen, die den Speicheradapter als Passthrough hat, ein Software-RAID auf die Festplatten legt und dann die resultierenden Volumes dem ESXi-Host "zurück" präsentiert, der dann einen Datenspeicher erstellt, aus dem andere VMs Lassen Sie sich ihren Speicher präsentieren.
Das scheint ein bisschen rundherum zu sein. Habe ich bessere Möglichkeiten? Aus meiner Forschung geht hervor, dass Passthrough mit einigen Nachteilen verbunden ist, wie z. B. keine Unterbrechung / Wiederaufnahme usw.
quelle
Antworten:
ESXi ist kein Allzweckbetriebssystem und sollte nicht in Betracht gezogen werden. Halten Sie sich unbedingt an die Hardwarekompatibilitätsliste und verwenden Sie daher einen getesteten und zugelassenen Hardware-RAID-Adapter. Wenn Sie sich für etwas anderes entscheiden, werden Sie sich den Schwaden anderer anschließen, die Abstriche machen und sich hier beschweren, dass ihre Systeme nicht funktionieren oder Daten verloren haben - wir bekommen VIELE davon.
quelle
Ihre allgemeine Idee ist genau richtig. Ich würde persönlich vorschlagen, ZFS mit Solaris oder FreeBSD zu verwenden, aber mdadm könnte auch funktionieren. Vielleicht, obwohl Sie nicht alle Vorteile erhalten, über die ich in diesem Beitrag schreibe, nehmen Sie das als Haftungsausschluss. Dieser Beitrag wird ziemlich lang sein, ich entschuldige mich im Voraus für die Textwand.
Es gibt einige, insbesondere:
Es gibt auch allgemeine Belästigungen, die nichts mit Passthrough zu tun haben:
Abgesehen von technischen Problemen müssen Sie über Ihre Ziele und die Wege zu deren Erreichung nachdenken. Dies bestimmt die Praktikabilität Ihrer gewählten Lösung sowie deren Vor- und Nachteile und Ihr Gesamtergebnis (Erfolg oder Misserfolg). Dies hängt weitgehend von den Anforderungen des Unternehmens selbst ab. Einige Überlegungen für oder gegen Ihre vorgeschlagene Lösung aus geschäftlicher Sicht:
Sie sollten diese Punkte auf jeden Fall berücksichtigen. Ihre Lösung kann nur erfolgreich sein, wenn Sie die Ziele erreichen. Dabei spielt es keine Rolle, welche Wahl die Mehrheit trifft, sondern nur, was a) technisch möglich ist, b) innerhalb des Budgets, c) die Ziele des Unternehmens zu erreichen. Wenn alle diese Punkte erfüllt sind und Sie sich noch entscheiden müssen, wählen Sie die einfachere / weniger komplizierte Lösung (KISS). Wenn sie genauso einfach sind, entscheiden Sie sich für die, die Ihnen mehr Geld und / oder Glück bringt.
quelle
Ich würde Sie entlassen, wenn ich ein kleines Unternehmen wäre und Sie so etwas einsetzen würden ... Dies ist jedoch ein allgemeines Thema. VMware verfügt über eine genau definierte Hardwarekompatibilitätsliste . Wenn Sie jedoch als eigenständiger Server verwendet werden, benötigen Sie Hardware-RAID. Nicht-RAID-Festplatten funktionieren ebenfalls, aber das ist nicht das, was Sie wollen. Also meine Fragen:
Es ist ein Fall von VMware-Missbrauch. Software-RAID wird nicht unterstützt. Ich würde zum Kunden zurückkehren und den Build / die Anforderungen überarbeiten.
"Wie viel sind Ihre Daten wert?"
quelle
In diesem Blog finden Sie ein Beispiel für die Verwendung von ZFS als Hintergrundspeicher: http://blog.laspina.ca/ubiquitous/encapsulating-vt-d-accelerated-zfs-storage-within-esxi
Davon abgesehen sind die Warnungen zur Verwendung von Standardhardware gültig. ESXi ist ziemlich wählerisch.
quelle
esxi funktioniert nicht ohne ein REAL HW-basiertes RAID für den Datenspeicher . Nicht einmal ein BIOS-basierter Software-Raid wird funktionieren.
Habe meinen Raid Controller Adaptec 6405e für 100 $ bei Ebay bekommen!
ABER in Bezug auf den nächsten Teil,
Mein "FileServer" besteht aus 4x5 TB Festplatten, die direkt an eine VM übergeben werden . Ich habe dann mdadm Raid 5 für insgesamt ca. 14 TB erstellt und dieses über NFS auf alle meine VMs exportiert . Ungefähr 15/20 zu jeder Zeit, mit 10/20 Entwickler-VMs, die ausgeschaltet sind, sofern sie nicht verwendet werden. Das hat bei mir gut funktioniert, aber bei einer großen Gruppe von Benutzern nicht. Tatsächlich bin ich wirklich der einzige lokale Benutzer, aber ich hoste Websites, die etwas Verkehr erzeugen, aber auch hier sind sie meistens statisch.
Eine gute Frage, die Sie in diesem Szenario stellen sollten, wenn Sie diese Idee verwenden möchten, ist, wofür ist der FileServer gedacht?
In meinem Fall hosten 90% meiner VMs, wenn nicht alle, alle erforderlichen Daten in der VM (Linux) und sind weniger als 20 GB groß. Ich verwende den FileServer als zentrales Repo für Backups. Außerdem lesen alle Medienanwendungen wie Plex vom FileServer, und mein P2P speichert direkt auf dem FileServer, aber keiner meiner Hosts verfügt über eine Datenbank oder etwas, das sich auf dem FileServer befindet. Sie führen jedoch alle ihre Sicherungen auf dem FileServer durch. Mein Dateiserver ist meine einzige VM, auf der zwei Dienste gehostet werden. Dies ist NFS für VMs und SMB für Windows-Zugriff über die GUI. Das hat bei mir wunderbar funktioniert. Ich habe den FileServer auch über NFS als Datenspeicher bereitgestellt und kann ISO-Werte innerhalb des Datenspeichers auf neue VMs bereitstellen. Ich sichere auch OVA-Snapshopts über SMB in Windows direkt auf dem FileServer. Das Ausführen von VMs auf einem exportierten NFS-Software-Raid wäre verrückt, aber das Exportieren eines großen NFS-Datenspeichers zurück auf den esXi-Host hat viele Vorteile.
quelle
In ESXi gibt es Software-RAID-Unterstützung für den HPE Dynamic Smart Array Controller. Ich benutze es auf einem DL20 g9 mit gespiegelten Enterprise-SSDs und es funktioniert großartig.
http://www8.hp.com/us/en/products/servers/solutions.html?compURI=1499005#tab=TAB4
Das heißt, ich habe gerade ein Smart Array 440 von eBay für 200 US-Dollar gekauft. Dies ist Hardware-RAID, und zwar aus keinem anderen Grund als wenn Sie die Wahl haben. Gehen Sie immer auf Hardware.
quelle
Ich bin ein großer Fan von Software-RAIDs (Linux), weil sie flexibel, kostengünstig, einfach zu verwalten und vollständig vorhersehbar sind. In realen Szenarien schlagen sie immer die Geschwindigkeit von Hardware-RAID-Controllern der Mittelklasse. Das EINZIGE Problem - zuverlässiges RDM oder Festplattencontroller-Passthrough zu einer VM, auf der NAS ausgeführt wird. Die meisten kostengünstigen LSI-Controller im IT-Modus machen den Trick. Ich erhalte erstaunliche Geschwindigkeit und Stabilität mit der Software RAID10 auf einem Openmediavault-basierten virtuellen NAS (Vmxnet3-Adapter, Paravirtual Disk Controller), der den Datenspeicher für andere VMs auf demselben Host über NFS exportiert (10 Gbit interner Link).
Es ist nur eine Frage des Budgets. Wenn Ihr Budget unbegrenzt ist, wählen Sie RAID-Adapter der Spitzenklasse von Whitelist. Wenn Sie etwas Geld sparen möchten und mit ESXi- und NAS-Interna vertraut sind, sollten Sie Software-Raids durchführen.
quelle
Ich sehe alle negativen Kommentare und stelle fest, dass diese Leute nicht wissen, wie VSAN funktioniert. jemanden entlassen , nur weil er eine Technologie verwendet, die VMware in seinem eigenen Produkt unterstützt? Um ehrlich zu sein, ist dies eher ein Hinweis auf den Mangel des Managers bei der Suche und Annahme von Ratschlägen oder beim kontinuierlichen Lernen.
Informieren Sie sich über das alte PMS-Projekt (Poor Man's SAN), bei dem zwei Hosts mit Passthrough auf den Festplattengeräten die Volumes glusterfs und den resultierenden Blockspeicher über iSCSi an denselben Cluster zurücksenden. Es war genial.
quelle
Ich denke, dass Ihre Idee ganz gut funktionieren könnte. Siehe beispielsweise https://communities.vmware.com/message/2368577#2368577
Schade, dass ESXi mdadm nicht unterstützt. Ihre Idee klingt also rundherum, aber ich gehe davon aus, dass, wenn Sie alles richtig konfigurieren, nur ein sehr geringer Leistungsaufwand anfällt. Lesen Sie den folgenden Artikel über die Leistung: https://www.linux.com/news/hardware/servers/8222-benchmarking-hardware-raid-vs-linux-kernel-software-raid
Wenn Sie ein kleines Setup haben, wird mdadm wahrscheinlich nur 5-25% des einzelnen CPU-Kerns verwenden. Aus eigener Erfahrung hatte ich eine sehr geringe CPU-Auslastung von mdadm auf einem CentOS-Server mit RAID 5, der als NFS-Freigabe über ein 1-Gbit-Netzwerk mit ESXi verbunden war. Wir hatten jedoch ein Problem mit VMs, die schwere Festplatten verwendeten (hauptsächlich nicht wegen Software-RAID, sondern wegen NFS). Weitere Informationen finden Sie in meiner anderen Antwort: https://serverfault.com/a/608120/118677 .
Ein weiterer Vorteil eines solchen Setups besteht darin, dass mdadm gut dokumentiert ist und es bei einem Serverausfall einfach ist, das Array wieder mit einem anderen Server zu verbinden.
Sie sollten jedoch berücksichtigen, dass bei der üblichen Einrichtung von ESXi nicht erwartet wird, dass sich der Datenspeicher auf demselben Server wie ESXi befindet. In Ihrem Fall kann auf Ihren Datenspeicher nicht mehr zugegriffen werden, wenn die Festplatte mit ESXi und / oder "VM mit dem Speicheradapter als Passthrough" ausfällt (und natürlich nicht in RAID). Wenn Sie den Datenspeicher getrennt haben, benötigen Sie im Fehlerfall weniger Schritte, um Ihr Setup wiederherzustellen. Daher denke ich, dass Sie erneut versuchen sollten, Mittel für einen separaten Datenspeicher-PC zu finden. Es könnte sich um einen gebrauchten PC mit 1-2 GHz CPU und SATA-Controller handeln, auf dem Sie das Linux-Betriebssystem mit mdadm einrichten können.
PS Vergessen Sie nicht, die Überwachung (z. B. E-Mail-Benachrichtigungen) über den Status Ihres mdadm RAID-Arrays einzurichten.
quelle
Ich habe ESXi geliebt, als ich es zum ersten Mal verwendet habe. Ich mag es immer noch, aber ich liebe es nicht mehr und teste Proxmox als Alternative.
Was ich erfahre, ist, dass VMWARE natürlich Geld verdienen möchte, und sie haben wahrscheinlich eine Vereinbarung mit Hardwareanbietern getroffen, nur Hardware der High-End-Serverklasse zu unterstützen, die ihren Umsatz im Gegenzug für Rückschläge von diesen Anbietern steigert. Ich weiß, dass eine andere plausible Erklärung darin besteht, ihre zu verwalten Support-Overheads, aber ich denke, es geht mehr darum, Leute zu Hardware der Serverklasse zu "ermutigen".
Ich habe Software-Raid in verschiedenen Situationen verwendet und halte es für genauso zuverlässig, wenn auch nicht zuverlässiger als Hardware-Raid. Ich denke, der einzige solide Vorteil von Hardware-Raid ist die Sicherung der Batterie, die es ermöglicht, Schreibvorgänge bei Stromausfällen abzuschließen.
Meine Heimsysteme sind jedoch an USV-Geräte angeschlossen, und meine Geschäftssysteme in Rechenzentren verfügen über USV, die vom Rechenzentrum bereitgestellt werden. Ich halte Dinge wie Software-ZFS-Raid für viel sicherer als etwas wie ein HP Smartarray, ebenso wie den Bitrot-Schutz sowie den direkten Zugriff auf den SMART-Status der Festplatte.
Dies bedeutet jedoch nicht, dass ich niemals Hardware-Raid verwende. Wenn der Kunde dies direkt anfordert oder über ein ansehnliches Budget verfügt, das dafür bezahlt, setze ich es ein, aber ich habe nicht die Einstellung, wo ich einen armen Kunden habe Sagen Sie ihnen, dass sie umdenken müssen, weil alles andere als Hardware-Raid Selbstmord ist, das ist nur schwachsinnig.
quelle