Skip to main content
Die deutsche Sprachversion wurde als Serviceleistung für Sie durch maschinelle Übersetzung erstellt. Bei eventuellen Unstimmigkeiten hat die englische Sprachversion Vorrang.

ONTAP SAN-Konfigurationsoptionen und -Beispiele

Beitragende netapp-aruldeepa juliantap joan-ing netapp-mwallis
Änderungen vorschlagen

ONTAP SAN-Treiber können mit Ihrer Trident Installation erstellt und verwendet werden. Dieser Abschnitt enthält Beispiele für die Backend-Konfiguration und Details zur Zuordnung von Backends zu StorageClasses. "ASA R2-Systeme" unterscheiden sich von anderen ONTAP Systemen (ASA, AFF und FAS) in der Implementierung ihrer Speicherschicht. Diese Unterschiede wirken sich auf die Verwendung bestimmter Parameter aus, wie angegeben. "Erfahren Sie mehr über die Unterschiede zwischen ASA r2-Systemen und anderen ONTAP-Systemen". In der Trident Backend-Konfiguration muss nicht angegeben werden, dass das System ASA r2 ist. Wenn ontap-san als storageDriverName ausgewählt wird, erkennt Trident automatisch ASA r2 oder andere ONTAP Systeme. Einige Backend-Konfigurationsparameter sind für ASA r2 Systeme nicht anwendbar, wie in der folgenden Tabelle aufgeführt.

Hinweis Nur die ontap-san Der Treiber (mit iSCSI-, NVMe/TCP- und FC-Protokollen) wird für ASA r2-Systeme unterstützt.

Back-End-Konfigurationsoptionen

Ab der Version 26.06 kann die ONTAP Balanced Placement-Funktion aktiviert werden, sodass ONTAP das Aggregat für neue Volumes auswählt. Siehe "Ausgewogene Platzierung mit ONTAP Backends verwenden" für Anforderungen und Beispiele.

Die Back-End-Konfigurationsoptionen finden Sie in der folgenden Tabelle:

Parameter Beschreibung Standard

version

Immer 1

storageDriverName

Name des Speichertreibers

ontap-san Oder ontap-san-economy

backendName

Benutzerdefinierter Name oder das Storage-Backend

Treibername + „_“ + DatenLIF

managementLIF

Die IP-Adresse einer Cluster- oder SVM-Management-LIF.

Es kann ein vollständig qualifizierter Domänenname (FQDN) angegeben werden.

Kann so eingestellt werden, dass IPv6-Adressen verwendet werden, wenn Trident mit dem IPv6-Flag installiert wurde. IPv6-Adressen müssen in eckigen Klammern definiert werden, z. B. [28e8:d9fb:a825:b7bf:69a8:d02f:9e7b:3555].

Informationen über die nahtlose MetroCluster-Umschaltung finden Sie im Beispiel: MetroCluster.

Hinweis Wenn Sie „vsadmin“-Anmeldedaten verwenden, managementLIF muss dies die der SVM sein. Bei Verwendung der „admin“-Anmeldedaten muss es sich um die des Clusters handeln. managementLIF

„10.0.0.1“, „[2001:1234:abcd::fefe]“

dataLIF

IP-Adresse des LIF-Protokolls. Kann so eingestellt werden, dass IPv6-Adressen verwendet werden, wenn Trident mit dem IPv6-Flag installiert wurde. IPv6-Adressen müssen in eckigen Klammern definiert werden, z. B. [28e8:d9fb:a825:b7bf:69a8:d02f:9e7b:3555]. Nicht für iSCSI angeben. Trident verwendet"ONTAP selektive LUN-Zuordnung", um die iSCSI LIFs zu ermitteln, die für eine Multi-Path-Sitzung erforderlich sind. Eine Warnung wird erzeugt, wenn dataLIF explizit definiert ist. Für MetroCluster weglassen. Siehe Beispiel: MetroCluster.

Abgeleitet von SVM

svm

Zu verwendende Storage Virtual Machine

Für MetroCluster weglassen. Siehe Beispiel: MetroCluster.

Abgeleitet wenn eine SVM managementLIF Angegeben ist

