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.

StorageClass-Parameter

Übersicht

Die StorageClass als Ressourcenobjekt hat mehrere konfigurierbare Parameter.

Beispiel:

kind: StorageClass
apiVersion: storage.k8s.io/v1
metadata:
  name: longhorn-test
provisioner: driver.longhorn.io
allowVolumeExpansion: true
reclaimPolicy: Delete
volumeBindingMode: Immediate
parameters:
  backupTargetName: "default"
  numberOfReplicas: "3"
  staleReplicaTimeout: "2880"
  fromBackup: ""
  fsType: "ext4"
#  mkfsParams: ""
#  migratable: false
#  encrypted: false
#  dataLocality: "disabled"
#  replicaAutoBalance: "ignored"
#  diskSelector: "ssd,fast"
#  nodeSelector: "storage,fast"
#  recurringJobSelector: '[{"name":"snap-group", "isGroup":true},
#                          {"name":"backup", "isGroup":false}]'
#  backingImageName: ""
#  backingImageChecksum: ""
#  backingImageDataSourceType: ""
#  backingImageDataSourceParameters: ""
#  unmapMarkSnapChainRemoved: "ignored"
#  disableRevisionCounter: false
#  replicaSoftAntiAffinity: "ignored"
#  replicaZoneSoftAntiAffinity: "ignored"
#  replicaDiskSoftAntiAffinity: "ignored"
#  nfsOptions: "soft,timeo=150,retrans=3"
#  dataEngine: "v1"
#  freezeFSForSnapshot: "ignored"
# allowedTopologies:
#   - matchLabelExpressions:
#       - key: topology.kubernetes.io/zone
#         values:
#           - us-central-1a
#           - us-central-1b

Integrierte Felder

Bestimmte Felder sind allen Kubernetes-Speicherklassen gemeinsam. Siehe auch Kubernetes Storage Class.

Provisioner (Feld: provisioner)

Gibt das Plugin an, das für die dynamische Erstellung von persistenten Volumes verwendet wird. Für SUSE Storage ist das immer driver.longhorn.io.

Erlaube Volumenerweiterung (Feld: allowVolumeExpansion)

Rückgewinnungsrichtlinie (Feld: reclaimPolicy)

Montageoptionen (Feld: mountOptions)

Volumenbindungsmodus (Feld: volumeBindingMode)

Erlaubte Topologien (Feld: allowedTopologies)

Siehe das Kubernetes-Referenzdokument StorageClass — Erlaubte Topologien.

Es gibt die Menge von Knoten an, wo Volumes bereitgestellt werden können, indem Knotenlabels abgeglichen werden. SUSE Storage verwendet dieses Feld, um das nodeAffinity von PV über das CSI accessibleTopology-Feld zu befüllen.

Damit allowedTopologies wirksam wird, muss die SUSE Storage-Einstellung csi-allowed-topology-keys mit den entsprechenden Topologie-Schlüsseln konfiguriert werden (zum Beispiel topology.kubernetes.io/zone). Ohne diese Einstellung werden keine Topologieinformationen übermittelt und das PV hat kein nodeAffinity.

Verwenden Sie nicht allowedTopologies zusammen mit parameters.dataLocality: strict-local. Das resultierende PV nodeAffinity wird unveränderlich und es würde mit der strikten lokalen Volumenbindung von SUSE Storage in Konflikt stehen.

Für eine vollständige Anleitung mit Beispielen, siehe die Topologiebewusste Bereitstellung.

SUSE Storage-spezifische Parameter

Beachten Sie, dass einige dieser Parameter auch existieren und in globalen Einstellungen angegeben werden können. Wenn ein Volumen mit Kubernetes gegen eine bestimmte StorageClass bereitgestellt wird, haben die Parameter der StorageClass Vorrang vor den globalen Einstellungen. Diese Felder werden nur für die Erstellung neuer Volumen angewendet. Wenn eine StorageClass geändert wird, kümmert sich weder SUSE Storage noch Kubernetes darum, Änderungen an ihren Parametern auf zuvor mit ihr erstellte Volumen zu übertragen.

Anzahl der Replikate (Feld: parameters.numberOfReplicas)

Standard: 3

Die gewünschte Anzahl von Kopien (Replikaten) zur Redundanz.

  • Muss zwischen 1 und 20 liegen.

  • Replikate werden über die größtmögliche Anzahl von Zonen, Knoten und Festplatten in einem Cluster verteilt, unter Berücksichtigung anderer Einschränkungen wie NodeSelector.

