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.
Trabajando con controladores CSI de NFS
Siga los procedimientos de esta sección para instalar, configurar o eliminar los controladores CSI necesarios para usar un recurso compartido de archivos NFS en una puerta de enlace de archivos de Amazon S3 para su almacenamiento en su clúster de Kubernetes. Para obtener más información, consulte la documentación de código abierto sobre el controlador CSI de NFS en. GitHub https://github.com/kubernetes-csi/csi-driver-nfs/blob/master/docs/install-csi-driver-master.md
Instale los controladores
Para instalar los controladores CSI NFS de Kubernetes:
-
Desde un terminal de línea de comandos con acceso a tu clúster de Kubernetes,
kubectl
ejecuta el siguiente comando:curl -skSL https://raw.githubusercontent.com/kubernetes-csi/csi-driver-nfs/master/deploy/install-driver.sh | bash -s master --
-
Espere a que finalice el comando anterior y, a continuación, utilice los siguientes comandos para asegurarse de que los módulos de controladores 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:
-
Cree un archivo de configuración con un nombre
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 -
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. -
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, consulta la documentación en línea de Kubernetes en. https://kubernetes.io/docs/concepts/storage/
Cree NFS y objetos PersistentVolume PersistentVolumeClaim
Para crear nuevos PersistentVolumeClaim objetos PersistentVolume y NFS:
-
Cree dos archivos de configuración denominados
persistentvolume.yaml
y.persistentvolumeclaim.yaml
-
Para
persistentvolume.yaml
, añada contenido similar al 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
-
En lugar de eso
persistentvolumeclaim.yaml
, añada contenido similar al del siguiente ejemplo. Sustituya la que se muestra por su propia información específica de la implementación.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: "" -
Desde un terminal de línea de comandos con acceso a ambos
.yaml
archivoskubectl
y a ambos, ejecute los siguientes comandos:kubectl apply -f persistentvolume.yaml
kubectl apply -f persistentvolumeclaim.yaml
nota
También puedes 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. -
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, consulta la documentación en línea de Kubernetes en. https://kubernetes.io/docs/concepts/storage/
Desinstale los controladores
Para desinstalar los controladores CSI de Kubernetes NFS:
-
Desde un terminal de línea de comandos con acceso a tu clúster de Kubernetes,
kubectl
ejecuta el siguiente comando:curl -skSL https://raw.githubusercontent.com/kubernetes-csi/csi-driver-nfs/master/deploy/uninstall-driver.sh | bash -s master --