Festplatten in einem Speicherpool neu ausgleichen?

13

Ich habe 2x 1,5 TB Laufwerke in einem (Zwei-Wege-Spiegelspeicherpool). Dieser Pool hat kürzlich die Kapazität von 100% erreicht, was bedeutet, dass auf beiden Laufwerken noch 0% Speicherplatz vorhanden ist.

Ich habe dem Speicherpool 2x 4-TB-Laufwerke hinzugefügt, aber der Speicherplatz versucht nicht, die Datenträgernutzung auszugleichen. Nachdem ich hinzugefügt habe, sehe ich jetzt:

My storage space pool : Physical drives
1.5 TB HDD-1 : 100% used
1.5 TB HDD-2 : 100% used
4.0 TB HDD-3 : 0% used
4.0 TB HDD-4 : 0% used

Scheint, dass sich alle zukünftigen Schreibvorgänge jetzt auf die neueren Laufwerke konzentrieren würden. Ich hatte damit gerechnet, dass Storage Space get busydie neuen Laufwerke sehen und neu ausbalancieren würde - aber kein solches Glück.

Wie kann ich die Nutzung neu verteilen, damit meine Lese- / Schreibvorgänge ungefähr proportional / gleichmäßig auf alle Laufwerke in meinem Speicherpool verteilt werden?

Zu Ihrer Information, dies ist unter Windows Server 2012 R2, aber es ist derselbe Speicherplatz wie unter Windows 8.1

DeepSpace101
quelle

Antworten:

10

Wiederbelebung dieser alten Frage mit etwas, das in den kommenden Betriebssystemen Windows 10 und Windows Server 2016 endlich funktioniert.

Microsoft hat Optimize-StoragePoolin Windows 10 und Windows Server 2016 einen PowerShell-Befehl hinzugefügt , der den Speicherplatz für einen gesamten Pool neu verteilt.

Es ist so einfach wie das Öffnen einer administrativen PowerShell-Konsole und das Ausführen Optimize-StoragePool -FriendlyName "TheNameOfYourStoragePool"

Ich darüber gebloggt hier .

Microsoft hat das Feature erst vor wenigen Tagen im Rahmen des neuen Storage Spaces Direct angekündigt, aber es funktioniert auch mit normalen Storage Spaces einwandfrei.

Stefán Jökull Sigurðarson
quelle
Vielen, vielen Dank dafür. Ich habe lange nachgefragt, wie dies in Windows 10 funktionieren wird, und ich bin froh, dass es aktualisiert wurde!
Topherg
1
Es schien gut zu funktionieren für die Tests, die ich gemacht habe. Ich habe ein seltsames Verhalten bei Paritätspools beobachtet, aber ich würde nicht ausschließen, dass ich einfach etwas falsch gemacht habe. Ich werde es in Kürze auf meinem "NAS" (neu verwendeter alter HP MediaSmart Server-Computer) einrichten und den Blog dann mit weiteren Informationen aktualisieren.
Stefán Jökull Sigurðarson
@ StefánJökullSigurðarson: Kannst du ein oder zwei Sätze über das seltsame Verhalten schreiben, bis dein Blogpost online geht?
DeepSpace101
1
Ich vermute, es ist zweifelhaft, ob Microsoft jemals einen Backport oder eine ähnliche Funktionalität wie Windows 8 / 8.1 / 2012/2012 R2 bereitstellen würde. Es wäre schön, dies in 2012 R2 tun zu können, da ich ein ähnliches Problem habe.
James White
3
"Pool optimieren wird nur mit Simple- oder Mirror-Spaces unterstützt; Parity-Spaces werden nicht unterstützt "
Ian Boyd,
7

Ich hatte ein ähnliches Problem, als ich Storage Spaces (in Windows 8.1) entdeckte und meine vorhandenen Dateien migrierte. Ich habe mit den Laufwerken angefangen:

  • Aaron: 500 GB, 95% verwendet
  • Bruce: 1 TB, 70% verwendet
  • Craig: 1 TB, 55% verwendet
  • Devin: 1 TB, 30% verwendet
  • Ethan: 3 TB, 50% verwendet
  • Felix: 3 TB, 0% verwendet

Nachdem ich alles auf die 2 3-TB-Laufwerke verlagert hatte, verband ich die verbleibenden 4 Laufwerke mit Speicherplätzen, erstellte einen Speicherplatz und kopierte die Dateien von den 2 bevölkerten Laufwerken in den Speicherplatz (Ausfallsicherheit der Parität). Nach dem Hinzufügen der beiden Laufwerke zum Speicherplatz (nacheinander) waren alle Laufwerke zu etwa 50% ausgelastet, aber die 3-TB-Laufwerke waren zu 20% und 0% ausgelastet, je nachdem, wann sie gelöscht und dem Pool hinzugefügt wurden.

Ich habe versucht, ein paar Tage zu warten, um zu sehen, ob sich das System selbst wieder ausbalanciert, aber es ist nichts passiert.