Globale Einstellung - Standard-Replikatzahl.

Timeout für veraltete Replikate (Feld: parameters.staleReplicaTimeout)

Standard: 30

Minuten, nachdem ein Replikat als ungesund markiert wurde, nach denen es als unbrauchbar für den Wiederaufbau gilt und daraufhin einfach gelöscht wird.

Von Sicherung (Feld: parameters.fromBackup)

Standardwert: "" Beispiel: "s3://backupbucket@us-east-1?volume=minio-vol01&backup=backup-eeb2782d5b2f42bb"

URL einer Sicherung, von der wiederhergestellt werden soll.

FS-Typ (Feld: parameters.fsType)

Standardwert: ext4 Für weitere Details, bitte überprüfen Sie Erstellen von Longhorn-Volumes mit Kubernetes.

Mkfs-Parameter (Feld: parameters.mkfsParams)

Standardwert: "" Für weitere Details, bitte überprüfen Sie Erstellen von Longhorn-Volumes mit Kubernetes.

Migrierbar (Feld: parameters.migratable)

Standard: false

Aktiviert die Live-Migrationsfähigkeiten für ein Longhorn-Volume, sodass es von einem Knoten zu einem anderen migriert werden kann, während aktive E/A-Operationen aufrechterhalten werden.

Wann zu verwenden:

  1. migratable: true: Für Workloads, die eine Live-Migration erfordern. Muss mit ReadWriteMany Zugriffsmodus und volumeMode: Block verwendet werden.

  2. migratable: false: Für Standard-Volumes, die keine Live-Migrationsfähigkeiten erfordern.

Für weitere Details, bitte überprüfen Sie ReadWriteMany (RWX) Volume.

Verschlüsselt (Feld: parameters.encrypted)

Standardwert: false Für weitere Details, bitte überprüfen Sie Verschlüsselte Volumes.

Datenlokalität (Feld: parameters.dataLocality)

Standard: disabled

Wenn aktiviert, versuchen Sie, die Daten auf demselben Knoten wie die Arbeitslast für bessere Leistung zu halten.

  • Für best-effort sollte ein Replikat, wenn möglich, co-lokalisiert werden, es ist jedoch erlaubt, einen anderen Knoten zu finden, wenn dies nicht möglich ist.

  • Für strict-local sollte die Replikatzahl 1 betragen, andernfalls würde die Volumenerstellung mit einem Parametervalidierungsfehler fehlschlagen.

  • Wenn strict-local aus irgendeinem anderen Grund nicht möglich ist, würde die Volumenerstellung fehlschlagen. Ein strict-local Replikat, das von seiner Arbeitslast verdrängt wird, würde als "Stopped" markiert.

Globale Einstellung - Standard-Datenlokalität. Für weitere Details überprüfen Sie bitte Datenlokalität.

Replica Auto Balance (Feld: parameters.replicaAutoBalance)

Standard: ignored

Wenn aktiviert, bewegen Sie Replikate zu weniger ausgelasteten Knoten.

  • ignored bedeutet, die globale Einstellung zu verwenden.

  • Weitere Optionen sind disabled, least-effort, best-effort.

Globale Einstellung - Replica Auto Balance. Für weitere Details überprüfen Sie bitte die Replica Auto Balance.

Festplattenauswahl (Feld: parameters.diskSelector)

Standardwert: "" Beispiel: "ssd,fast"

Eine Liste von Tags, um auszuwählen, welche Festplatten für die Replikatplatzierung in Frage kommen.

Für weitere Details sehen Sie sich bitte die Storage Tags an.

Knotenauswahl (Feld: parameters.nodeSelector)

Standardwert: "" Beispiel: "storage,fast"

Eine Liste von Tags, um auszuwählen, welche Knoten für die Replikatplatzierung in Frage kommen.

Für weitere Details sehen Sie sich bitte die Storage Tags an.

Wiederkehrende Jobauswahl (Feld: parameters.recurringJobSelector)

Standardwert: "" Beispiel: [{"name":"backup", "isGroup":true}]

Eine Liste von wiederkehrenden Jobs, die auf einem Volume ausgeführt werden sollen.

Für weitere Details überprüfen Sie bitte Wiederkehrenden Sicherungs-/Snapshot-Job erstellen.