useCHAP

Verwenden Sie CHAP, um iSCSI für ONTAP-SAN-Treiber zu authentifizieren [Boolesch]. Legen Sie für Trident fest true, um bidirektionales CHAP als Standardauthentifizierung für die im Backend angegebene SVM zu konfigurieren und zu verwenden. Weitere Informationen finden Sie unter "Vorbereiten der Konfiguration des Back-End mit ONTAP-SAN-Treibern" . Nicht unterstützt für FCP oder NVMe/TCP.

false

chapInitiatorSecret

CHAP-Initiatorschlüssel. Erforderlich, wenn useCHAP=true

„“

labels

Satz willkürlicher JSON-formatierter Etiketten für Volumes

„“

chapTargetInitiatorSecret

Schlüssel für CHAP-Zielinitiator. Erforderlich, wenn useCHAP=true

„“

chapUsername

Eingehender Benutzername. Erforderlich, wenn useCHAP=true

„“

chapTargetUsername

Zielbenutzername. Erforderlich, wenn useCHAP=true

„“

clientCertificate

Base64-codierter Wert des Clientzertifikats. Wird für zertifikatbasierte Authentifizierung verwendet

„“

clientPrivateKey

Base64-kodierte Wert des privaten Client-Schlüssels. Wird für zertifikatbasierte Authentifizierung verwendet

„“

trustedCACertificate

Base64-kodierte Wert des vertrauenswürdigen CA-Zertifikats. Optional Wird für die zertifikatbasierte Authentifizierung verwendet.

„“

username

Für die Kommunikation mit dem ONTAP -Cluster ist ein Benutzername erforderlich. Wird für die auf Anmeldeinformationen basierende Authentifizierung verwendet. Informationen zur Active Directory-Authentifizierung finden Sie unter "Authentifizieren Sie Trident bei einem Backend-SVM mithilfe von Active Directory-Anmeldeinformationen".

„“

password

Für die Kommunikation mit dem ONTAP -Cluster ist ein Passwort erforderlich. Wird für die auf Anmeldeinformationen basierende Authentifizierung verwendet. Informationen zur Active Directory-Authentifizierung finden Sie unter "Authentifizieren Sie Trident bei einem Backend-SVM mithilfe von Active Directory-Anmeldeinformationen".

„“

svm

Zu verwendende Storage Virtual Machine

Abgeleitet wenn eine SVM managementLIF Angegeben ist

storagePrefix

Präfix, das beim Bereitstellen neuer Volumes in der SVM verwendet wird. Kann später nicht mehr geändert werden. Zum Aktualisieren dieses Parameters ist die Erstellung eines neuen Backends erforderlich.

trident

aggregate

Aggregat für die Bereitstellung (optional; falls festgelegt, muss es der SVM zugewiesen werden). Für den ontap-nas-flexgroup Treiber wird diese Option ignoriert. Wenn kein Aggregat zugewiesen ist, kann jedes der verfügbaren Aggregate zur Bereitstellung eines FlexGroup Volumes verwendet werden.

Hinweis Wird das Aggregat in SVM aktualisiert, erfolgt die Aktualisierung in Trident automatisch durch regelmäßiges Abfragen von SVM, ohne dass der Trident Controller neu gestartet werden muss. Wenn in Trident ein bestimmtes Aggregat für die Volume-Bereitstellung konfiguriert wurde und dieses Aggregat umbenannt oder aus der SVM entfernt wird, wechselt das Backend in Trident beim Abfragen des SVM-Aggregats in den Fehlerzustand. Das Aggregat muss entweder auf eines geändert werden, das in der SVM vorhanden ist, oder vollständig entfernt werden, damit das Backend wieder online ist.

Nicht für ASA r2-Systeme angeben.

Nicht angeben, wenn useBalancedPlacement auf true gesetzt ist.

„“

useBalancedPlacement

Aggregatauswahl für neue Volumes an ONTAP [Boolescher Wert]. Erfordert ONTAP 9.19.1 oder höher und useREST auf true gesetzt. Kann nicht mit aggregate kombiniert werden.

