VergeOS vSAN-Löschprozess
Erklärt, wie VergeOS vSAN das Löschen von VMs, Laufwerken und Tenants über Referenzzählung, deduplizierungsbewusste Blockbereinigung und Hintergrund-Garbage-Collection handhabt.
Grundlage der blockbasierten Architektur
VergeOS vSAN arbeitet mit einer blockbasierten Architektur wobei:
VM- und Tenant-Datenträger werden in mehrere Blöcke aufgeteilt
Jeder Block erhält einen eindeutigen kryptografischen Hash
Blöcke werden mithilfe hashbasierter Algorithmen über die Knoten verteilt
Sowohl primäre als auch redundante Kopien werden vorgehalten
Tenants arbeiten als LXC-Container mit ihren eigenen Speicherzuweisungen innerhalb des übergeordneten vSAN
Wie das Löschen funktioniert
1. System zur Referenzzählung
Wenn Sie in VergeOS eine VM, ein Laufwerk oder einen Tenant löschen:
Das System löscht die tatsächlichen Datenblöcke nicht sofort
Stattdessen entfernt es die Verweise auf diese Blöcke aus der Hash-Tabelle
Jeder Block führt Referenzzähler, die verfolgen, wie viele Objekte ihn verwenden
Der Tenant-Speicher folgt derselben Referenzzählung wie einzelne VMs, arbeitet jedoch innerhalb der Grenzen des LXC-Containers
2. Auswirkungen der Deduplizierung
Da VergeOS blockbasierte Deduplizierung:
Mehrere VMs können identische Blöcke (gleicher Hash) gemeinsam nutzen
Tenant-Speicher kann Blöcke mit dem übergeordneten System oder anderen Tenants teilen
Das Löschen einer VM oder eines Tenants verringert nur den Referenzzähler
Blöcke werden erst dann zum Löschen markiert, wenn der Referenzzähler null erreicht
3. Prozess der Speicherbereinigung
Das eigentliche Löschen erfolgt über Hintergrundprozesse:
vSAN-Durchlauf: Das System scannt regelmäßig nach nicht referenzierten Blöcken
Blöcke mit null Referenzen werden zur Rückgewinnung markiert
Der physische Speicherplatz wird dann freigegeben und verfügbar gemacht
Das Löschen von Tenants löst dieselbe Speicherbereinigung aus wie das Löschen von VMs
4. Sofortige vs. tatsächliche Rückgewinnung
Sofort: Die Benutzeroberfläche zeigt Speicherplatz sofort als „freigegeben“ an
Tatsächlich: Die Rückgewinnung des physischen Speicherplatzes erfolgt während der vSAN-Hintergrundoperationen
Laufwerk-/VM-Löschung
Wenn Sie eine VM oder ein Laufwerk löschen:
Verweise werden aus dem System entfernt
Einträge der Hash-Tabelle werden aktualisiert
Hintergrundprozesse übernehmen die eigentliche Bereinigung der Blöcke
Snapshots und Löschung
Das Löschen einer VM löscht auch ihre VM-Snapshots
Die VM bleibt jedoch in System-Snapshots erhalten, die während ihres Bestehens erstellt wurden
Szenarien beim Löschen von Tenants
Vollständiges Löschen eines Tenants
Beim Löschen eines Tenants:
Alle Tenant-VMs, Laufwerke und Metadatenverweise werden entfernt
Tenant-Speicherstufen werden aus dem übergeordneten vSAN entkoppelt
Dateisystem und zugewiesener Speicher des LXC-Containers werden bereinigt
Einträge der Hash-Tabelle für alle Tenant-Blöcke werden aktualisiert
Hintergrundprozesse übernehmen die Blockbereinigung für alle Tenant-Daten
Löschen einer Tenant-Speicherstufe
Beim Entfernen einer bereitgestellten Speicherstufe aus einem Tenant:
Alle Daten müssen von der Speicherstufe migriert werden vor dem Entfernen (VMs, Laufwerke, Dateien)
Die Zuweisung der Tenant-Speicherstufe wird entfernt aus der Bereitstellung des übergeordneten vSAN
Drosselungssteuerungen der Volume-Stufe werden freigegeben für diese spezifische Stufe
Einträge der Hash-Tabelle für Tenant-Blöcke auf dieser Stufe werden aktualisiert
Hintergrundprozesse übernehmen die Blockbereinigung für die entfernte Stufenzuweisung
Datenmigration erforderlich
Im Gegensatz zum vollständigen Löschen eines Tenants erfordert das Entfernen einer Speicherstufe eine manuelle Datenmigration zu anderen Stufen, bevor die Stufe vom Tenant außer Betrieb genommen werden kann.
Wichtige Überlegungen
Löschen von VMs/Laufwerken innerhalb von Tenants
Beim Löschen von VMs oder Laufwerken innerhalb eines Tenants:
Verweise werden aus der lokalen Hash-Tabelle des Tenants entfernt
Auch die Einträge der Hash-Tabelle des übergeordneten vSAN werden aktualisiert
Hintergrundprozesse übernehmen die eigentliche Bereinigung der Blöcke
Beziehung zwischen Tenant und übergeordnetem vSAN
Tenants arbeiten als LXC-Container innerhalb des übergeordneten vSAN - sie haben keine separaten vSANs
Tenant-Speicher wird über Dateisystemschichten des Containers aus den vSAN-Stufen des übergeordneten Systems zugewiesen
Die Block-Deduplizierung funktioniert über Tenant-Grenzen hinweg und zwischen Containern
Das übergeordnete System verwaltet die gesamte physische Speicherbereinigung für Tenant-Container
Snapshots und Tenant-Löschung
Das Löschen eines Tenants löscht auch seine lokalen VM-Snapshots
Der Tenant bleibt in den Snapshots des übergeordneten Systems erhalten, die während seines Bestehens erstellt wurden
System-Snapshots können die sofortige Rückgewinnung von Speicherplatz verhindern
Ein Tenant kann selbst nach dem Löschen aus System-Snapshots wiederhergestellt werden
Gemeinsam genutzte Objekte und Dateifreigabe
Dateien, die zwischen dem übergeordneten System und dem Tenant geteilt werden können Verweise behalten
Gemeinsam genutzte VM-Snapshots können eine vollständige Speicherbereinigung verhindern
Den Tenants bereitgestellte Dateien erzeugen zusätzliche Blockverweise
Berücksichtigen Sie gemeinsam genutzte Objekte bei der Schätzung der Speicherrückgewinnung
Isolierung des Tenant-Speichers
Jeder Tenant hat dedizierte Speicher-Volumes mit Verschlüsselungsunterstützung innerhalb ihres LXC-Containers
Netzwerk- und administrative Trennung beeinträchtigt die vSAN-Blockfreigabe zwischen Containern nicht
Die Speicherisolierung ist logisch durch LXC-Containerisierung, nicht physisch auf Block-Ebene
Dateisystemschichten des Containers bieten Tenant-Trennung, während zugrunde liegende Blöcke gemeinsam genutzt werden
Erweiterte Szenarien zum Löschen von Tenants
Löschen verschachtelter Tenants
Für Tenants, die ihre eigenen Sub-Tenants hosten:
Sub-Tenants arbeiten als verschachtelte LXC-Container
Das Löschen von Sub-Tenants folgt derselben Referenzzählung innerhalb der Containerhierarchie
Der Container des übergeordneten Tenants verwaltet die Speicherbereinigung der Sub-Tenants
Es können mehrere Ebenen der Containerisierung und Referenzzählung gelten
Bereinigungsprozesse arbeiten vom innersten zum äußersten Container
Auswirkungen der Wiederherstellung eines Tenants auf das Löschen
Wiederherstellung gelöschter Tenants aus System-Snapshots erstellt Verweise neu
Zuvor „gelöschte“ Blöcke können wieder aktiv werden
Die Speichernutzung kann steigen bei der Wiederherstellung von Tenants
Hintergrund-Bereinigungsprozesse passen sich an wiederhergestellte Verweise an
Sicherheitsmechanismen
Datenintegrität beim Löschen von Tenants
Das System gewährleistet die Datenintegrität bei allen Löschvorgängen
Redundante Kopien verhindern Datenverlust bei der Bereinigung von Tenants
Hash-Validierung verhindert das versehentliche Löschen referenzierter Blöcke
Die Blockfreigabe über Tenant-Grenzen hinweg bleibt erhalten bis alle Verweise entfernt sind
Voraussetzungen für das Löschen von Tenants
Tenants und die entsprechenden Tenant-Netzwerke müssen ausgeschaltet sein vor dem Löschen
Alle Tenant-Knoten müssen offline sein
Der ursprüngliche Tenant-Knoten kann nicht gelöscht werden während der Tenant-Container aktiv ist
Das System prüft, dass keine aktiven Verweise vorhanden sind, bevor es das Löschen des Containers zulässt
Überwachung des Löschens von Tenant-Speicher
Sie können den Prozess über Folgendes überwachen:
Überwachung des übergeordneten Systems
Speicher-Dashboard für die gesamte Auslastung der Stufen
vSAN-Diagnose für den Status der Hintergrundoperationen
Systemprotokolle für Details zum Löschen und Bereinigen von Tenants
Tenant-Statistiken die Trends beim Speicherverbrauch anzeigen
Überwachung auf Tenant-Ebene (vor dem Löschen)
Tenant-Dashboard für die interne Speichernutzung
Tenant-Verlauf für Verbrauchsstatistiken
Interne vSAN-Statistiken innerhalb der Tenant-Umgebung
Überprüfung nach dem Löschen
Auslastung der Speicherstufe sollte im Laufe der Zeit abnehmen
vSAN-Durchlaufstatistiken zeigen den Fortschritt der Bereinigung
Überprüfung der Referenzanzahl über vSAN-Diagnose
Problembehebung
Fehlerbehebung bei langsamer Rückgewinnung
Prüfen Sie auf verbliebene System-Snapshots die Tenant-Daten enthalten
Überprüfen Sie gemeinsam genutzte Objekte ordnungsgemäß bereinigt werden
Prüfen Sie Systemprotokolle auf vSAN-Operationenfehler
Verwenden Sie vSAN-Diagnose um den Fortschritt der Bereinigung zu überwachen
Zuletzt aktualisiert
War das hilfreich?