Name des Sicherungsbildes (Feld: parameters.backingImageName)

Standardwert: "" Siehe Backing Image.

Prüfsumme des Sicherungsbildes (Feld: parameters.backingImageChecksum)

Standardwert: "" Siehe Backing Image.

Typ der Datenquelle des Sicherungsbildes (Feld: parameters.backingImageDataSourceType)

Standardwert: "" Siehe Backing Image.

Parameter für die Datenquelle des Backing-Images (Feld: parameters.backingImageDataSourceParameters)

Standardwert: "" Siehe Backing Image.

Unmap-Markierung: Snap-Kette entfernt (Feld: parameters.unmapMarkSnapChainRemoved)

Standard: ignored

  • ignored bedeutet, die globale Einstellung zu verwenden.

  • Andere Werte sind enabled und disabled.

Globale Einstellung - Snapshots während des Dateisystem-Trimmens entfernen. Für weitere Details überprüfen Sie bitte das Trimmen des Dateisystems.

Überarbeitungszähler deaktivieren (Feld: parameters.disableRevisionCounter)

Standard: true

Globale Einstellung - Überarbeitungszähler deaktivieren. Für weitere Details überprüfen Sie bitte den Überarbeitungszähler.

Replica Soft Anti-Affinität (Feld: parameters.replicaSoftAntiAffinity)

Standard: ignored

  • ignored bedeutet, die globale Einstellung zu verwenden.

  • Andere Werte sind enabled und disabled.

Globale Einstellung - Replica-Knoten-Ebene Soft Anti-Affinität. Für weitere Details überprüfen Sie bitte das Planung und Best Practices.

Replica-Zonen Soft Anti-Affinität (Feld: parameters.replicaZoneSoftAntiAffinity)

Standard: ignored

  • ignored bedeutet, die globale Einstellung zu verwenden.

  • Andere Werte sind enabled und disabled.

Globale Einstellung - Replica-Zonen-Ebene Soft Anti-Affinität. Für weitere Details überprüfen Sie bitte Planung.

Replica-Disk Soft Anti-Affinität (Feld: parameters.replicaDiskSoftAntiAffinity)

Standard: ignored

  • ignored bedeutet, die globale Einstellung zu verwenden.

  • Andere Werte sind enabled und disabled.

Globale Einstellung - Replica-Disk-Ebene Soft Anti-Affinität. Für weitere Details überprüfen Sie bitte Planung.

NFS-Optionen (Feld: parameters.nfsOptions)

Standardwert: "" Beispiel: "hard,sync"

  • Überschreibungen für NFS-Mount von RWX-Volumes zum Share-Manager. Verwenden Sie dieses Feld mit Vorsicht.

    Integrierte Optionen variieren je nach Version. Überprüfen Sie Ihre Versionsdetails, bevor Sie dies festlegen.

Für weitere Details überprüfen Sie bitte die RWX Workloads.

Daten-Engine (Feld: parameters.dataEngine)

Standard: "v1"

  • Geben Sie "v2" an, um die V2-Daten-Engine (Technische Vorschau-Funktion) zu aktivieren. Wenn nicht angegeben, verwendet SUSE Storage den Standardwert ("v1").

Globale Einstellung: V2 Data Engine. Weitere Details im V2-Daten-Engine Kurzanleitung.

Dateisystem für Snapshot einfrieren (Feld: parameters.freezeFilesystemForSnapshot)

Standard: ignored

  • ignored weist SUSE Storage an, die globale Einstellung zu verwenden.

  • Andere Werte sind enabled und disabled.

Globale Einstellung - Dateisystem für Snapshot einfrieren.

Sicherungszielname (Feld: parameters.backupTargetName)

Standard: default

Sicherungsblockgröße (Feld: parameters.backupBlockSize)

Standard: ""

Beispiel: "2Mi" oder "16Mi"

Eine Kubernetes-Mengenzeichenfolge. Verwenden Sie eine leere Zeichenfolge "", um die globale Einstellung anzuwenden.

Weitere Informationen finden Sie unter:

Helm-Installationen

Wenn SUSE Storage über Helm installiert ist, können die Werte in der Standard-Speicherklasse festgelegt werden, indem der entsprechende Eintrag in values.yaml bearbeitet wird. Alle Parameter der Speicherklasse haben ein Präfix von persistence. Beispiel: persistence.defaultNodeSelector.