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 bucket de OBS existente

Escenario

CCE le permite usar un bucket de OBS existente para crear un PersistentVolume (PV). Puede crear un PersistentVolumeClaim (PVC) y vincularlo al PV.

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 OBS, cree un bucket de OBS y registre el nombre del bucket y la clase de almacenamiento.
  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-obs-example.yaml y pvc-obs-example.yaml.

    touch pv-obs-example.yaml pvc-obs-example.yaml

    Versión de clúster de Kubernetes

    Descripción

    Ejemplo de YAML

    1.11 ≤ 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 hasta v1.13

    • Ejemplo de archivo YAML para el PV:
      apiVersion: v1 
      kind: PersistentVolume 
      metadata: 
        name: pv-obs-example 
        annotations:
          pv.kubernetes.io/provisioned-by: flexvolume-huawei.com/fuxiobs
      spec: 
        accessModes: 
        - ReadWriteMany 
        capacity: 
          storage: 1Gi 
        claimRef:
          apiVersion: v1
          kind: PersistentVolumeClaim
          name: pvc-obs-example
          namespace: default
        flexVolume: 
          driver: huawei.com/fuxiobs 
          fsType: obs 
          options: 
            fsType: obs 
            region: ap-southeast-1
            storage_class: STANDARD 
            volumeID: test-obs 
        persistentVolumeReclaimPolicy: Delete 
        storageClassName: obs-standard
      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/fuxiobs para el volumen de OBS.

      storage_class

      Clase de almacenamiento, incluidos STANDARD (bucket estándar) y STANDARD_IA (bucket de acceso poco frecuente).

      region

      La región donde se encuentra el clúster.

      volumeID

      Nombre del bucket de OBS.

      Para obtener el nombre, inicie sesión en la consola de CCE, elija Resource Management > Storage, haga clic en el nombre de PVC en la página de fichas OBS y copie el nombre de PV en la página de fichas PV Details.

      storage

      Capacidad de almacenamiento, en Gi. El valor se fija en 1Gi.

      storageClassName

      Clase de almacenamiento compatible con OBS, incluidos obs-standard (bucket estándar) y obs-standard-ia (bucket de acceso poco frecuente).

      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

      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: obs-standard
          volume.beta.kubernetes.io/storage-provisioner: flexvolume-huawei.com/fuxiobs
        name: pvc-obs-example
        namespace: default
      spec:
        accessModes:
        - ReadWriteMany
        resources:
          requests:
            storage: 1Gi
        volumeName: pv-obs-example
      Tabla 2 Parámetros de clave

      Parámetro

      Descripción

      volume.beta.kubernetes.io/storage-class

      Clase de almacenamiento compatible con OBS, incluidos obs-standard y obs-standard-ia.

      volume.beta.kubernetes.io/storage-provisioner

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

      volumeName

      Nombre del PV.

      storage

      Capacidad de almacenamiento, en Gi. El valor se fija en 1Gi.

    Clústeres de v1.9

    • Ejemplo de archivo YAML para el PV:
      apiVersion: v1 
      kind: PersistentVolume 
      metadata: 
        name: pv-obs-example 
        namespace: default  
      spec: 
        accessModes: 
        - ReadWriteMany 
        capacity: 
          storage: 1Gi 
        flexVolume: 
          driver: huawei.com/fuxiobs 
          fsType: obs 
          options: 
            fsType: obs 
            kubernetes.io/namespace: default 
            region: ap-southeast-1
            storage_class: STANDARD 
            volumeID: test-obs 
        persistentVolumeReclaimPolicy: Delete 
        storageClassName: obs-standard
      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/fuxiobs para el volumen de OBS.

      storage_class

      Clase de almacenamiento, incluidos STANDARD (bucket estándar) y STANDARD_IA (bucket de acceso poco frecuente).

      region

      La región donde se encuentra el clúster.

      volumeID

      Nombre del bucket de OBS.

      Para obtener el nombre, inicie sesión en la consola de CCE, elija Resource Management > Storage, haga clic en el nombre de PVC en la página de fichas OBS y copie el nombre de PV en la página de fichas PV Details.

      storage

      Capacidad de almacenamiento, en Gi. El valor se fija en 1Gi.

      storageClassName

      Clase de almacenamiento compatible con OBS, incluidos obs-standard (bucket estándar) y obs-standard-ia (bucket de acceso poco frecuente).

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

      Parámetro

      Descripción

      volume.beta.kubernetes.io/storage-class

      Clase de almacenamiento compatible con OBS, incluidos obs-standard y obs-standard-ia.

      volume.beta.kubernetes.io/storage-provisioner

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

      volumeName

      Nombre del PV.

      storage

      Capacidad de almacenamiento, en Gi. El valor se fija en 1Gi.

  4. Cree un PV.

    kubectl create -f pv-obs-example.yaml

  5. Cree un PVC.

    kubectl create -f pvc-obs-example.yaml