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

Beispiel: Kubernetes StorageClasses for NetApp AIPod Deployments

Beitragende

Bevor Trident zur dynamischen Provisionierung von Storage-Ressourcen innerhalb Ihres Kubernetes-Clusters verwendet werden kann, müssen Sie einen oder mehrere Kubernetes StorageClasses erstellen. Die folgenden Beispiele stellen verschiedene Typen von StorageClasses dar, die Sie erstellen möchten, wenn Sie Komponenten dieser Lösung auf einem bereitstellen "NetApp AIPod". Weitere Informationen zu StorageClasses, z. B. StorageClasses für andere Plattformen/Umgebungen, finden Sie im "Trident Dokumentation".

  1. NetApp empfiehlt das Erstellen einer StorageClass für das FlexGroup-fähige Trident-Backend, das Sie im Abschnitt "Beispiel für Trident Back-Ends für NetApp Implementierungen", Schritt 1 erstellt haben. Die folgenden Beispielbefehle zeigen die Erstellung mehrerer StorageClasses, die den beiden Beispiel-Backend entsprechen, das im Abschnitt "Beispiel für Trident Back-Ends für NetApp Implementierungen", Schritt 1 erstellt wurde - einer, der verwendet und einer, der nicht verwendet "NFS über RDMA"wird.

    Damit ein anhaltendes Volume nicht gelöscht wird, wenn das entsprechende PersistenzVolumeClaim (PVC) gelöscht wird, verwendet das folgende Beispiel ein reclaimPolicy Der Wert von Retain. Weitere Informationen zum reclaimPolicy Feld, siehe den offiziellen "Kubernetes-Dokumentation".

    Hinweis: Das folgende Beispiel StorageClasses verwendet eine maximale Übertragungsgröße von 262144. Um diese maximale Übertragungsgröße zu verwenden, müssen Sie die maximale Übertragungsgröße auf Ihrem ONTAP-System entsprechend konfigurieren. Weitere Informationen finden Sie im "ONTAP-Dokumentation" .

    Hinweis: Um NFS über RDMA zu verwenden, müssen Sie NFS über RDMA auf Ihrem ONTAP-System konfigurieren. Weitere Informationen finden Sie im "ONTAP-Dokumentation" .

    Hinweis: Im folgenden Beispiel wird im Feld StoragePool in der Definitionsdatei der StorageClass kein bestimmtes Backend angegeben.

    $ cat << EOF > ./storage-class-aipod-flexgroups-retain.yaml
    apiVersion: storage.k8s.io/v1
    kind: StorageClass
    metadata:
      name: aipod-flexgroups-retain
    provisioner: csi.trident.netapp.io
    mountOptions: ["vers=4.1", "nconnect=16", "rsize=262144", "wsize=262144"]
    parameters:
      backendType: "ontap-nas-flexgroup"
      storagePools: "aipod-flexgroups-iface1:.*"
    reclaimPolicy: Retain
    EOF
    $ kubectl create -f ./storage-class-aipod-flexgroups-retain.yaml
    storageclass.storage.k8s.io/aipod-flexgroups-retain created
    $ cat << EOF > ./storage-class-aipod-flexgroups-retain-rdma.yaml
    apiVersion: storage.k8s.io/v1
    kind: StorageClass
    metadata:
      name: aipod-flexgroups-retain-rdma
    provisioner: csi.trident.netapp.io
    mountOptions: ["vers=4.1", "proto=rdma", "max_connect=16", "rsize=262144", "wsize=262144"]
    parameters:
      backendType: "ontap-nas-flexgroup"
      storagePools: "aipod-flexgroups-iface1:.*"
    reclaimPolicy: Retain
    EOF
    $ kubectl create -f ./storage-class-aipod-flexgroups-retain-rdma.yaml
    storageclass.storage.k8s.io/aipod-flexgroups-retain-rdma created
    $ kubectl get storageclass
    NAME                             PROVISIONER             AGE
    aipod-flexgroups-retain          csi.trident.netapp.io   0m
    aipod-flexgroups-retain-rdma     csi.trident.netapp.io   0m
  2. NetApp empfiehlt außerdem, eine StorageClass "Beispiel für Trident Back-Ends für AIPod Implementierungen"zu erstellen, die dem FlexVol-fähigen Trident-Backend entspricht, das Sie im Abschnitt , Schritt 2 erstellt haben. Die folgenden Beispielbefehle zeigen die Erstellung einer einzelnen StorageClass für FlexVol Volumes.

    Hinweis: Im folgenden Beispiel wird im Feld StoragePool in der Definitionsdatei der StorageClass kein bestimmtes Backend angegeben. Wenn Sie Kubernetes zum Verwalten von Volumes über diese StorageClass verwenden, versucht Trident, jedes verfügbare Back-End zu verwenden, das die verwendet ontap-nas Treiber.

    $ cat << EOF > ./storage-class-aipod-flexvols-retain.yaml
    apiVersion: storage.k8s.io/v1
    kind: StorageClass
    metadata:
      name: aipod-flexvols-retain
    provisioner: netapp.io/trident
    parameters:
      backendType: "ontap-nas"
    reclaimPolicy: Retain
    EOF
    $ kubectl create -f ./storage-class-aipod-flexvols-retain.yaml
    storageclass.storage.k8s.io/aipod-flexvols-retain created
    $ kubectl get storageclass
    NAME                             PROVISIONER             AGE
    aipod-flexgroups-retain          csi.trident.netapp.io   0m
    aipod-flexgroups-retain-rdma     csi.trident.netapp.io   0m
    aipod-flexvols-retain            csi.trident.netapp.io   0m