Schließlich stellte ich fest, dass ich zwei Möglichkeiten hatte:

  1. Erstellen Sie einen zweiten Speicherplatz und kopieren und löschen Sie die Dateien nacheinander von einem zum anderen (nicht sicher, ob das Schneiden dasselbe bewirkt, aber ich ging davon aus, dass das System dies erkennen und einfach neu beschriften würde, wenn ein Schnitt ausgeführt würde die Platten, anstatt sie zu bewegen, aber ich kann nicht für die Gültigkeit dieser Aussage bürgen)
  2. Schalten Sie eine Diskette offline und führen Sie sie erneut ein (ERFORDERT EINE BESTÄNDIGKEIT)

Ich habe mich für die zweite Option entschieden, aber in früheren Tests schien die erste Option zu funktionieren, allerdings sehr langsam.

Sobald sich alle meine Dateien und Datenträger im Pool befunden haben, habe ich eine der volleren Datenträger physisch getrennt (USB in meinem Fall, in Ihrem Fall könnten Sie das Gerät wahrscheinlich einfach deaktivieren). Storage Spaces zeigte dann einen Fehler bezüglich "Reduced Resiliency" an und gab mir die Möglichkeit, die Festplatte aus dem Pool zu entfernen, was ich auch getan habe.

Ich habe dann mehrere Stunden gewartet (habe morgens angefangen, bin zur Arbeit gegangen, bin zu einem fertigen Bildschirm zurückgekehrt), während Storage Spaces dann die Räume repariert hat. Nachdem der Speicherplatz repariert wurde, habe ich den Datenträger erneut angeschlossen, formatiert und wieder in den Pool eingefügt.

Ich wiederholte diesen Schritt für alle Laufwerke, die ich neu ausgleichen wollte, und arbeitete in einer Reihenfolge von der größten zur kleinsten Kapazität, sodass mein kleines 500-GB-Laufwerk als letztes neu hinzugefügt wurde.

Ja, dies bedeutet, dass letztendlich noch ein Laufwerk übrig ist, das zu 0% ausgelastet ist. Mit der Zeit wurde es jedoch schnell wieder auf den durchschnittlichen Auslastungsgrad des gesamten Pools aufgefüllt

topherg
quelle
Angenommen, Sie haben nur eine virtuelle Festplatte. Option 1 würde einen freien Speicherplatz erfordern, der dem doppelten Ihres Volumens entspricht. Denn selbst wenn Sie Thin Provisioning verwenden, gibt die "alte" vhdd keinen gelöschten Speicherplatz frei. In verschiedenen Szenarien ist dies nicht möglich. Option 2 ist provie nicht wirklich eine echte Neuausrichtung, da die Festplatte Sie wieder einführen letzte wird immer leerer als die anderen Scheiben.
voraussichtlich
@dognose Obwohl diese beiden Punkte von Vorteil sind, ist dies, bis Microsoft eine systemeigene Methode für die Neuverteilung von Platten einführt, leider die nächste, die wir erreichen können. In Bezug auf Option 2 habe ich Aaron (aufgrund eines Datenträgerfehlers)
verworfen
1

In Windows 10 ist der Befehl " Optimize Pool" direkt in der GUI verfügbar:

Bildbeschreibung hier eingeben

Bildbeschreibung hier eingeben

Windows Server

Die Möglichkeit, einen Pool zu optimieren, wurde mit Windows Server 2016 hinzugefügt. Im Gegensatz zu seinem Gegenstück zum GUI-basierten Arbeitsstationsbetriebssystem verfügt Windows Server jedoch nicht über eine GUI, mit der die Speicherplatzoptimierung verwaltet werden kann. Stattdessen müssen Sie Powershell verwenden:

> Get-StoragePool

FriendlyName              OperationalStatus HealthStatus IsPrimordial IsReadOnly     Size AllocatedSize
------------              ----------------- ------------ ------------ ----------     ---- -------------
Primordial                OK                Healthy      True         False      10.23 TB       5.46 TB
Silk Road Pool            OK                Healthy      False        False       5.45 TB       4.11 TB

> Optimize-StoragePool -FriendlyName "Silk Road Pool"

Beachten Sie jedoch auch, dass die Daten unter Windows Server 30 Minuten nach dem Hinzufügen eines Laufwerks automatisch neu ausgeglichen werden .

Bild

Sie können den Status der Optimierung über Powershell abrufen (Microsoft hasst wiederum grafische Benutzeroberflächen):

> Get-StorageJob

Name      IsBackgroundTask ElapsedTime JobState PercentComplete BytesProcessed BytesTotal
----      ---------------- ----------- -------- --------------- -------------- ----------
Optimize  False            00:12:21    Running  11
Rebalance True             00:00:00    Running  11              114085068800   1020323168256

Hinweis: Die Möglichkeit zum erneuten Anzeigen / Optimieren funktioniert nur für Windows Server 2016 / Windows 10-Bereiche. Wenn Sie einen in Windows Server 2012 / Windows 8 erstellten Speicherplatz verwenden, müssen Sie den Speicherplatz "aktualisieren".

Ian Boyd
quelle