Siehe "Ausgewogene Platzierung mit ONTAP Backends verwenden" für Anforderungen und Beispiele.

false

limitAggregateUsage

Bereitstellung fehlgeschlagen, wenn die Nutzung über diesem Prozentsatz liegt. Wenn Sie ein Amazon FSX für NetApp ONTAP-Backend verwenden, geben Sie nicht an limitAggregateUsage. Die angegebenen fsxadmin und vsadmin enthalten nicht die erforderlichen Berechtigungen, um die aggregierte Nutzung abzurufen und sie mit Trident zu begrenzen. Nicht für ASA r2-Systeme angeben.

„“ (nicht standardmäßig durchgesetzt)

limitVolumeSize

Bereitstellung fehlgeschlagen, wenn die angeforderte Volume-Größe über diesem Wert liegt. Beschränkt außerdem die maximale Größe der Volumes, die es für LUNs managt.

„“ (standardmäßig nicht erzwungen)

lunsPerFlexvol

Die maximale Anzahl an LUNs pro FlexVol muss im Bereich [50, 200] liegen.

100

debugTraceFlags

Fehler-Flags bei der Fehlerbehebung beheben. Beispiel, {„API“:false, „method“:true}

Verwenden Sie diese Funktion nur, wenn Sie eine Fehlerbehebung durchführen und einen detaillierten Protokollauszug benötigen.

null

useREST

Boolescher Parameter zur Verwendung von ONTAP REST-APIs.

`useREST`Bei Einstellung auf `true` , Trident verwendet ONTAP REST APIs zur Kommunikation mit dem Backend; wenn eingestellt auf `false` , Trident verwendet ONTAPI (ZAPI)-Aufrufe zur Kommunikation mit dem Backend.  Diese Funktion erfordert ONTAP 9.11.1 und höher.  Darüber hinaus muss die verwendete ONTAP Anmelderolle Zugriff auf die `ontapi` Anwendung.  Dies wird durch die vordefinierte `vsadmin` Und `cluster-admin` Rollen.  Beginnend mit der Trident Version 24.06 und ONTAP 9.15.1 oder höher, `useREST` ist eingestellt auf `true` standardmäßig; ändern `useREST` Zu `false` um ONTAPI (ZAPI)-Aufrufe zu verwenden.

`useREST`ist vollständig für NVMe/TCP qualifiziert.

Hinweis NVMe wird nur mit ONTAP REST APIs unterstützt und nicht mit ONTAPI (ZAPI).

Wenn angegeben, immer auf true für ASA r2-Systeme.

true Für ONTAP 9.15.1 oder höher, andernfalls false.

sanType

Verwenden Sie diese Option, um für iSCSI, nvme für NVMe/TCP oder fcp für SCSI über Fibre Channel (FC) auszuwählen iscsi.

iscsi Falls leer

formatOptions

Verwenden Sie formatOptions zur Angabe von Befehlszeilenargumenten für den mkfs Befehl, der immer dann angewendet wird, wenn ein Volume formatiert wird. Dadurch kann das Volume entsprechend den eigenen Präferenzen formatiert werden. Es ist darauf zu achten, dass formatOptions ähnlich wie die Optionen des Befehls mkfs angegeben werden, jedoch ohne den Gerätepfad. Beispiel: "-E nodiscard"

Unterstützt für ontap-san Und ontap-san-economy Treiber mit iSCSI-Protokoll. Wird zusätzlich für ASA R2-Systeme bei Verwendung der Protokolle iSCSI und NVMe/TCP unterstützt.

limitVolumePoolSize

Maximale anforderbare FlexVol-Größe bei Verwendung von LUNs im ONTAP-san-Economy-Backend.

„“ (nicht standardmäßig durchgesetzt)

denyNewVolumePools

Schränkt das Erstellen neuer FlexVol Volumes für LUNs ein ontap-san-economy Zur Bereitstellung neuer PVS werden nur vorbestehende FlexVols verwendet.

Empfehlungen für die Verwendung von FormatOptions

