View a markdown version of this page

Uso de controladores CSI NFS - AWS Storage Gateway

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

Uso de controladores CSI NFS

Siga los procedimientos indicados en esta sección para instalar, configurar o eliminar los controladores CSI que son necesarios para usar un recurso compartido de archivos NFS en una puerta de enlace de archivo de Amazon S3 para su almacenamiento en su clúster de Kubernetes. Para obtener más información, consulte la documentación del controlador CSI NFS de código abierto en. GitHub https://github.com/kubernetes-csi/csi-driver-nfs/blob/master/docs/install-csi-driver-master.md

Instalar controladores

Para instalar controladores CSI NFS de Kubernetes:
  1. Desde un terminal de línea de comandos con acceso a kubectl para el clúster de Kubernetes, ejecute el siguiente comando:

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

  2. Espere a que finalice el comando anterior y, a continuación, utilice los siguientes comandos para asegurarse de que los pods del controlador CSI se estén ejecutando:

    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

    El resultado debería tener un aspecto similar al siguiente:

    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

Cree un objeto NFS StorageClass

Para crear un StorageClass objeto NFS para tu clúster de Kubernetes:
  1. Cree un archivo de configuración denominado storageclass.yaml con un contenido similar al del siguiente ejemplo. Sustituya la que se muestra por su propia información específica de la implementación. 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. Desde un terminal de línea de comandos con acceso a kubectl ystorageclass.yaml, ejecute el siguiente comando:

    kubectl apply -f storageclass.yaml

    nota

    También puedes crearlo StorageClass proporcionando el texto de .yaml configuración del paso anterior a la mayoría de las plataformas de administración y contenedorización de Kubernetes de terceros.

  3. Configura los pods de tu clúster de Kubernetes para que usen el nuevo objeto que has creado. StorageClass Para obtener más información, consulte la documentación en línea de Kubernetes en https://kubernetes.io/docs/concepts/storage/.

Crea NFS y objetos PersistentVolume PersistentVolumeClaim

Para crear nuevos PersistentVolumeClaim objetos PersistentVolume y NFS:
  1. Cree dos archivos de configuración denominados persistentvolume.yaml y persistentvolumeclaim.yaml.

  2. Para persistentvolume.yaml, agregue contenido similar al del siguiente ejemplo. Sustituya la que se muestra por su propia información específica de la implementación. 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. Para persistentvolumeclaim.yaml, agregue contenido similar al del siguiente ejemplo. Sustituya la información específica de la implementación por la que se muestra. 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. Desde un terminal de línea de comandos con acceso a kubectl y a los dos archivos .yaml, ejecute los siguientes comandos:

    kubectl apply -f persistentvolume.yaml

    kubectl apply -f persistentvolumeclaim.yaml

    nota

    También puede crear los PersistentVolumeClaim objetos PersistentVolume y proporcionando el texto de .yaml configuración del paso anterior a la mayoría de las plataformas de administración y contenedorización de Kubernetes de terceros.

  5. Configura los pods de tu clúster de Kubernetes para que usen el nuevo objeto que has creado. PersistentVolumeClaim Para obtener más información, consulte la documentación en línea de Kubernetes en https://kubernetes.io/docs/concepts/storage/.

Desinstalar controladores

Para desinstalar controladores CSI de Kubernetes NFS:
  • Desde un terminal de línea de comandos con acceso a kubectl para el clúster de Kubernetes, ejecute el siguiente comando:

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