ONTAP NAS-Konfigurationsoptionen und -Beispiele
Erfahren Sie, wie Sie mit Ihrer Installation von Astra Trident ONTAP NAS-Treiber erstellen und verwenden. Dieser Abschnitt enthält Beispiele für die Back-End-Konfiguration und Details zur Zuordnung von Back-Ends zu StorageClasses.
Back-End-Konfigurationsoptionen
Die Back-End-Konfigurationsoptionen finden Sie in der folgenden Tabelle:
Parameter | Beschreibung | Standard |
---|---|---|
|
Immer 1 |
|
|
Name des Speichertreibers |
„ontap-nas“, „ontap-nas-Economy“, „ontap-nas-flexgroup“, „ontap-san“, „ontap-san-Economy“ |
|
Benutzerdefinierter Name oder das Storage-Backend |
Treibername + „_“ + DatenLIF |
|
IP-Adresse eines Clusters oder SVM-Management-LIF für nahtlose MetroCluster-Umschaltung müssen Sie eine SVM-Management-LIF angeben. Es kann ein vollständig qualifizierter Domänenname (FQDN) angegeben werden. Kann so eingestellt werden, dass IPv6-Adressen verwendet werden, wenn Astra Trident mit installiert wurde |
„10.0.0.1“, „[2001:1234:abcd::fefe]“ |
|
IP-Adresse des LIF-Protokolls. Wir empfehlen Ihnen, anzugeben |
Angegebene Adresse oder abgeleitet von SVM, falls nicht angegeben (nicht empfohlen) |
|
Aktivieren Sie die automatische Erstellung von Exportrichtlinien und aktualisieren Sie [Boolean]. Verwenden der |
Falsch |
|
Liste der CIDRs, um die Kubernetes-Knoten-IPs gegen Wann zu filtern |
[„0.0.0.0/0“, „:/0“]` |
|
Satz willkürlicher JSON-formatierter Etiketten für Volumes |
„“ |
|
Base64-codierter Wert des Clientzertifikats. Wird für zertifikatbasierte Authentifizierung verwendet |
„“ |
|
Base64-kodierte Wert des privaten Client-Schlüssels. Wird für zertifikatbasierte Authentifizierung verwendet |
„“ |
|
Base64-kodierte Wert des vertrauenswürdigen CA-Zertifikats. Optional Wird für zertifikatbasierte Authentifizierung verwendet |
„“ |
|
Benutzername für die Verbindung mit dem Cluster/SVM. Wird für Anmeldeinformationsbasierte verwendet |
|
|
Passwort für die Verbindung mit dem Cluster/SVM Wird für Anmeldeinformationsbasierte verwendet |
|
|
Zu verwendende Storage Virtual Machine |
Abgeleitet wenn eine SVM |
|
Das Präfix wird beim Bereitstellen neuer Volumes in der SVM verwendet. Kann nicht aktualisiert werden, nachdem Sie sie festgelegt haben |
„Dreizack“ |
|
Bereitstellung fehlgeschlagen, wenn die Nutzung über diesem Prozentsatz liegt. Gilt nicht für Amazon FSX für ONTAP |
„“ (nicht standardmäßig durchgesetzt) |
|
Bereitstellung fehlgeschlagen, wenn die angeforderte Volume-Größe über diesem Wert liegt. |
„“ (nicht standardmäßig durchgesetzt) |
|
Bereitstellung fehlgeschlagen, wenn die angeforderte Volume-Größe über diesem Wert liegt. Schränkt auch die maximale Größe der Volumes ein, die es für qtrees und LUNs verwaltet, und auf ein |
„“ (nicht standardmäßig durchgesetzt) |
|
Die maximale Anzahl an LUNs pro FlexVol muss im Bereich [50, 200] liegen. |
„100“ |
|
Fehler-Flags bei der Fehlerbehebung beheben. Beispiel: { „API“:false, „Methode“:true} Verwenden Sie nicht |
Null |
|
Kommagetrennte Liste von NFS-Mount-Optionen. Die Mount-Optionen für Kubernetes-persistente Volumes werden normalerweise in Storage-Klassen angegeben. Wenn jedoch keine Mount-Optionen in einer Storage-Klasse angegeben sind, stellt Astra Trident die Mount-Optionen bereit, die in der Konfigurationsdatei des Storage-Back-End angegeben sind. Wenn in der Storage-Klasse oder der Konfigurationsdatei keine Mount-Optionen angegeben sind, stellt Astra Trident keine Mount-Optionen für ein damit verbundener persistentes Volume fest. |
„“ |
|
Maximale Ques pro FlexVol, muss im Bereich [50, 300] liegen |
„200“ |
|
Boolescher Parameter zur Verwendung von ONTAP REST-APIs. Technische Vorschau |
Falsch |
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 |
---|---|---|
|
Speicherplatzzuweisung für LUNs |
„Wahr“ |
|
Space Reservation Mode; „none“ (Thin) oder „Volume“ (Thick) |
„Keine“ |
|
Die Snapshot-Richtlinie zu verwenden |
„Keine“ |
|
QoS-Richtliniengruppe zur Zuweisung für erstellte Volumes Wählen Sie eine der qosPolicy oder adaptiveQosPolicy pro Storage Pool/Backend |
„“ |
|
Adaptive QoS-Richtliniengruppe mit Zuordnung für erstellte Volumes Wählen Sie eine der qosPolicy oder adaptiveQosPolicy pro Storage Pool/Backend. Nicht unterstützt durch ontap-nas-Ökonomie |
„“ |
|
Prozentsatz des für Snapshots reservierten Volumens „0“ |
Wenn |
|
Teilen Sie einen Klon bei der Erstellung von seinem übergeordneten Objekt auf |
„Falsch“ |
|
Aktivieren Sie NetApp Volume Encryption (NVE) auf dem neuen Volume, standardmäßig aktiviert |
„Falsch“ |
|
Tiering-Richtlinie zur Verwendung von „keiner“ |
„Nur Snapshot“ für eine ONTAP 9.5 SVM-DR-Konfiguration |
|
Modus für neue Volumes |
„777“ für NFS Volumes; leer (nicht zutreffend) für SMB Volumes |
|
Steuert die Sichtbarkeit des |
„Falsch“ |
|
Zu verwendende Exportrichtlinie |
„Standard“ |
|
Sicherheitstyp für neue Volumes. NFS unterstützt |
NFS-Standard ist |
Die Verwendung von QoS Policy Groups mit Astra Trident erfordert ONTAP 9.8 oder höher. Es wird empfohlen, eine nicht gemeinsam genutzte QoS-Richtliniengruppe zu verwenden und sicherzustellen, dass die Richtliniengruppe auf jede Komponente einzeln angewendet wird. Eine Richtliniengruppe für Shared QoS führt zur Durchsetzung der Obergrenze für den Gesamtdurchsatz aller Workloads. |
Beispiele für die Volume-Bereitstellung
Hier ein Beispiel mit definierten Standardwerten:
--- version: 1 storageDriverName: ontap-nas backendName: customBackendName managementLIF: 10.0.0.1 dataLIF: 10.0.0.2 labels: k8scluster: dev1 backend: dev1-nasbackend svm: trident_svm username: cluster-admin password: password limitAggregateUsage: 80% limitVolumeSize: 50Gi nfsMountOptions: nfsvers=4 debugTraceFlags: api: false method: true defaults: spaceReserve: volume qosPolicy: premium exportPolicy: myk8scluster snapshotPolicy: default snapshotReserve: '10'
Für ontap-nas
Und ontap-nas-flexgroups`Astra Trident verwendet jetzt eine neue Berechnung, um sicherzustellen, dass die FlexVol korrekt mit dem Prozentwert der Snapshot Reserve und PVC dimensioniert ist. Wenn der Benutzer eine PVC anfordert, erstellt Astra Trident unter Verwendung der neuen Berechnung die ursprüngliche FlexVol mit mehr Speicherplatz. Diese Berechnung stellt sicher, dass der Benutzer den beschreibbaren Speicherplatz erhält, für den er in der PVC benötigt wird, und nicht weniger Speicherplatz als der angeforderte. Vor Version 2.07, wenn der Benutzer eine PVC anfordert (z. B. 5 gib), bei der SnapshotReserve auf 50 Prozent, erhalten sie nur 2,5 gib schreibbaren Speicherplatz. Der Grund dafür ist, dass der Benutzer das gesamte Volume und angefordert hat `snapshotReserve
Ist ein Prozentsatz davon. Mit Trident 21.07 sind die Benutzeranforderungen der beschreibbare Speicherplatz, und Astra Trident definiert den snapshotReserve
Zahl als Prozentsatz des gesamten Volumens. Dies gilt nicht für ontap-nas-economy
. Im folgenden Beispiel sehen Sie, wie das funktioniert:
Die Berechnung ist wie folgt:
Total volume size = (PVC requested size) / (1 - (snapshotReserve percentage) / 100)
Für die snapshotReserve = 50 %, und die PVC-Anfrage = 5 gib, beträgt die Gesamtgröße des Volumes 2/.5 = 10 gib, und die verfügbare Größe beträgt 5 gib. Dies entspricht dem, was der Benutzer in der PVC-Anfrage angefordert hat. Der volume show
Der Befehl sollte Ergebnisse anzeigen, die diesem Beispiel ähnlich sind:
Vorhandene Back-Ends aus vorherigen Installationen stellen Volumes wie oben beschrieben beim Upgrade von Astra Trident bereit. Bei Volumes, die Sie vor dem Upgrade erstellt haben, sollten Sie die Größe ihrer Volumes entsprechend der zu beobachtenden Änderung anpassen. Beispiel: Ein 2 gib PVC mit snapshotReserve=50
Früher hat ein Volume ergeben, das 1 gib beschreibbaren Speicherplatz bereitstellt. Wenn Sie die Größe des Volumes auf 3 gib ändern, z. B. stellt die Applikation auf einem 6 gib an beschreibbarem Speicherplatz bereit.
Beispiele
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.
Wenn Sie Amazon FSX auf NetApp ONTAP mit Trident verwenden, empfiehlt es sich, DNS-Namen für LIFs anstelle von IP-Adressen anzugeben. |
Standardoptionen ein <code>ontap-nas-economy</code>
--- version: 1 storageDriverName: ontap-nas-economy managementLIF: 10.0.0.1 dataLIF: 10.0.0.2 svm: svm_nfs username: vsadmin password: password
Zertifikatbasierte Authentifizierung
Dies ist ein minimales Beispiel für die Back-End-Konfiguration. 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 backendName: DefaultNASBackend storageDriverName: ontap-nas managementLIF: 10.0.0.1 dataLIF: 10.0.0.15 svm: nfs_svm clientCertificate: ZXR0ZXJwYXB...ICMgJ3BhcGVyc2 clientPrivateKey: vciwKIyAgZG...0cnksIGRlc2NyaX trustedCACertificate: zcyBbaG...b3Igb3duIGNsYXNz storagePrefix: myPrefix_
Automatische Exportrichtlinie
Diese Beispiele zeigen Ihnen, wie Sie Astra Trident anweisen können, dynamische Exportrichtlinien zu verwenden, um die Exportrichtlinie automatisch zu erstellen und zu verwalten. Das funktioniert auch für das ontap-nas-economy
Und ontap-nas-flexgroup
Treiber.
--- version: 1 storageDriverName: ontap-nas managementLIF: 10.0.0.1 dataLIF: 10.0.0.2 svm: svm_nfs labels: k8scluster: test-cluster-east-1a backend: test1-nasbackend autoExportPolicy: true autoExportCIDRs: - 10.0.0.0/24 username: admin password: password nfsMountOptions: nfsvers=4
--- version: 1 storageDriverName: ontap-nas-flexgroup managementLIF: 10.0.0.1 dataLIF: 10.0.0.2 labels: k8scluster: test-cluster-east-1b backend: test1-ontap-cluster svm: svm_nfs username: vsadmin password: password
Verwenden von IPv6-Adressen
Dieses Beispiel zeigt managementLIF
Verwenden einer IPv6-Adresse.
--- version: 1 storageDriverName: ontap-nas backendName: nas_ipv6_backend managementLIF: "[5c5d:5edf:8f:7657:bef8:109b:1b41:d491]" labels: k8scluster: test-cluster-east-1a backend: test1-ontap-ipv6 svm: nas_ipv6_svm username: vsadmin password: password
ontap-nas-economy
Treiber
--- version: 1 storageDriverName: ontap-nas-economy managementLIF: 10.0.0.1 dataLIF: 10.0.0.2 svm: svm_nfs username: vsadmin password: password
ontap-nas
Treiber für Amazon FSX für ONTAP mithilfe von SMB Volumes
--- version: 1 backendName: SMBBackend storageDriverName: ontap-nas managementLIF: example.mgmt.fqdn.aws.com nasType: smb dataLIF: 10.0.0.15 svm: nfs_svm clientCertificate: ZXR0ZXJwYXB...ICMgJ3BhcGVyc2 clientPrivateKey: vciwKIyAgZG...0cnksIGRlc2NyaX trustedCACertificate: zcyBbaG...b3Igb3duIGNsYXNz storagePrefix: myPrefix_
Beispiele für Back-Ends mit virtuellen Pools
In der unten gezeigten Beispiel-Back-End-Definitionsdatei werden bestimmte Standardeinstellungen für alle Storage Pools festgelegt, z. B. spaceReserve
Bei keiner, spaceAllocation
Bei false, und encryption
Bei false. Die virtuellen Pools werden im Abschnitt Speicher definiert.
Astra Trident setzt Provisioning-Labels im Bereich „Comments“. Kommentare wurden auf FlexVol für gesetzt ontap-nas
Oder FlexGroup für ontap-nas-flexgroup
. Astra Trident kopiert alle Labels auf einem virtuellen Pool auf das Storage-Volume während der Bereitstellung. Storage-Administratoren können Labels je virtuellen Pool definieren und Volumes nach Label gruppieren.
In diesem Beispiel legt ein Teil des Speicherpools seine eigenen fest spaceReserve
, spaceAllocation
, und encryption
Werte und einige Pools überschreiben die oben festgelegten Standardwerte.
<code>ontap-nas</code> Treiber
--- version: 1 storageDriverName: ontap-nas managementLIF: 10.0.0.1 dataLIF: 10.0.0.2 svm: svm_nfs username: admin password: password nfsMountOptions: nfsvers=4 defaults: spaceReserve: none encryption: 'false' qosPolicy: standard labels: store: nas_store k8scluster: prod-cluster-1 region: us_east_1 storage: - labels: app: msoffice cost: '100' zone: us_east_1a defaults: spaceReserve: volume encryption: 'true' unixPermissions: '0755' adaptiveQosPolicy: adaptive-premium - labels: app: slack cost: '75' zone: us_east_1b defaults: spaceReserve: none encryption: 'true' unixPermissions: '0755' - labels: app: wordpress cost: '50' zone: us_east_1c defaults: spaceReserve: none encryption: 'true' unixPermissions: '0775' - labels: app: mysqldb cost: '25' zone: us_east_1d defaults: spaceReserve: volume encryption: 'false' unixPermissions: '0775'
<code>ontap-nas-flexgroup</code> Treiber
--- version: 1 storageDriverName: ontap-nas-flexgroup managementLIF: 10.0.0.1 dataLIF: 10.0.0.2 svm: svm_nfs username: vsadmin password: password defaults: spaceReserve: none encryption: 'false' labels: store: flexgroup_store k8scluster: prod-cluster-1 region: us_east_1 storage: - labels: protection: gold creditpoints: '50000' zone: us_east_1a defaults: spaceReserve: volume encryption: 'true' unixPermissions: '0755' - labels: protection: gold creditpoints: '30000' zone: us_east_1b defaults: spaceReserve: none encryption: 'true' unixPermissions: '0755' - labels: protection: silver creditpoints: '20000' zone: us_east_1c defaults: spaceReserve: none encryption: 'true' unixPermissions: '0775' - labels: protection: bronze creditpoints: '10000' zone: us_east_1d defaults: spaceReserve: volume encryption: 'false' unixPermissions: '0775'
<code>ontap-nas-economy</code> Treiber
--- version: 1 storageDriverName: ontap-nas-economy managementLIF: 10.0.0.1 dataLIF: 10.0.0.2 svm: svm_nfs username: vsadmin password: password defaults: spaceReserve: none encryption: 'false' labels: store: nas_economy_store region: us_east_1 storage: - labels: department: finance creditpoints: '6000' zone: us_east_1a defaults: spaceReserve: volume encryption: 'true' unixPermissions: '0755' - labels: department: legal creditpoints: '5000' zone: us_east_1b defaults: spaceReserve: none encryption: 'true' unixPermissions: '0755' - labels: department: engineering creditpoints: '3000' zone: us_east_1c defaults: spaceReserve: none encryption: 'true' unixPermissions: '0775' - labels: department: humanresource creditpoints: '2000' zone: us_east_1d defaults: spaceReserve: volume encryption: 'false' unixPermissions: '0775'
Aktualisierung dataLIF
Nach der Erstkonfiguration
Sie können die Daten-LIF nach der Erstkonfiguration ändern, indem Sie den folgenden Befehl ausführen, um die neue Backend-JSON-Datei mit aktualisierten Daten-LIF bereitzustellen.
tridentctl update backend <backend-name> -f <path-to-backend-json-file-with-updated-dataLIF>
Wenn PVCs an einen oder mehrere Pods angeschlossen sind, müssen Sie alle entsprechenden Pods herunterfahren und sie dann wieder zurückbringen, damit die neue logische Daten wirksam werden. |
Back-Ends StorageClasses zuordnen
Die folgenden StorageClass-Definitionen beziehen sich auf die oben genannten virtuellen Pools. Verwenden der parameters.selector
Feld gibt in jeder StorageClass an, welche virtuellen Pools zum Hosten eines Volumes verwendet werden können. Auf dem Volume werden die Aspekte im ausgewählten virtuellen Pool definiert.
-
Die erste StorageClass (
protection-gold
) Wird dem ersten, zweiten virtuellen Pool im zugeordnetontap-nas-flexgroup
Back-End und der erste virtuelle Pool imontap-san
Back-End: Dies sind die einzigen Pools, die Schutz auf Goldebene bieten. -
Die zweite StorageClass (
protection-not-gold
) Wird dem dritten, vierten virtuellen Pool in zugeordnetontap-nas-flexgroup
Back-End und der zweite, dritte virtuelle Pool inontap-san
Back-End: Dies sind die einzigen Pools, die Schutz Level nicht Gold bieten. -
Die dritte StorageClass (
app-mysqldb
) Wird dem vierten virtuellen Pool in zugeordnetontap-nas
Back-End und der dritte virtuelle Pool inontap-san-economy
Back-End: Dies sind die einzigen Pools, die eine Storage-Pool-Konfiguration für die mysqldb-Typ-App bieten. -
Die vierte StorageClass (
protection-silver-creditpoints-20k
) Wird dem dritten virtuellen Pool in zugeordnetontap-nas-flexgroup
Back-End und der zweite virtuelle Pool inontap-san
Back-End: Dies sind die einzigen Pools, die Gold-Level-Schutz mit 20000 Kreditpunkten bieten. -
Die fünfte StorageClass (
creditpoints-5k
) Wird dem zweiten virtuellen Pool in zugeordnetontap-nas-economy
Back-End und der dritte virtuelle Pool inontap-san
Back-End: Dies sind die einzigen Poolangebote mit 5000 Kreditpunkten.
Astra Trident entscheidet, welcher virtuelle Pool ausgewählt wird und stellt sicher, dass die Storage-Anforderungen erfüllt werden.
apiVersion: storage.k8s.io/v1 kind: StorageClass metadata: name: protection-gold provisioner: netapp.io/trident parameters: selector: "protection=gold" fsType: "ext4" --- apiVersion: storage.k8s.io/v1 kind: StorageClass metadata: name: protection-not-gold provisioner: netapp.io/trident parameters: selector: "protection!=gold" fsType: "ext4" --- apiVersion: storage.k8s.io/v1 kind: StorageClass metadata: name: app-mysqldb provisioner: netapp.io/trident parameters: selector: "app=mysqldb" fsType: "ext4" --- apiVersion: storage.k8s.io/v1 kind: StorageClass metadata: name: protection-silver-creditpoints-20k provisioner: netapp.io/trident parameters: selector: "protection=silver; creditpoints=20000" fsType: "ext4" --- apiVersion: storage.k8s.io/v1 kind: StorageClass metadata: name: creditpoints-5k provisioner: netapp.io/trident parameters: selector: "creditpoints=5000" fsType: "ext4"