Arbeiten mit NFS-CSI-Treibern - AWS Storage Gateway

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Arbeiten mit NFS-CSI-Treibern

Folgen Sie den Verfahren in diesem Abschnitt, um die CSI-Treiber zu installieren, zu konfigurieren oder zu löschen, die für die Verwendung einer NFS-Dateifreigabe auf einem Amazon S3 File Gateway für die Speicherung in Ihrem Kubernetes-Cluster erforderlich sind. Weitere Informationen finden Sie in der Open-Source-Dokumentation zum NFS-CSI-Treiber unter. GitHub https://github.com/kubernetes-csi/csi-driver-nfs/blob/master/docs/install-csi-driver-master.md

Installieren Sie die Treiber

So installieren Sie Kubernetes NFS CSI-Treiber:
  1. Führen Sie in einem Befehlszeilenterminal mit Zugriff auf Ihren Kubernetes-Cluster den folgenden Befehl aus: kubectl

    curl -skSL https://raw.githubusercontent.com/kubernetes-csi/csi-driver-nfs/master/deploy/install-driver.sh | bash -s master --

  2. Warten Sie, bis der vorherige Befehl abgeschlossen ist, und stellen Sie dann mithilfe der folgenden Befehle sicher, dass die CSI-Treiber-Pods ausgeführt werden:

    kubectl -n kube-system get pod -o wide -l app=csi-nfs-controller

    kubectl -n kube-system get pod -o wide -l app=csi-nfs-node

    Die Ausgabe sollte folgendermaßen oder ähnlich aussehen:

    NAME READY STATUS RESTARTS AGE IP NODE csi-nfs-controller-56bfddd689-dh5tk 4/4 Running 0 35s 10.240.0.19 k8s-agentpool-22533604-0 csi-nfs-controller-56bfddd689-8pgr4 4/4 Running 0 35s 10.240.0.35 k8s-agentpool-22533604-1 csi-nfs-node-cvgbs 3/3 Running 0 35s 10.240.0.35 k8s-agentpool-22533604-1 csi-nfs-node-dr4s4 3/3 Running 0 35s 10.240.0.4 k8s-agentpool-22533604-0

Erstellen Sie ein NFS-Objekt StorageClass

Um ein StorageClass NFS-Objekt für Ihren Kubernetes-Cluster zu erstellen:
  1. Erstellen Sie eine Konfigurationsdatei storageclass.yaml mit einem Namen, der dem folgenden Beispiel ähnelt. Ersetzen Sie die angezeigten Informationen durch Ihre eigenen bereitstellungsspezifischen Informationen. ExampleValues

    --- apiVersion: storage.k8s.io/v1 kind: StorageClass metadata: name: example-nfs-classname namespace: example-namespace provisioner: nfs.csi.k8s.io parameters: server: gateway-dns-name-or-ip-address share: /example-share-name reclaimPolicy: Retain volumeBindingMode: Immediate mountOptions: - hard - nfsvers=4.1
  2. Führen Sie in einem Befehlszeilenterminal mit Zugriff auf kubectl und den folgenden storageclass.yaml Befehl aus:

    kubectl apply -f storageclass.yaml

    Anmerkung

    Sie können den auch erstellen, StorageClass indem Sie den .yaml Konfigurationstext aus dem vorherigen Schritt für die meisten Kubernetes-Verwaltungs- und Containerisierungsplattformen von Drittanbietern bereitstellen.

  3. Konfigurieren Sie die Pods in Ihrem Kubernetes-Cluster so, dass sie das neue Objekt verwenden, das Sie erstellt haben. StorageClass Weitere Informationen finden Sie in der Kubernetes-Online-Dokumentation unter. https://kubernetes.io/docs/concepts/storage/

Erstellen Sie PersistentVolume NFS und Objekte PersistentVolumeClaim

Um neue NFS PersistentVolume und PersistentVolumeClaim Objekte zu erstellen:
  1. Erstellen Sie zwei Konfigurationsdateien mit dem Namen persistentvolume.yaml undpersistentvolumeclaim.yaml.

  2. Fügen Sie für Inhalte hinzupersistentvolume.yaml, die dem folgenden Beispiel ähneln. Ersetzen Sie die angezeigten Informationen durch Ihre eigenen einsatzspezifischen Informationen. ExampleValues

    --- apiVersion: v1 kind: PersistentVolume metadata: name: pv-nfs-examplename spec: capacity: storage: 10Gi accessModes: - ReadWriteMany persistentVolumeReclaimPolicy: Retain mountOptions: - hard - nolock - nfsvers=4.1 csi: driver: nfs.csi.k8s.io readOnly: false volumeHandle: unique-volumeid-example # make sure it's a unique id in the cluster volumeAttributes: server: gateway-dns-name-or-ip-address share: /example-share-name
  3. Fügen Sie für Inhalte hinzupersistentvolumeclaim.yaml, die dem folgenden Beispiel ähneln. Ersetzen Sie die angezeigten Informationen durch Ihre eigenen einsatzspezifischen Informationen. ExampleValues

    --- kind: PersistentVolumeClaim apiVersion: v1 metadata: name: examplename-pvc-nfs-static spec: accessModes: - ReadWriteMany resources: requests: storage: 10Gi volumeName: pv-nfs-examplename # make sure specfied volumeName matches the name of the PersistentVolume you created storageClassName: ""
  4. Führen Sie in einem Befehlszeilenterminal mit Zugriff auf kubectl und beide .yaml Dateien die folgenden Befehle aus:

    kubectl apply -f persistentvolume.yaml

    kubectl apply -f persistentvolumeclaim.yaml

    Anmerkung

    Sie können die PersistentVolumeClaim Objekte PersistentVolume und auch erstellen, indem Sie den .yaml Konfigurationstext aus dem vorherigen Schritt für die meisten Kubernetes-Verwaltungs- und Containerisierungsplattformen von Drittanbietern bereitstellen.

  5. Konfigurieren Sie die Pods in Ihrem Kubernetes-Cluster so, dass sie das neue Objekt verwenden, das Sie erstellt haben. PersistentVolumeClaim Weitere Informationen finden Sie in der Kubernetes-Online-Dokumentation unter. https://kubernetes.io/docs/concepts/storage/

Deinstallieren Sie die Treiber

So deinstallieren Sie die Kubernetes NFS CSI-Treiber:
  • Führen Sie in einem Befehlszeilenterminal mit Zugriff auf Ihren Kubernetes-Cluster den folgenden Befehl aus: kubectl

    curl -skSL https://raw.githubusercontent.com/kubernetes-csi/csi-driver-nfs/master/deploy/uninstall-driver.sh | bash -s master --