Konfigurieren Sie eine Speicherklasse und einen PVC.
Konfigurieren Sie ein Kubernetes StorageClass-Objekt und erstellen Sie die Storage-Klasse, um Trident anzuweisen, wie Volumes bereitgestellt werden sollen. Erstellen Sie einen PersistentVolumeClaim (PVC), der die konfigurierte Kubernetes StorageClass verwendet, um Zugriff auf das PV anzufordern. Anschließend können Sie die PV-Anlage an einem Pod montieren.
Erstellen einer Speicherklasse
Konfigurieren eines Kubernetes StorageClass-Objekts
Der "Kubernetes StorageClass-Objekt" Das Objekt identifiziert Trident als den für diese Klasse verwendeten Provisionierer und weist Trident an, wie ein Volume zu provisionieren ist. Verwenden Sie dieses Beispiel, um die Speicherklasse für Volumes mit NFS einzurichten (die vollständige Liste der Attribute finden Sie im Abschnitt „Trident -Attribute“ weiter unten):
apiVersion: storage.k8s.io/v1
kind: StorageClass
metadata:
name: ontap-gold
provisioner: csi.trident.netapp.io
parameters:
backendType: "ontap-nas"
provisioningType: "thin"
snapshots: "true"
Verwenden Sie dieses Beispiel, um die Speicherklasse für Volumes mit iSCSI einzurichten:
apiVersion: storage.k8s.io/v1
kind: StorageClass
metadata:
name: ontap-gold
provisioner: csi.trident.netapp.io
parameters:
backendType: "ontap-san"
provisioningType: "thin"
snapshots: "true"
Um NFSv3-Volumes auf AWS Bottlerocket bereitzustellen, fügen Sie die erforderlichen Komponenten hinzu. mountOptions zur Speicherklasse:
apiVersion: storage.k8s.io/v1
kind: StorageClass
metadata:
name: ontap-gold
provisioner: csi.trident.netapp.io
parameters:
backendType: "ontap-nas"
media: "ssd"
provisioningType: "thin"
snapshots: "true"
mountOptions:
- nfsvers=3
- nolock
Siehe"Kubernetes- und Trident Objekte" Einzelheiten darüber, wie Speicherklassen mit dem interagieren, finden Sie hier. PersistentVolumeClaim und Parameter zur Steuerung der Volumenbereitstellung Trident .
Erstellen einer Speicherklasse
-
Dies ist ein Kubernetes-Objekt, also verwenden Sie
kubectlum es in Kubernetes zu erstellen.kubectl create -f storage-class-ontapnas.yaml -
Sie sollten nun sowohl in Kubernetes als auch in Trident eine basic-csi-Speicherklasse sehen, und Trident sollte die Pools im Backend erkannt haben.
kubectl get sc basic-csi
NAME PROVISIONER AGE basic-csi csi.trident.netapp.io 15h
PVC erstellen
A "PersistentVolumeClaim" (PVC) ist eine Anfrage für den Zugriff auf das PersistentVolume im Cluster.
Das PVC kann so konfiguriert werden, dass es Speicherplatz einer bestimmten Größe oder einen bestimmten Zugriffsmodus anfordert. Mithilfe der zugehörigen StorageClass kann der Clusteradministrator mehr als nur die Größe und den Zugriffsmodus des PersistentVolumes steuern – beispielsweise die Leistung oder das Servicelevel.
Nachdem Sie das PVC erstellt haben, können Sie das Volumen in einem Gehäuse montieren.
Beispielmanifeste
Beispielmanifeste für PersistentVolumeClaim
Diese Beispiele zeigen grundlegende PVC-Konfigurationsoptionen.
Dieses Beispiel zeigt eine einfache PVC mit RWX-Zugriff, die einer StorageClass namens zugeordnet ist. basic-csi .
kind: PersistentVolumeClaim
apiVersion: v1
metadata:
name: pvc-storage
spec:
accessModes:
- ReadWriteMany
resources:
requests:
storage: 1Gi
storageClassName: ontap-gold
Dieses Beispiel zeigt eine einfache PVC für iSCSI mit RWO-Zugriff, die einer StorageClass namens zugeordnet ist. protection-gold .
kind: PersistentVolumeClaim
apiVersion: v1
metadata:
name: pvc-san
spec:
accessModes:
- ReadWriteOnce
resources:
requests:
storage: 1Gi
storageClassName: protection-gold
PVC erstellen
-
Erstellen Sie die PVC.
kubectl create -f pvc.yaml -
Überprüfen Sie den PVC-Status.
kubectl get pvc
NAME STATUS VOLUME CAPACITY ACCESS MODES STORAGECLASS AGE pvc-storage Bound pv-name 2Gi RWO 5m
Siehe"Kubernetes- und Trident Objekte" Einzelheiten darüber, wie Speicherklassen mit dem interagieren, finden Sie hier. PersistentVolumeClaim und Parameter zur Steuerung der Volumenbereitstellung Trident .
Trident Eigenschaften
Diese Parameter legen fest, welche von Trident verwalteten Speicherpools zur Bereitstellung von Volumes eines bestimmten Typs verwendet werden sollen.
| Attribut | Typ | Werte | Angebot | Anfrage | Unterstützt von |
|---|---|---|---|---|---|
media1 |
Schnur |
HDD, Hybrid, SSD |
Der Pool enthält Medien dieses Typs; hybrid bedeutet beides |
Medientyp angegeben |
ontap-nas, ontap-nas-economy, ontap-nas-flexgroup, ontap-san, solidfire-san |
Bereitstellungstyp |
Schnur |
dünn, dick |
Pool unterstützt diese Bereitstellungsmethode |
Bereitstellungsmethode angegeben |
dick: alles vom Fass; dünn: alles vom Fass & Solidfire-San |
Backend-Typ |
Schnur |
ontap-nas, ontap-nas-economy, ontap-nas-flexgroup, ontap-san, solidfire-san, gcp-cvs, azure-netapp-files, ontap-san-economy |
Pool gehört zu dieser Art von Backend. |
Backend spezifiziert |
Alle Fahrer |
Momentaufnahmen |
bool |
wahr, falsch |
Pool unterstützt Volumes mit Snapshots |
Volume mit aktivierten Snapshots |
ontap-nas, ontap-san, solidfire-san, gcp-cvs |
Klone |
bool |
wahr, falsch |
Pool unterstützt das Klonen von Volumes |
Volume mit aktivierten Klonen |
ontap-nas, ontap-san, solidfire-san, gcp-cvs |
Verschlüsselung |
bool |
wahr, falsch |
Pool unterstützt verschlüsselte Volumes |
Volume mit aktivierter Verschlüsselung |
ontap-nas, ontap-nas-economy, ontap-nas-flexgroups, ontap-san |
IOPS |
int |
positive ganze Zahl |
Pool ist in der Lage, IOPS in diesem Bereich zu garantieren. |
Volumen garantiert diese IOPS |
solidfire-san |
1: Wird von ONTAP Select -Systemen nicht unterstützt.