|
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. |
Best Practices
Das folgende Setup wird für Produktionsumgebungen empfohlen.
Mindestempfohlene Hardware
-
3 Knoten
-
4 vCPUs pro Knoten
-
4 GiB pro Knoten
-
SSD/NVMe oder ein ähnliches leistungsstarkes Blockgerät auf dem Knoten für die Speicherung (empfohlen)
-
HDD/Spinning Disk oder ein ähnliches leistungsstarkes Blockgerät auf dem Knoten für die Speicherung (verifiziert)
-
500/250 max IOPS pro Volume (1 MiB I/O)
-
500/250 max Durchsatz pro Volume (MiB/s)
-
|
Während SUSE Storage mit HDDs (spinning disks) als Speicher funktionieren kann, ist es wichtig zu verstehen, dass Latenz eine viel wichtigere Rolle für die Stabilität des Volumes spielt als IOPS oder Durchsatz. Das liegt daran, dass HDDs mechanisch sind und auf rotierenden Platten und beweglichen Lese- oder Schreibköpfen basieren, um auf Daten zuzugreifen. Diese physische Bewegung führt zu inhärenten Verzögerungen (Suchzeit und Rotationsverzögerung), was zu einer viel höheren Latenz im Vergleich zu SSDs oder NVMe-Laufwerken führt, die Flash-Speicher nutzen und keine beweglichen Teile haben. Dies kann direkt zu Instabilität führen, insbesondere wenn mehrere I/O-intensive Aufgaben gleichzeitig ausgeführt werden, wie zum Beispiel:
Die erhöhte Latenz aufgrund der Verwendung von HDDs, kombiniert mit anderen I/O-Arbeitslasten, kann zu Volumeninstabilität führen. Daher empfehlen wir SSD oder NVMe Laufwerke für bessere Leistung und Stabilität, insbesondere für Produktionsarbeitslasten. Die genannten IOPS und der Durchsatz (500/250 max IOPS pro Volume und 500/250 max Durchsatz pro Volume) sind als allgemeine Referenzen, basierend auf dem Test-Setup, gedacht, sollten jedoch nicht als feste Anforderungen betrachtet werden. Latenz, nicht nur Durchsatz, ist der wichtigste Faktor für die Gewährleistung der Systemstabilität. |
Betriebssystem
|
CentOS Linux wurde von der untenstehenden Liste der verifizierten Betriebssysteme entfernt, da es zugunsten von CentOS Stream [ref] eingestellt wurde, einer Rolling-Release-Linux-Distribution. Die Tests für RHEL-basierte Downstream Open Source-Distributionen konzentrieren sich auf Unternehmensversionen wie Rocky Linux und Oracle Linux. |
Die folgenden Linux-Betriebssystem-Distributionen und -Versionen wurden während der v1.11.2 Release-Tests verifiziert. Dies impliziert jedoch nicht, dass SUSE Storage ausschließlich diese Distributionen unterstützt. SUSE Storage sollte gut auf jedem zertifizierten Kubernetes-Cluster funktionieren, das auf Linux-Knoten mit einer Vielzahl von allgemeinen Betriebssystemen sowie verifizierten Container-optimierten Betriebssystemen wie SLE Micro läuft.
| Anzahl | BS | Version |
|---|---|---|
1. |
Ubuntu |
24.04 |
2. |
SUSE Linux Enterprise Server |
16 |
3. |
SUSE Linux Enterprise Micro |
6.1 |
4. |
Red Hat Enterprise Linux |
10.1 |
SUSE Storage ist stark von der Kernel-Funktionalität abhängig und funktioniert besser mit bestimmten Kernel-Versionen. Die folgenden Aktivitäten profitieren insbesondere von der Verwendung spezifischer Kernel-Versionen.
-
Optimierung oder Verbesserung des Dateisystems: Verwenden Sie einen Kernel mit der Version
v5.8oder höher. Siehe Issue #2507 für Details. -
Aktivierung der Freeze Filesystem for Snapshot Einstellung: Verwenden Sie einen Kernel mit der Version
5.17oder höher, um sicherzustellen, dass ein Volumenabsturz während eines Dateisystem-Freeze einen Knoten nicht blockieren kann. -
Aktivierung des V2 Data Engine: Verwenden Sie einen Kernel mit der Version
5.19oder höher, um sicherzustellen,
Die folgende Liste enthält bekannte fehlerhafte Kernel-Versionen, die Benutzer vermeiden sollten:
| Anzahl | Version | Distro | Zusätzlicher Kontext |
|---|---|---|---|
1. |
6.5.6 |
Vanille-Kernel |
In Bezug auf diesen Fehler https://longhorn.io/kb/troubleshooting-rwx-volume-fails-to-attached-caused-by-protocol-not-supported/ |
2. |
5.15.0-94 |
Ubuntu |
In Bezug auf diesen Fehler https://longhorn.io/kb/troubleshooting-rwx-volume-fails-to-attached-caused-by-protocol-not-supported/ |
3. |
6.5.0-21 |
Ubuntu |
In Bezug auf diesen Fehler https://longhorn.io/kb/troubleshooting-rwx-volume-fails-to-attached-caused-by-protocol-not-supported/ |
4. |
6.5.0-1014-aws |
Ubuntu |
In Bezug auf diesen Fehler https://longhorn.io/kb/troubleshooting-rwx-volume-fails-to-attached-caused-by-protocol-not-supported/ |
Kubernetes
Kubernetes Version
Stellen Sie sicher, dass Ihr Cluster Kubernetes v1.21 oder höher ausführt, bevor Sie SUSE Storage aktualisieren.
Wir empfehlen, Ihren Kubernetes-Cluster auf einer der folgenden Versionen auszuführen. Diese Versionen sind die aktiven unterstützten Versionen vor der SUSE Storage-Version und wurden mit SUSE Storage v1.11.2 getestet.
| Freigabe | Veröffentlicht | Ende der Lebensdauer |
|---|---|---|
1.35 |
17. Dez. 2025 |
28. Feb. 2027 |
1.34 |
27. Aug. 2025 |
27. Okt. 2026 |
1.33 |
23. Apr. 2025 |
28. Jun 2026 |
1.32 |
11. Dez. 2024 |
28. Feb. 2026 |
Verweist auf https://endoflife.date/kubernetes.
Knoten- und Festplatten-Setup
Wir empfehlen das folgende Setup für Knoten und Festplatten.
Verwenden Sie eine dedizierte Festplatte
Es wird empfohlen, eine Festplatte für die Speicherung von SUSE Storage für die Produktion zu widmen, anstatt die Root-Festplatte zu verwenden.
Minimal verfügbarer Speicher und Überprovisionierung
Wenn Sie die Root-Festplatte verwenden müssen, verwenden Sie das Standard-Setup von minimal available storage percentage, das 25 % beträgt, und setzen Sie overprovisioning percentage auf 100 %, um die Wahrscheinlichkeit von DiskPressure zu minimieren.
Wenn Sie eine dedizierte Festplatte für SUSE Storage verwenden, können Sie die Einstellung minimal available storage percentage auf 10 % senken.
Der Überprovisionierungsprozentsatz hängt davon ab, wie viel Speicherplatz Ihr Volume im Durchschnitt nutzt. Wenn Ihre Arbeitslast beispielsweise nur die Hälfte der verfügbaren Volumengröße nutzt, können Sie den Überprovisionierungsprozentsatz auf 200 setzen, was bedeutet, dass SUSE Storage die Festplatte als doppelt so groß betrachtet, wie ihre volle Größe minus den reservierten Speicherplatz.
Speicherplatzverwaltung
Da SUSE Storage derzeit keine Sharding zwischen den verschiedenen Festplatten unterstützt, empfehlen wir die Verwendung von LVM, um alle Festplatten für SUSE Storage in einer einzigen Partition zu aggregieren, damit sie in Zukunft leicht erweitert werden kann.
Einrichten zusätzlicher Festplatten
Alle zusätzlichen Festplatten müssen in der /etc/fstab-Datei eingetragen werden, um eine automatische Montage nach dem Neustart der Maschine zu ermöglichen.
Verwenden Sie keinen symbolischen Link für die zusätzlichen Festplatten. Verwenden Sie mount --bind anstelle von ln -s und stellen Sie sicher, dass es sich in der fstab-Datei befindet. Für Details siehe den Abschnitt über die Unterstützung mehrerer Festplatten.
Konfigurieren der Standardfestplatten vor und nach der Installation
Um ein anderes Verzeichnis als das Standardverzeichnis /var/lib/longhorn für die Speicherung zu verwenden, kann die Einstellung Default Data Path vor der Installation des Systems geändert werden. Für Details zur Änderung der Voreinstellungen vor der Installation siehe diesen Abschnitt.
Die Standard-Knoten-/Festplattenkonfiguration Funktion kann verwendet werden, um die Standardfestplatte nach der Installation anzupassen. Die Anpassung der Standardkonfigurationen für Festplatten und Knoten ist nützlich für die Skalierung des Clusters, da sie die Notwendigkeit beseitigt, SUSE Storage manuell für jeden neuen Knoten zu konfigurieren, wenn der Knoten mehr als eine Festplatte enthält oder wenn die Festplattenkonfiguration für neue Knoten unterschiedlich ist. Denken Sie daran, Create default disk only on labeled node zu aktivieren, falls zutreffend.
Leistungsoptimierung von Volumes
Stellen Sie vor der Konfiguration von Workloads sicher, dass Sie die folgenden grundlegenden Anforderungen für eine optimale Volumenleistung eingerichtet haben.
-
SATA/NVMe SSDs oder Festplatten mit ähnlicher Leistung
-
10 Gbps Netzwerkbandbreite zwischen den Knoten
-
Dedizierte Prioritätsklasse für systemverwaltete und benutzerbereitgestellte SUSE Storage Komponenten. Standardmäßig installiert SUSE Storage die Standard-Prioritätsklasse
longhorn-critical.
Die folgenden Abschnitte skizzieren weitere Empfehlungen für Produktionsumgebungen.
IO-Leistung
-
Speichernetzwerk: Verwenden Sie ein dediziertes Speichernetzwerk, um die IO-Leistung und Stabilität zu verbessern.
-
SUSE Storage Festplatte: Verwenden Sie eine dedizierte Festplatte für SUSE Storage Speicher anstelle der Root-Festplatte.
-
Replikazahl: Setzen Sie die Standard-Replikazahl auf "2", um die Datenverfügbarkeit mit besserer Festplattenspeichernutzung oder weniger Auswirkungen auf die Systemleistung zu erreichen. Diese Praxis ist besonders vorteilhaft für datenintensive Anwendungen.
-
Speichermarke: Verwenden Sie Speichermarken, um die Speicherhierarchie für datenintensive Anwendungen zu definieren. Zum Beispiel können nur Hochleistungsfestplatten zum Speichern von leistungsintensiven Daten verwendet werden.
-
Datenlokalität: Verwenden Sie
best-effortals die Standard-Datenlokalität der SUSE Storage StorageClasses.Für Anwendungen, die Datenreplikation unterstützen (zum Beispiel eine verteilte Datenbank), können Sie die
strict-localOption verwenden, um sicherzustellen, dass nur ein Replikat für jedes Volume erstellt wird. Diese Praxis verhindert die zusätzliche Nutzung von Speicherplatz und die IO-Leistungsüberlastung, die mit der Volumenreplikation verbunden sind.Für datenintensive Anwendungen können Sie Pod-Planungsfunktionen wie Knotenauswahl oder Taint-Toleranz verwenden. Diese Funktionen ermöglichen es Ihnen, die Arbeitslast auf einen bestimmten, mit einem Speicher-Tag versehenen Knoten zusammen mit einem Replikat zu planen.
Raumeffizienz
-
Wiederkehrende Snapshots: Reinigen Sie regelmäßig systemgenerierte Snapshots und behalten Sie nur die Anzahl von Snapshots, die für Ihre Implementierung sinnvoll ist.
Für Anwendungen mit Replikationsfähigkeit löschen Sie regelmäßig alle Arten von Snapshots.
-
Wiederkehrendes Dateisystem-Trimming: Trimmen Sie regelmäßig das Dateisystem innerhalb von Volumes, um Speicherplatz zurückzugewinnen.
-
Snapshot-Speicherverwaltung: Konfigurieren Sie globale und volumen-spezifische Einstellungen, um unerwartete Speicherplatzerschöpfung zu verhindern.
Problembehebung
-
Wiederkehrende Sicherungen: Erstellen Sie wiederkehrende Sicherungs-Jobs für geschäftskritische Anwendungsvolumes.
-
Systemsicherung: Erstellen Sie regelmäßige Systemsicherungen.
Bereitstellung von Workloads
Wenn Sie ext4 als Dateisystem des Volumes verwenden, empfehlen wir, eine Liveness-Prüfung für Workloads hinzuzufügen, um automatisch von einer netzwerkbedingten Unterbrechung, einem Knotenneustart oder einem Docker-Neustart wiederherzustellen. Siehe diesen Abschnitt für Details.
Wartung von Volumes
Die Verwendung der integrierten Backup-Funktion von SUSE Storage wird dringend empfohlen. Sie können Backups in einem Objektspeicher wie S3 oder auf einem NFS-Server speichern. Das Speichern in einem Objektspeicher ist vorzuziehen, da es im Allgemeinen eine bessere Zuverlässigkeit bietet. Ein weiterer Vorteil ist, dass Sie das Ziel nicht einhängen und aushängen müssen, was Failover und Upgrades komplizieren kann.
Planen Sie für jedes Volume mindestens eine wiederkehrende Sicherung. Wenn Sie SUSE Storage in der Produktion ohne Sicherungsspeicher ausführen müssen, planen Sie mindestens einen wiederkehrenden Snapshot für jedes Volume.
SUSE Storage erstellt automatisch Snapshots, wenn ein Replica wiederhergestellt wird. Wiederkehrende Snapshots oder Sicherungen können auch automatisch den systemgenerierten Snapshot bereinigen.
Garantierter Instanzmanager-CPU
Wir empfehlen, die CPU-Anforderung für SUSE Storage Instanzmanager-Pods festzulegen.
V1 Daten-Engine
Die Guaranteed Instance Manager CPU Einstellung ermöglicht es Ihnen, einen Prozentsatz der insgesamt zuweisbaren CPU-Ressourcen auf jedem Knoten für jeden Instanzmanager-Pod zu reservieren, wenn die V1 Daten-Engine aktiviert ist. Der Standardwert ist 12.
Legen Sie einen bestimmten Milli-CPU-Wert für die Instanzmanager-Pods auf einem bestimmten Knoten fest, indem Sie das Feld für die CPU-Anforderung des Instanzmanagers für diesen Knoten aktualisieren.
|
Dieses Feld überschreibt die obige Einstellung für den angegebenen Knoten. |
Verweisen Sie auf Garantierter Instanzmanager-CPU für weitere Details.
V2 Data Engine
Die Guaranteed Instance Manager CPU for V2 Data Engine Einstellung ermöglicht es Ihnen, eine bestimmte Anzahl von Milli-CPUs auf jedem Knoten für jeden Instanzmanager-Pod zu reservieren, wenn die V2 Daten-Engine aktiviert ist. Standardmäßig verwendet der Storage Performance Development Kit (SPDK) Ziel-Daemon innerhalb jedes Instanz-Manager-Pods 1 CPU-Kernel. Die Konfiguration eines minimalen CPU-Nutzungswerts ist entscheidend für die Aufrechterhaltung der Stabilität von Engine und Replikaten, insbesondere während Zeiten hoher Knotenlast. Der Standardwert ist 1250.
StorageClass
Vermeiden Sie es, die Standard-StorageClass mit dem Namen longhorn zu ändern. Änderungen an ihren Parametern können bei zukünftigen Upgrades Probleme verursachen. Um die in der StorageClass festgelegten Parameter zu ändern, können Sie eine neue StorageClass erstellen, indem Sie auf die StorageClass-Beispiele verweisen.
Planungseinstellungen
Replica-Knoten-Level Soft Anti-Affinität
Empfehlung: false
Diese Einstellung sollte in der Produktionsumgebung auf false gesetzt werden, um die beste Verfügbarkeit des Volumens sicherzustellen. Andernfalls kann ein Ausfallereignis eines Knotens mehr als ein Replikat eines Volumens zum Absturz bringen.
Erlauben Sie die Erstellung von Volumen mit degradierter Verfügbarkeit
Empfehlung: false
Deaktivieren Sie diese Einstellung (false) in Produktionsumgebungen, um die maximale Verfügbarkeit des Volumens bei der Erstellung sicherzustellen. Wenn aktiviert (true), gelingt die Erstellung des Volumens, selbst wenn das System nur ein Replikat planen kann. Dies schafft ein Risiko, dass der Cluster ohne sofortige Benachrichtigung des Benutzers keinen Speicherplatz mehr hat.
Replica Auto-Balance
Empfehlung: least-effort
Für Produktionsumgebungen empfehlen wir, die Replica Auto Balance auf least-effort einzustellen. Diese Einstellung stellt sicher, dass mindestens eine Replica auf einem anderen Knoten in jeder Zone platziert wird, was eine hohe Verfügbarkeit (HA) bietet.
In bestimmten Grenzfällen könnten Sie in Erwägung ziehen, die best-effort zu verwenden, die kontinuierlich versucht, die Replikate gleichmäßig über Knoten und Zonen zu verteilen. Diese Einstellung kann jedoch zu häufigen Wiederaufbauten führen, wenn der Cluster instabil ist.
Für die meisten Benutzer ist es ausreichend, mehrere Replikate ohne die Einstellung Replica Auto Balance zu haben, um eine grundlegende HA zu erreichen, insbesondere wenn Sie übermäßige Wiederaufbauten und Ressourcenverbrauch vermeiden möchten.