Trident empfiehlt die folgenden Optionen, um den Formatierungsprozess zu beschleunigen:

  • -E nodiscard (ext3, ext4): Versuche nicht, Blöcke während der mkfs-Erstellung zu verwerfen (das anfängliche Verwerfen von Blöcken ist auf Solid-State-Geräten und Sparse-/Thin-Provisioned-Speichern sinnvoll). Dies ersetzt die veraltete Option "-K" und ist auf ext3- und ext4-Dateisysteme anwendbar.

  • -K (xfs): Versuche nicht, Blöcke während der mkfs-Zeit zu verwerfen. Diese Option ist für das XFS-Dateisystem anwendbar.

Authentifizieren Sie Trident bei einem Backend-SVM mithilfe von Active Directory-Anmeldeinformationen

Sie können Trident so konfigurieren, dass es sich mit Active Directory (AD)-Anmeldeinformationen bei einem Back-End-SVM authentifiziert. Bevor ein AD-Konto auf die SVM zugreifen kann, müssen Sie den AD-Domänencontrollerzugriff auf den Cluster oder die SVM konfigurieren. Für die Clusterverwaltung mit einem AD-Konto müssen Sie einen Domänentunnel erstellen. Siehe "Konfigurieren des Active Directory-Domänencontrollerzugriffs in ONTAP" für Details.

Schritte
  1. Konfigurieren Sie die DNS-Einstellungen (Domain Name System) für eine Back-End-SVM:

    vserver services dns create -vserver <svm_name> -dns-servers <dns_server_ip1>,<dns_server_ip2>

  2. Führen Sie den folgenden Befehl aus, um ein Computerkonto für die SVM in Active Directory zu erstellen:

    vserver active-directory create -vserver DataSVM -account-name ADSERVER1 -domain demo.netapp.com

  3. Verwenden Sie diesen Befehl, um einen AD-Benutzer oder eine AD-Gruppe zum Verwalten des Clusters oder SVM zu erstellen

    security login create -vserver <svm_name> -user-or-group-name <ad_user_or_group> -application <application> -authentication-method domain -role vsadmin

  4. Legen Sie in der Trident Backend-Konfigurationsdatei Folgendes fest: username Und password Parameter auf den AD-Benutzer- oder Gruppennamen bzw. das Kennwort.

Back-End-Konfigurationsoptionen für die Bereitstellung von Volumes

Sie können die Standardbereitstellung mit diesen Optionen im steuern defaults Abschnitt der Konfiguration. Ein Beispiel finden Sie unten in den Konfigurationsbeispielen.

Parameter Beschreibung Standard

spaceAllocation

Speicherplatzzuweisung für LUNs

"true" Wenn angegeben, setzen auf true für ASA r2-Systeme.

spaceReserve

Modus für Speicherplatzreservierung; „none“ (Thin) oder „Volume“ (Thick). Eingestellt auf none für ASA r2-Systeme.

„Keine“

snapshotPolicy

Zu verwendende Snapshot-Richtlinie. Eingestellt auf none für ASA r2-Systeme.

„Keine“

qosPolicy

QoS-Richtliniengruppe zur Zuweisung für erstellte Volumes Wählen Sie eine der qosPolicy oder adaptiveQosPolicy pro Storage Pool/Backend. Für die Verwendung von QoS-Richtliniengruppen mit Trident ist ONTAP 9 8 oder höher erforderlich. Sie sollten eine nicht gemeinsam genutzte QoS-Richtliniengruppe verwenden und sicherstellen, dass die Richtliniengruppe auf jede Komponente einzeln angewendet wird. Eine Shared-QoS-Richtliniengruppe erzwingt die Obergrenze für den Gesamtdurchsatz aller Workloads.

„“

adaptiveQosPolicy

Adaptive QoS-Richtliniengruppe mit Zuordnung für erstellte Volumes Wählen Sie eine der qosPolicy oder adaptiveQosPolicy pro Storage Pool/Backend

„“

snapshotReserve

Prozentsatz des für Snapshots reservierten Volumes. Nicht für ASA r2-Systeme angeben.

„0“ wenn snapshotPolicy Ist „keine“, andernfalls „“

splitOnClone

Teilen Sie einen Klon bei der Erstellung von seinem übergeordneten Objekt auf

„Falsch“

