|
Dieses Dokument wurde mithilfe automatisierter maschineller Übersetzungstechnologie übersetzt. Wir bemühen uns um korrekte Übersetzungen, übernehmen jedoch keine Gewähr für die Vollständigkeit, Richtigkeit oder Zuverlässigkeit der übersetzten Inhalte. Im Falle von Abweichungen ist die englische Originalversion maßgebend und stellt den verbindlichen Text dar. |
Automatischer Replikat-Lastenausgleich
Wenn Replikate ungleichmäßig auf Knoten oder Zonen geplant sind, ermöglicht die SUSE Storage Replica Auto Balance Einstellung die Replikate für eine automatische Balancierung, wenn ein neuer Knoten dem Cluster zur Verfügung steht oder wenn die Replikatzahl für ein Volume aktualisiert wird.
Einstellungen für den automatischen Replikat-Lastenausgleich
Globale Einstellung
SUSE Storage unterstützt 3 Optionen für die globale Einstellung des automatischen Replikat-Lastenausgleichs:
-
disabled. Dies ist die Standardoption, bei der kein automatischer Replikat-Lastenausgleich durchgeführt wird. -
least-effort. Diese Option weist SUSE Storage an, Replikate für minimale Redundanz zu balancieren. Zum Beispiel, nach dem Hinzufügen von Knoten-2 wird ein Volume mit 4 unbalancierten Replikaten nur 1 Replikat ausbalanciert.node-1 +-- replica-a +-- replica-b +-- replica-c node-2 +-- replica-d
-
best-effort. Diese Option weist SUSE Storage an, zu versuchen, Replikate für eine gleichmäßige Redundanz zu balancieren. Zum Beispiel, nach dem Hinzufügen von Knoten-2 wird ein Volume mit 4 unbalancierten Replikaten 2 Replikate ausbalanciert.node-1 +-- replica-a +-- replica-b node-2 +-- replica-c +-- replica-d
SUSE Storage plant die Replikate nicht zwangsweise in einer Zone neu, in der nicht genügend Knoten vorhanden sind, um eine gleichmäßige Ausbalancierung zu unterstützen. Stattdessen wird SUSE Storage die Replikate auf Knotenebene neu verteilen, um eine Balance zu erreichen.
Volumespezifische Einstellungen
SUSE Storage unterstützt auch die spezifische Einstellung von Volumes für Replica Auto Balance. Die Einstellung kann in volume.spec.replicaAutoBalance angegeben werden, dies überschreibt die globale Einstellung.
Es stehen 4 Optionen für die individuelle Volumeneinstellung zur Verfügung:
-
Ignored. Dies ist die Standardoption, die SUSE Storage anweist, von der globalen Einstellung zu erben. -
disabled. Diese Option weist SUSE Storage an, keine automatische Replikat-Balancierung durchzuführen. -
least-effort. Diese Option weist SUSE Storage an, Replikate für minimale Redundanz zu balancieren. Zum Beispiel, nach dem Hinzufügen von Knoten-2 wird ein Volume mit 4 unbalancierten Replikaten nur 1 Replikat neu balancieren.node-1 +-- replica-a +-- replica-b +-- replica-c node-2 +-- replica-d
-
best-effort. Diese Option weist SUSE Storage an, zu versuchen, Replikate für eine gleichmäßige Redundanz zu balancieren. Zum Beispiel, nach dem Hinzufügen von Knoten-2 wird ein Volume mit 4 unbalancierten Replikaten 2 Replikate neu balancieren.node-1 +-- replica-a +-- replica-b node-2 +-- replica-c +-- replica-d
SUSE Storage zwingt nicht, die Replikate in eine Zone neu zu planen, die nicht genügend Knoten hat, um ein gleichmäßiges Gleichgewicht zu unterstützen. Stattdessen wird SUSE Storage die Neuprogrammierung auf Knotenebene durchführen, um das Gleichgewicht zu erreichen.
Wie Sie den automatischen Replikat-Lastenausgleich für Volumes einstellen.
Es gibt 3 Möglichkeiten, Replica Auto Balance für SUSE Storage Volumen festzulegen:
Ändern Sie die globale Einstellung
Sie können die globale Standardeinstellung für Replica Auto Balance in den SUSE Storage UI-Einstellungen ändern.
Die globale Einstellung fungiert nur als Standardwert, ähnlich der Replikazahl.
Es ändert keine bestehenden Volumeneinstellungen.
Wenn ein Volumen erstellt wird, ohne Replica Auto Balance anzugeben, wird SUSE Storage automatisch auf ignored gesetzt, um von der globalen Einstellung zu erben.
Stellen Sie einzelne Volumen so ein, dass die Replikate mithilfe der SUSE Storage UI automatisch ausgeglichen werden.
Sie können die Replica Auto Balance Einstellung für einzelne Volumen nach der Erstellung auf der Detailseite des Volumens ändern oder mehrere Aktualisierungen auf der aufgelisteten Volumen-Seite durchführen.
Stellen Sie einzelne Volumen so ein, dass Replikate mithilfe einer StorageClass automatisch ausgeglichen werden.
SUSE Storage stellt auch die Replica Auto Balance Einstellung als Parameter in einer StorageClass zur Verfügung.
Sie können eine StorageClass mit einer festgelegten Replica Auto Balance Einstellung erstellen und dann PVCs mit dieser StorageClass erstellen.
Zum Beispiel definiert die folgende YAML-Datei eine StorageClass, die dem SUSE Storage CSI-Treiber mitteilt, die Replica Auto Balance auf least-effort zu setzen:
kind: StorageClass
apiVersion: storage.k8s.io/v1
metadata:
name: hyper-converged
provisioner: driver.longhorn.io
allowVolumeExpansion: true
parameters:
numberOfReplicas: "3"
replicaAutoBalance: "least-effort"
staleReplicaTimeout: "2880" # 48 hours in minutes
fromBackup: ""
Replikat-Auto-Balance-Disk-Druck-Schwellenwert (%)
Wenn Replica Auto Balance mit best-effort aktiviert ist, können Sie einen Replica Auto Balance Disk Pressure Threshold (%) festlegen. Dieser Schwellenwert definiert das Niveau der Festplattennutzung, bei dem SUSE Storage automatisch versucht, Replikate auf eine andere Festplatte im selben Knoten zu migrieren.
Wenn der Schwellenwert beispielsweise auf 75 % festgelegt ist, wird SUSE Storage versuchen, Replikate nacheinander zu migrieren, wenn der Festplattenspeicher 75 % der Kapazität erreicht.
SUSE Storage priorisiert zunächst das Ausbalancieren von Replikaten über Knoten und Zonen. Sobald die Knoten und Zonen ausgeglichen sind, wird es dann das Ausbalancieren innerhalb eines einzelnen Knotens basierend auf dem Festplattendruck in Betracht ziehen.
Seit SUSE Storage v1.7.0 verwendet SUSE Storage bei der Wiederherstellung von Replikaten auf demselben Knoten die lokale Dateisynchronisierung für einen effizienteren Datentransfer.
Nutzungsbeschränkungen
Die automatische Replikatausgleichsfunktion in SUSE Storage wird nur für Volumen mit einem Robustheitsstatus von Healthy aktiviert.
Ungesunde Volumen oder abgetrennte Volumen werden nicht automatisch ausbalanciert, selbst wenn ein Knoten über wenig verfügbaren Speicherplatz verfügt.
Dieses Verhalten ist eine bewusste Designentscheidung, um die Systemstabilität und Datenintegrität zu gewährleisten: * Das Verschieben von Replikaten oder das Auslösen automatischer Wiederherstellungen auf einem ungesunden Volumen könnte die Datenintegrität weiter gefährden. Dieses Design erfordert manuelles Eingreifen, damit ein Administrator den Zustand des Volumens bewerten kann, bevor potenziell riskante Operationen eingeleitet werden. * Abgetrennte Volumen dienen nicht aktiv der E/A. Das Überspringen der automatischen Neuausbalancierung verhindert unnötige Wiederherstellungen und spart Clusterressourcen.
Wenn ein Volumen ungesund oder abgetrennt ist, erfordert das Verschieben von Replikaten manuelles Eingreifen, wie zum Beispiel: * Wiederherstellen von Replikaten, nachdem das Volumen inspiziert und/oder angeschlossen wurde. * Anschließen des Volumens, wenn es abgetrennt ist (um einen gesunden Zustand wiederherzustellen, wenn möglich).