Ist ReFS bereit, Produktions-VHDXs auf Hyper-V 2012 r2-Clustern zu hosten?

14

Eine der neuen Funktionen, die nicht in allen Beiträgen zu "Windows Server 2012 r2" aufgeführt sind, ist, dass das Clustering jetzt CSVs unterstützt, die mit ReFS formatiert sind. Daher möchte ich natürlich die CSVs, in denen ich die VHDX-Dateien speichere, in ReFS ändern. Die VHDX-Dateien werden jedoch zum Speichern von Datenbankdateien in VMs verwendet, auf denen SQL Server 2012 ausgeführt wird.

Der Gedanke ist, dass ich dann RAID auf Hardware-Ebene haben würde, um vor einem sofortigen Ausfall zu schützen. Darüber hinaus werden sie vom realen Betriebssystem (Hyper-V Server 2012 r2) als ReFS-Volumes verwaltet, wodurch die Daten auf diesen Laufwerken vor Bitrot geschützt werden. Schließlich handelt es sich bei VHDXs um NTFS-Laufwerke. Das bedeutet, dass die unterstützten Anwendungen weiterhin das Dateisystem verwenden, auf das sie angewiesen sind.

Bisher kann ich nur feststellen, dass dies technisch unterstützt wird, da Hyper-V meldet, dass Sie die Einstellung "Datenintegrität" in der VHDX-Datei (Cmdlet Set-FileIntegrity) deaktivieren müssen, wenn Sie versuchen, sie von zu verwenden das ReFS-Volume. Aber solider kann ich keine Informationen finden. Ist es wirklich bereit für die Hauptsendezeit oder ist es effektiv nur eine technische Vorschau für das Clustering?

Edit: 2014-01-22

Ich fand, dass ReFS nur Bitrot von selbst erkennt. Damit ReFS erkannt und automatisch repariert werden kann, müssen Sie auch Speicherbereiche verwenden, um ein RAID-1-Volume mit mehreren ReFS-Laufwerken zu erstellen. Es sieht also so aus, als würde sich meine Lösung dahingehend entwickeln, dass das Hardware-RAID seine Festplatten als JBOD präsentiert. Dann würde sich Windows um den RAID-1-Teil kümmern. Ich werde in den nächsten Monaten testen, ob dies eine brauchbare Einrichtung in der Produktion ist.

Granger
quelle

Antworten:

14

Die Antwort ist ein sehr klares "Nein" .

REFS nur erkennt Bit rot in Benutzerdaten , wenn die betreffende Datei hat „Integrität Streams“ aktiviert (Quellen: offizielle TechNet - Dokumentation , jeder Lieblings Blog - Post , und eine andere Stelle ). Oh, und Sie verlieren auch COW (Copy-On-Write), wenn Integrity Streams deaktiviert sind. Da Sie eine VHDX-Datei, die sich auf einem ReFS-Volume befindet, nur verwenden können, wenn Integrity Streams deaktiviert ist, können Sie eine VHDX-Datei nicht vor Bit Rot schützen. Spiel ist aus.

Es ist, als ob dieselbe Person, die dachte, ein Clustered Storage Space Pool sollte mindestens 3 Festplatten benötigen, auch diejenige war, die die Entscheidung getroffen hat, das Beste aus ReFS herauszuholen, und dann die Hyper-V-Leute dazu gebracht hat, es zu fordern deaktiviert sein. Es ist schwer vorstellbar, dass sich so viel "Dummheit" auf Kernteams verteilt.

Nebenkosten

Während ich einige Tests durchführte, fand ich Folgendes nützlich für Leute, die immer noch vorankommen möchten:

  • Sie können eine in Verwendung befindliche VHDX-Datei nur dann mit SLM (Storage Live Migrate) auf ein ReFS-Mirror-Volume übertragen, wenn Ihr Ziel ein Ordner ist, in dem Integrity Streams deaktiviert wurden.
    • Wenn Sie versuchen, SLM auf einem ReFS-Spiegel auszuführen, auf dem Integrity Streams aktiviert sind , wird eine Fehlermeldung angezeigt: "Das Ziel '...' ist ungültig, da es mit dem Integrity Stream-Attribut konfiguriert ist. Wählen Sie ein Ziel, das nicht über das Integritätsdatenstromattribut verfügt, um fortzufahren. " Beim Versuch über PowerShell wird derselbe Fehler angezeigt.
  • Das Kopieren / Verschieben einer Datei auf einen ReFS-Spiegel führt dazu, dass das "Integritätsbit" der Datei so gesetzt wird, dass es mit der Einstellung aus dem Zielordner übereinstimmt.
  • Sie können das Integritätsbit einer in Verwendung befindlichen VHDX nicht abrufen / setzen.
  • Ansonsten scheint die Leistung eines ReFS-Mirror-Volumes (meiner Meinung nach natürlich) für die Produktion gut genug zu sein. Mein "Unterschiede" -Test ist hier, wenn es jemanden interessiert.
Granger
quelle
3
Ich würde nicht annehmen, dass die Ingenieure bei MS dumm sind. Vielmehr gibt es einige schwierige Probleme, die bei Ihrer gewünschten Lösung auftreten und die entweder nicht rechtzeitig gelöst werden konnten oder nicht zuverlässig gemacht werden konnten.
Andy
Wenn Sie bemerken, ist dies nicht "dumm". Linux-Systeme haben ähnliche Einschränkungen, erzwingen diese jedoch nicht. Sicher, Sie können ein qcow2-Image mit aktivierter Prüfsumme auf ein BTRFS-Volume legen - aber es wird für die meisten Workloads wie Müll ablaufen. Deaktivieren Sie die Prüfsumme, und es ist viel besser - dennoch erhalten Sie die Lautstärke-Funktionen usw. von BTRFS. Wenn Sie sich darüber Sorgen machen, fügen Sie eine Prüfsumme für ReFS in das VM-Image ein.
Spooler
0

Wie Sie festgestellt haben, wird ReFS mit deaktivierter Datenintegrität unterstützt. Dies bedeutet, dass Ihre VHD nicht "gegen Bitrot geschützt" ist, wie Sie oben sagen. Das Dateisystem selbst wäre, aber nicht die VHD selbst. Wenn diese Schutzmaßnahme für Sie von Interesse ist, setzen Sie ReFS ein.

Jake Oshins
quelle
Sie haben beide Recht und Unrecht, wenn ich bedenke, was "schützen" in diesem Fall bedeutet. ReFS selbst erkennt und benachrichtigt Sie über Bitrot, repariert es jedoch nicht automatisch für Sie. Um ReFS wirklich vor Bitrot zu schützen (erkennen und automatisch reparieren), müssen Sie mit Storage Spaces ein RAID-1-Volume auf Betriebssystemebene aus mehreren ReFS-Laufwerken erstellen. ... daher funktioniert mein ursprüngliches Szenario nur, wenn ich mehr Speicherplatz opfere (RAID-1 über RAID-1).
Granger