encryption

Aktivieren Sie NetApp Volume Encryption (NVE) auf dem neuen Volume; standardmäßig false. NVE muss auf dem Cluster lizenziert und aktiviert sein, damit diese Option verwendet werden kann. Wenn NAE im Backend aktiviert ist, ist jedes in Trident bereitgestellte Volume NAE-aktiviert. Weitere Informationen unter: "Funktionsweise von Trident mit NVE und NAE".

"false" Wenn angegeben, setzen auf true für ASA r2-Systeme.

luksEncryption

Aktivieren Sie die LUKS-Verschlüsselung. Siehe "Linux Unified Key Setup (LUKS) verwenden".

"" Eingestellt auf false für ASA r2-Systeme.

tieringPolicy

Tiering-Richtlinie zur Verwendung von „keine“ Nicht für ASA R2-Systeme angeben.

nameTemplate

Vorlage zum Erstellen benutzerdefinierter Volume-Namen.

„“

Beispiele für die Volume-Bereitstellung

Hier ein Beispiel mit definierten Standardwerten:

---
version: 1
storageDriverName: ontap-san
managementLIF: 10.0.0.1
svm: trident_svm
username: admin
password: <password>
labels:
  k8scluster: dev2
  backend: dev2-sanbackend
storagePrefix: alternate-trident
debugTraceFlags:
  api: false
  method: true
defaults:
  spaceReserve: volume
  qosPolicy: standard
  spaceAllocation: 'false'
  snapshotPolicy: default
  snapshotReserve: '10'
Hinweis Für alle Volumes, die mit dem ontap-san Treiber erstellt werden, fügt Trident dem FlexVol zusätzlich 10 Prozent Kapazität hinzu, um die LUN-Metadaten aufzunehmen. Die LUN wird mit genau der Größe bereitgestellt, die der Benutzer im PVC anfordert. Trident fügt dem FlexVol 10 Prozent hinzu (wird als verfügbare Größe in ONTAP angezeigt). Benutzer erhalten nun die von ihnen angeforderte nutzbare Kapazität. Diese Änderung verhindert außerdem, dass LUNs schreibgeschützt werden, solange der verfügbare Speicherplatz nicht vollständig genutzt ist. Dies gilt nicht für ontap-san-economy.

Für Back-Ends, die definieren snapshotReserve, berechnet Trident die Größe der Volumes wie folgt:

Total volume size = [(PVC requested size) / (1 - (snapshotReserve percentage) / 100)] * 1.1

Die 1.1 sind die zusätzlichen 10 Prozent, die Trident zum FlexVol hinzufügt, um die LUN-Metadaten unterzubringen. Für snapshotReserve = 5 % und PVC-Anforderung = 5 GiB, die Gesamtgröße des Volumes beträgt 5,79 GiB und die verfügbare Größe beträgt 5,5 GiB. Die volume show Der Befehl sollte ähnliche Ergebnisse wie in diesem Beispiel anzeigen:

Zeigt die Ausgabe des Befehls Volume show an.

Die Größenanpassung ist derzeit die einzige Möglichkeit, die neue Berechnung für ein vorhandenes Volume zu verwenden.

Minimale Konfigurationsbeispiele

Die folgenden Beispiele zeigen grundlegende Konfigurationen, bei denen die meisten Parameter standardmäßig belassen werden. Dies ist der einfachste Weg, ein Backend zu definieren.

Hinweis Wenn Sie Amazon FSX auf NetApp ONTAP mit Trident verwenden, empfiehlt NetApp, dass Sie DNS-Namen für LIFs anstelle von IP-Adressen angeben.
Beispiel: ONTAP SAN

Dies ist eine grundlegende Konfiguration mit dem ontap-san Treiber.

---
version: 1
storageDriverName: ontap-san
managementLIF: 10.0.0.1
svm: svm_iscsi
labels:
  k8scluster: test-cluster-1
  backend: testcluster1-sanbackend
username: vsadmin
password: <password>
Beispiel: MetroCluster

Sie können das Backend so konfigurieren, dass die Backend-Definition nach Umschaltung und einem Wechsel während nicht manuell aktualisiert werden muss "SVM-Replizierung und Recovery".

