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

(kubectl) Creación de un PV a partir de un sistema de archivos de SFS existente

Notes and Constraints

The following configuration example applies to clusters of Kubernetes 1.13 or earlier.

Procedimiento

  1. Inicie sesión en la consola de SFS, cree un sistema de archivos y registre el ID del sistema de archivos, la ruta compartida y la capacidad.
  2. Utilice kubectl para conectarse al clúster. Para obtener más información, véase Conexión a un clúster con kubectl.
  3. Cree dos archivos YAML para crear el PV y el PVC. Suponga que los nombres de archivo son pv-sfs-example.yaml y pvc-sfs-example.yaml.

    touch pv-sfs-example.yaml pvc-sfs-example.yaml

    Versión de clúster de Kubernetes

    Descripción

    Ejemplo de YAML

    1.11 ≤ la versión de K8s < 1.13

    Clústeres de v1.11 a v1.13

    Ejemplo de YAML

    Versión de K8s = 1.9

    Clústeres de v1.9

    Ejemplo de YAML

    Clústeres desde v1.11 a v1.13

    • Ejemplo de archivo YAML para el PV:
      apiVersion: v1 
      kind: PersistentVolume 
      metadata: 
        name: pv-sfs-example 
        annotations:
          pv.kubernetes.io/provisioned-by: flexvolume-huawei.com/fuxinfs
      spec: 
        accessModes: 
        - ReadWriteMany 
        capacity: 
          storage: 10Gi 
        claimRef:
          apiVersion: v1
          kind: PersistentVolumeClaim
          name: pvc-sfs-example
          namespace: default
        flexVolume: 
          driver: huawei.com/fuxinfs 
          fsType: nfs 
          options: 
            deviceMountPath: <your_deviceMountPath>  # Shared storage path of your file.
            fsType: nfs 
            volumeID: f6976f9e-2493-419b-97ca-d7816008d91c 
        persistentVolumeReclaimPolicy: Delete 
        storageClassName: nfs-rw
      Tabla 1 Parámetros de clave

      Parámetro

      Descripción

      driver

      Controlador de almacenamiento utilizado para montar el volumen. Establezca el controlador en huawei.com/fuxinfs para el sistema de archivos.

      deviceMountPath

      Ruta de acceso compartida del sistema de archivos.

      En la consola de gestión, elija Service List >Storage >Scalable File Service. Puede obtener la ruta compartida del sistema de archivos desde la columna Mount Address, como se muestra en Figura 1.

      volumeID

      ID del sistema de archivos.

      Para obtener el ID, inicie sesión en la consola de CCE, elija Resource Management > Storage, haga clic en el nombre de PVC en la página de ficha SFS y copie el ID de PVC en la página de detalles de PVC.

      storage

      Tamaño del sistema de archivos.

      storageClassName

      Modo de lectura/escritura compatible con el sistema de archivos. Actualmente, son compatibles con nfs-rw y nfs-ro.

      spec.claimRef.apiVersion

      El valor se fija en v1.

      spec.claimRef.kind

      El valor se fija en PersistentVolumeClaim.

      spec.claimRef.name

      El valor es el mismo que el nombre del PVC creado en el siguiente paso.

      spec.claimRef.namespace

      Espacio de nombres del PVC. El valor es el mismo que el espacio de nombres del PVC creado en el siguiente paso.

    • Ejemplo de archivo YAML para el PVC:
      apiVersion: v1
      kind: PersistentVolumeClaim
      metadata:
        annotations:
          volume.beta.kubernetes.io/storage-class: nfs-rw
          volume.beta.kubernetes.io/storage-provisioner: flexvolume-huawei.com/fuxinfs
        name: pvc-sfs-example
        namespace: default
      spec:
        accessModes:
        - ReadWriteMany
        resources:
          requests:
            storage: 10Gi
        volumeName: pv-sfs-example
      Tabla 2 Parámetros de clave

      Parámetro

      Descripción

      volume.beta.kubernetes.io/storage-class

      Modo de lectura/escritura compatible con el sistema de archivos. nfs-rw y nfs-ro son compatibles. El valor debe ser el mismo que el del PV existente.

      volume.beta.kubernetes.io/storage-provisioner

      Se debe establecer en flexvolume-huawei.com/fuxinfs.

      storage

      Capacidad de almacenamiento, en la unidad de Gi. El valor debe ser el mismo que el tamaño de almacenamiento del PV existente.

      volumeName

      Nombre del PV.

    Clústeres de v1.9

    • Ejemplo de archivo YAML para el PV:
      apiVersion: v1 
      kind: PersistentVolume 
      metadata: 
        name: pv-sfs-example 
        namespace: default 
      spec: 
        accessModes: 
        - ReadWriteMany 
        capacity: 
          storage: 10Gi 
        flexVolume: 
          driver: huawei.com/fuxinfs 
          fsType: nfs 
          options: 
            deviceMountPath: <your_deviceMountPath>  # Shared storage path of your file.
            fsType: nfs 
            kubernetes.io/namespace: default 
            volumeID: f6976f9e-2493-419b-97ca-d7816008d91c 
        persistentVolumeReclaimPolicy: Delete 
        storageClassName: nfs-rw
      Tabla 3 Parámetros de clave

      Parámetro

      Descripción

      driver

      Controlador de almacenamiento utilizado para montar el volumen. Establezca el controlador en huawei.com/fuxinfs para el sistema de archivos.

      deviceMountPath

      Ruta de acceso compartida del sistema de archivos.

      En la consola de gestión, elija Service List >Storage >Scalable File Service. Puede obtener la ruta compartida del sistema de archivos desde la columna Mount Address, como se muestra en Figura 1.

      volumeID

      ID del sistema de archivos.

      Para obtener el ID, inicie sesión en la consola de CCE, elija Resource Management > Storage, haga clic en el nombre de PVC en la página de ficha SFS y copie el ID de PVC en la página de detalles de PVC.

      storage

      Tamaño del sistema de archivos.

      storageClassName

      Modo de lectura/escritura compatible con el sistema de archivos. Actualmente, son compatibles con nfs-rw y nfs-ro.

    • Ejemplo de archivo YAML para el PVC:
      apiVersion: v1
      kind: PersistentVolumeClaim
      metadata:
        annotations:
          volume.beta.kubernetes.io/storage-class: nfs-rw
          volume.beta.kubernetes.io/storage-provisioner: flexvolume-huawei.com/fuxinfs
        name: pvc-sfs-example
        namespace: default
      spec:
        accessModes:
        - ReadWriteMany
        resources:
          requests:
            storage: 10Gi
        volumeName: pv-sfs-example
        volumeNamespace: default
      Tabla 4 Parámetros de clave

      Parámetro

      Descripción

      volume.beta.kubernetes.io/storage-class

      Modo de lectura/escritura compatible con el sistema de archivos. nfs-rw y nfs-ro son compatibles. El valor debe ser el mismo que el del PV existente.

      volume.beta.kubernetes.io/storage-provisioner

      El campo debe estar establecido en flexvolume-huawei.com/fuxinfs.

      storage

      Capacidad de almacenamiento, en la unidad de Gi. El valor debe ser el mismo que el tamaño de almacenamiento del PV existente.

      volumeName

      Nombre del PV.

    Figura 1 SFS - dirección de montaje del sistema de archivos

    La VPC a la que pertenece el sistema de archivos debe ser la misma que la VPC de la máquina virtual de ECS para la que se planifica la carga de trabajo.

  4. Cree un PV.

    kubectl create -f pv-sfs-example.yaml

  5. Cree un PVC.

    kubectl create -f pvc-sfs-example.yaml