Estos contenidos se han traducido de forma automática para su comodidad, pero Huawei Cloud no garantiza la exactitud de estos. Para consultar los contenidos originales, acceda a la versión en inglés.
Actualización más reciente 2024-09-10 GMT+08:00

Configuración de las opciones de montaje de volumen de SFS

Esta sección describe cómo configurar las opciones de montaje de volumen de SFS. Puede configurar las opciones de montaje en un PV y vincularlo a un PVC. Alternativamente, configure las opciones de montaje en un StorageClass y use el StorageClass para crear un PVC. De esta manera, los PV se pueden crear dinámicamente y heredar opciones de montaje configuradas en el StorageClass de forma predeterminada.

Requisitos previos

La versión del complemento más antiguo debe ser 1.2.8 o posterior. El complemento identifica las opciones de montaje y las transfiere a los recursos de almacenamiento subyacentes, que determinan si las opciones especificadas son válidas.

Restricciones

Las opciones de montaje no se pueden configurar para los contenedores seguros.

Opciones de montaje de volumen de SFS

El complemento más antiguo de CCE ajusta las opciones descritas en Tabla 1 para el montaje de volúmenes de SFS.

Tabla 1 Opciones de montaje de volumen de SFS

Parámetro

Descripción

vers=3

Versión del sistema de archivos. Actualmente, solo se admite NFSv3. Valor: 3

nolock

Si se deben bloquear los archivos en el servidor mediante el protocolo NLM. Si se selecciona nolock, el bloqueo es válido para aplicaciones en un host. Para aplicaciones en otro host, el bloqueo no es válido.

timeo=600

Tiempo de espera antes de que el cliente NFS retransmita una solicitud. La unidad es de 0.1 segundos. Valor recomendado: 600

hard/soft

Modo de montaje.

  • hard: Si el tiempo de espera de la solicitud NFS, el cliente sigue reenviando la solicitud hasta que la solicitud se realiza correctamente.
  • soft: Si el tiempo de espera de la solicitud NFS, el cliente devuelve un error al programa invocador.

El valor predeterminado es hard.

Puede configurar otras opciones de montaje si es necesario. Para obtener más información, consulte Montaje de un sistema de archivos NFS en ECS (Linux).

Configuración de opciones de montaje en un PV

Puede utilizar el campo mountOptions para establecer las opciones de montaje en un PV. Las opciones que puede configurar en mountOptions se enumeran en Opciones de montaje de volumen de SFS.

  1. Utilice kubectl para conectarse al clúster. Para obtener más información, véase Conexión a un clúster con kubectl.
  2. Establezca las opciones de montaje en un PV. Por ejemplo:

    apiVersion: v1
    kind: PersistentVolume
    metadata:
      annotations:
        pv.kubernetes.io/provisioned-by: everest-csi-provisioner
        everest.io/reclaim-policy: retain-volume-only      # (Optional) The PV is deleted while the underlying volume is retained.
      name: pv-sfs
    spec:
      accessModes:
      - ReadWriteMany      # Access mode. The value must be ReadWriteMany for SFS.
      capacity:
        storage: 1Gi     # SFS volume capacity.
      csi:
        driver: disk.csi.everest.io   # Dependent storage driver for the mounting.
        fsType: nfs
        volumeHandle: <your_volume_id>   # ID of the SFS Capacity-Oriented volume.
        volumeAttributes:
          everest.io/share-export-location: <your_location>  # Shared path of the SFS volume.
          storage.kubernetes.io/csiProvisionerIdentity: everest-csi-provisioner
      persistentVolumeReclaimPolicy: Retain    # Reclaim policy.
      storageClassName: csi-nas                # Storage class name.
      mountOptions:                            # Mount options.
      - vers=3
      - nolock
      - timeo=600
      - hard

  3. Después de crear un PV, puede crear un PVC y vincularlo al PV y, a continuación, montar el PV en el contenedor en la carga de trabajo. Para obtener más información, véase Uso de un sistema de archivos de SFS existente con un PV estático.
  4. Compruebe si las opciones de montaje tienen efecto.

    En este ejemplo, el PVC se monta en la carga de trabajo que utiliza la imagen nginx:latest. Puede ejecutar el comando mount -l para comprobar si las opciones de montaje tienen efecto.
    1. Vea el pod en el que se ha montado el volumen de SFS. En este ejemplo, el nombre de la carga de trabajo es web-sfs.
      kubectl get pod | grep web-sfs

      Salida del comando:

      web-sfs-***   1/1     Running   0             23m
    2. Ejecute el siguiente comando para comprobar las opciones de montaje (web-sfs-*** es un pod de ejemplo):
      kubectl exec -it web-sfs-*** -- mount -l | grep nfs

      Si la información de montaje en la salida del comando es consistente con las opciones de montaje configuradas, las opciones de montaje se establecen correctamente.

      <Your shared path> on /data type nfs (rw,relatime,vers=3,rsize=1048576,wsize=1048576,namlen=255,hard,nolock,noresvport,proto=tcp,timeo=600,retrans=2,sec=sys,mountaddr=**.**.**.**,mountvers=3,mountport=2050,mountproto=tcp,local_lock=all,addr=**.**.**.**)

Configuración de las opciones de montaje en un StorageClass

Puede utilizar el campo mountOptions para establecer las opciones de montaje en un StorageClass. Las opciones que puede configurar en mountOptions se enumeran en Opciones de montaje de volumen de SFS.

  1. Utilice kubectl para conectarse al clúster. Para obtener más información, véase Conexión a un clúster con kubectl.
  2. Cree un StorageClass personalizado. Por ejemplo:

    apiVersion: storage.k8s.io/v1
    kind: StorageClass
    metadata:
      name: csi-sfs-mount-option
    provisioner: everest-csi-provisioner
    parameters:
      csi.storage.k8s.io/csi-driver-name: nas.csi.everest.io
      csi.storage.k8s.io/fstype: nfs
    everest.io/share-access-to: <your_vpc_id> # VPC ID of the cluster.
    reclaimPolicy: Delete
    volumeBindingMode: Immediate
    mountOptions:                            # Mount options.
    - vers=3
    - nolock
    - timeo=600
    - hard

  3. Una vez configurado el StorageClass, puede usarlo para crear un PVC. De forma predeterminada, los PV creados dinámicamente heredan las opciones de montaje establecidas en el StorageClass. Para obtener más información, véase Uso de un sistema de archivos SFS a través de un PV dinámico.
  4. Compruebe si las opciones de montaje tienen efecto.

    En este ejemplo, el PVC se monta en la carga de trabajo que utiliza la imagen nginx:latest. Puede ejecutar el comando mount -l para comprobar si las opciones de montaje tienen efecto.
    1. Vea el pod en el que se ha montado el volumen de SFS. En este ejemplo, el nombre de la carga de trabajo es web-sfs.
      kubectl get pod | grep web-sfs

      Salida del comando:

      web-sfs-***   1/1     Running   0             23m
    2. Ejecute el siguiente comando para comprobar las opciones de montaje (web-sfs-*** es un pod de ejemplo):
      kubectl exec -it web-sfs-*** -- mount -l | grep nfs

      Si la información de montaje en la salida del comando es consistente con las opciones de montaje configuradas, las opciones de montaje se establecen correctamente.

      <Your shared path> on /data type nfs (rw,relatime,vers=3,rsize=1048576,wsize=1048576,namlen=255,hard,nolock,noresvport,proto=tcp,timeo=600,retrans=2,sec=sys,mountaddr=**.**.**.**,mountvers=3,mountport=2050,mountproto=tcp,local_lock=all,addr=**.**.**.**)