Geben Sie für ein nahtloses Switchover und Switchback die SVM mit an managementLIF und lassen Sie die Parameter weg svm. Beispiel:

version: 1
storageDriverName: ontap-san
managementLIF: 192.168.1.66
username: vsadmin
password: password
Beispiel für die SAN-Ökonomie von ONTAP
version: 1
storageDriverName: ontap-san-economy
managementLIF: 10.0.0.1
svm: svm_iscsi_eco
username: vsadmin
password: <password>
Beispiel für die zertifikatbasierte Authentifizierung

In diesem Beispiel der Grundkonfiguration clientCertificate, clientPrivateKey, und trustedCACertificate (Optional, wenn Sie eine vertrauenswürdige CA verwenden) werden ausgefüllt backend.json Und nehmen Sie die base64-kodierten Werte des Clientzertifikats, des privaten Schlüssels und des vertrauenswürdigen CA-Zertifikats.

---
version: 1
storageDriverName: ontap-san
backendName: DefaultSANBackend
managementLIF: 10.0.0.1
svm: svm_iscsi
useCHAP: true
chapInitiatorSecret: cl9qxIm36DKyawxy
chapTargetInitiatorSecret: rqxigXgkesIpwxyz
chapTargetUsername: iJF4heBRT0TCwxyz
chapUsername: uh2aNCLSd6cNwxyz
clientCertificate: ZXR0ZXJwYXB...ICMgJ3BhcGVyc2
clientPrivateKey: vciwKIyAgZG...0cnksIGRlc2NyaX
trustedCACertificate: zcyBbaG...b3Igb3duIGNsYXNz
Beispiele für bidirektionales CHAP

Diese Beispiele erstellen ein Backend mit useCHAP Auf einstellen true.

Beispiel für ONTAP-SAN-CHAP
---
version: 1
storageDriverName: ontap-san
managementLIF: 10.0.0.1
svm: svm_iscsi
labels:
  k8scluster: test-cluster-1
  backend: testcluster1-sanbackend
useCHAP: true
chapInitiatorSecret: cl9qxIm36DKyawxy
chapTargetInitiatorSecret: rqxigXgkesIpwxyz
chapTargetUsername: iJF4heBRT0TCwxyz
chapUsername: uh2aNCLSd6cNwxyz
username: vsadmin
password: <password>
Beispiel für ONTAP SAN Economy CHAP
---
version: 1
storageDriverName: ontap-san-economy
managementLIF: 10.0.0.1
svm: svm_iscsi_eco
useCHAP: true
chapInitiatorSecret: cl9qxIm36DKyawxy
chapTargetInitiatorSecret: rqxigXgkesIpwxyz
chapTargetUsername: iJF4heBRT0TCwxyz
chapUsername: uh2aNCLSd6cNwxyz
username: vsadmin
password: <password>
Beispiel für eine ausgewogene Platzierung

Dieses Beispiel aktiviert die ausgewogene Platzierung in ONTAP, sodass ONTAP das Aggregat für neue Volumes auswählt. Die ausgewogene Platzierung erfordert ONTAP 9.19.1 oder höher. Weitere Informationen finden sich unter "Ausgewogene Platzierung mit ONTAP Backends verwenden".

---
version: 1
storageDriverName: ontap-san
backendName: san-balanced-placement
managementLIF: 10.0.0.1
svm: svm_iscsi
username: vsadmin
password: <password>
useBalancedPlacement: true
Beispiel für NVMe/TCP

Sie müssen eine SVM auf Ihrem ONTAP Back-End mit NVMe konfiguriert haben. Dies ist eine grundlegende Backend-Konfiguration für NVMe/TCP.

---
version: 1
backendName: NVMeBackend
storageDriverName: ontap-san
managementLIF: 10.0.0.1
svm: svm_nvme
username: vsadmin
password: password
sanType: nvme
useREST: true
Beispiel für SCSI over FC (FCP

Auf Ihrem ONTAP-Back-End muss eine SVM mit FC konfiguriert sein. Dies ist eine grundlegende Back-End-Konfiguration für FC.

---
version: 1
backendName: fcp-backend
storageDriverName: ontap-san
managementLIF: 10.0.0.1
svm: svm_fc
username: vsadmin
password: password
sanType: fcp
useREST: true
Back-End-Konfigurationsbeispiel mit nameTemplate
---
version: 1
storageDriverName: ontap-san
backendName: ontap-san-backend
managementLIF: <ip address>
svm: svm0
username: <admin>
password: <password>
defaults:
  nameTemplate: "{{.volume.Name}}_{{.labels.cluster}}_{{.volume.Namespace}}_{{.vo\
    lume.RequestName}}"
labels:
  cluster: ClusterA
  PVC: "{{.volume.Namespace}}_{{.volume.RequestName}}"
FormatOptions Beispiel für ONTAP-san-Economy-Treiber
---
version: 1
storageDriverName: ontap-san-economy
managementLIF: ""
svm: svm1
username: ""
password: "!"
storagePrefix: whelk_
debugTraceFlags:
  method: true
  api: true
defaults:
  formatOptions: -E nodiscard

Beispiele für Back-Ends mit virtuellen Pools

In diesen Beispiel-Back-End-Definitionsdateien werden spezifische Standardwerte für alle Speicherpools festgelegt, z. B. spaceReserve Bei keiner, spaceAllocation Bei false, und encryption Bei false. Die virtuellen Pools werden im Abschnitt Speicher definiert.

Trident legt die Bereitstellungsetiketten im Feld „Kommentare“ fest. Kommentare werden auf die FlexVol volume Trident-Kopien aller Labels, die auf einem virtuellen Pool auf das Speicher-Volume bei der Bereitstellung. Storage-Administratoren können Labels je virtuellen Pool definieren und Volumes nach Label gruppieren.

In diesen Beispielen legen einige Speicherpools eigene fest spaceReserve, spaceAllocation, und encryption Werte und einige Pools überschreiben die Standardwerte.

Beispiel: ONTAP SAN
---
version: 1
storageDriverName: ontap-san
managementLIF: 10.0.0.1
svm: svm_iscsi
useCHAP: true
chapInitiatorSecret: cl9qxIm36DKyawxy
chapTargetInitiatorSecret: rqxigXgkesIpwxyz
chapTargetUsername: iJF4heBRT0TCwxyz
chapUsername: uh2aNCLSd6cNwxyz
username: vsadmin
password: <password>
defaults:
  spaceAllocation: "false"
  encryption: "false"
  qosPolicy: standard
labels:
  store: san_store
  kubernetes-cluster: prod-cluster-1
region: us_east_1
storage:
  - labels:
      protection: gold
      creditpoints: "40000"
    zone: us_east_1a
    defaults:
      spaceAllocation: "true"
      encryption: "true"
      adaptiveQosPolicy: adaptive-extreme
  - labels:
      protection: silver
      creditpoints: "20000"
    zone: us_east_1b
    defaults:
      spaceAllocation: "false"
      encryption: "true"
      qosPolicy: premium
  - labels:
      protection: bronze
      creditpoints: "5000"
    zone: us_east_1c
    defaults:
      spaceAllocation: "true"
      encryption: "false"
Beispiel für die SAN-Ökonomie von ONTAP
---
version: 1
storageDriverName: ontap-san-economy
managementLIF: 10.0.0.1
svm: svm_iscsi_eco
useCHAP: true
chapInitiatorSecret: cl9qxIm36DKyawxy
chapTargetInitiatorSecret: rqxigXgkesIpwxyz
chapTargetUsername: iJF4heBRT0TCwxyz
chapUsername: uh2aNCLSd6cNwxyz
username: vsadmin
password: <password>
defaults:
  spaceAllocation: "false"
  encryption: "false"
labels:
  store: san_economy_store
region: us_east_1
storage:
  - labels:
      app: oracledb
      cost: "30"
    zone: us_east_1a
    defaults:
      spaceAllocation: "true"
      encryption: "true"
  - labels:
      app: postgresdb
      cost: "20"
    zone: us_east_1b
    defaults:
      spaceAllocation: "false"
      encryption: "true"
  - labels:
      app: mysqldb
      cost: "10"
    zone: us_east_1c
    defaults:
      spaceAllocation: "true"
      encryption: "false"
  - labels:
      department: legal
      creditpoints: "5000"
    zone: us_east_1c
    defaults:
      spaceAllocation: "true"
      encryption: "false"
Beispiel für NVMe/TCP
---
version: 1
storageDriverName: ontap-san
sanType: nvme
managementLIF: 10.0.0.1
svm: nvme_svm
username: vsadmin
password: <password>
useREST: true
defaults:
  spaceAllocation: "false"
  encryption: "true"
storage:
  - labels:
      app: testApp
      cost: "20"
    defaults:
      spaceAllocation: "false"
      encryption: "false"

Back-Ends StorageClasses zuordnen

Die folgenden StorageClass-Definitionen beziehen sich auf die Beispiele für Back-Ends mit virtuellen Pools. Mit dem parameters.selector-Feld wird bei jeder StorageClass angegeben, welche virtuellen Pools zum Hosten eines Volumes verwendet werden können. Das Volume verfügt nun über die im ausgewählten virtuellen Pool definierten Aspekte.

  • Die protection-gold StorageClass verweist auf den ersten virtuellen Pool im ontap-san Backend. Dies ist der einzige Pool, der Schutz auf Gold-Niveau bietet.

    apiVersion: storage.k8s.io/v1
    kind: StorageClass
    metadata:
      name: protection-gold
    provisioner: csi.trident.netapp.io
    parameters:
      selector: "protection=gold"
      fsType: "ext4"
  • Die protection-not-gold StorageClass verweist auf den zweiten und dritten virtuellen Pool im ontap-san Backend. Dies sind die einzigen Pools, die ein anderes Schutzniveau als Gold bieten.

    apiVersion: storage.k8s.io/v1
    kind: StorageClass
    metadata:
      name: protection-not-gold
    provisioner: csi.trident.netapp.io
    parameters:
      selector: "protection!=gold"
      fsType: "ext4"
  • Die app-mysqldb StorageClass wird dem dritten virtuellen Pool im ontap-san-economy Backend zugeordnet. Dies ist der einzige Pool, der eine Speicherpoolkonfiguration für den Anwendungstyp mysqldb bietet.

    apiVersion: storage.k8s.io/v1
    kind: StorageClass
    metadata:
      name: app-mysqldb
    provisioner: csi.trident.netapp.io
    parameters:
      selector: "app=mysqldb"
      fsType: "ext4"
  • Die protection-silver-creditpoints-20k StorageClass verweist auf den zweiten virtuellen Pool im ontap-san Backend. Dies ist der einzige Pool, der Schutz auf Silber-Niveau und 20000 Kreditpunkte bietet.

    apiVersion: storage.k8s.io/v1
    kind: StorageClass
    metadata:
      name: protection-silver-creditpoints-20k
    provisioner: csi.trident.netapp.io
    parameters:
      selector: "protection=silver; creditpoints=20000"
      fsType: "ext4"
  • Die creditpoints-5k StorageClass verweist auf den dritten virtuellen Pool im ontap-san Backend und auf den vierten virtuellen Pool im ontap-san-economy Backend. Dies sind die einzigen Poolangebote mit 5000 Kreditpunkten.

    apiVersion: storage.k8s.io/v1
    kind: StorageClass
    metadata:
      name: creditpoints-5k
    provisioner: csi.trident.netapp.io
    parameters:
      selector: "creditpoints=5000"
      fsType: "ext4"
  • Die my-test-app-sc StorageClass wird dem testAPP virtuellen Pool im ontap-san Treiber mit sanType: nvme zugeordnet. Dies ist der einzige Pool, der testApp anbietet.

    ---
    apiVersion: storage.k8s.io/v1
    kind: StorageClass
    metadata:
      name: my-test-app-sc
    provisioner: csi.trident.netapp.io
    parameters:
      selector: "app=testApp"
      fsType: "ext4"

Trident entscheidet, welcher virtuelle Pool ausgewählt wird und stellt sicher, dass die Speicheranforderung erfüllt wird.