Este conteúdo foi traduzido por máquina para sua conveniência e a Huawei Cloud não pode garantir que o conteúdo foi traduzido com precisão. Para exibir o conteúdo original, use o link no canto superior direito para mudar para a página em inglês.
Atualizado em 2024-11-28 GMT+08:00

(kubectl) Criação de um PV a partir de um sistema de arquivos do SFS existente

Observações e restrições

O exemplo de configuração a seguir se aplica a clusters do Kubernetes 1.13 ou anterior.

Procedimento

  1. Faça logon no console do SFS, crie um sistema de arquivos e registre o ID do sistema de arquivos, o caminho compartilhado e a capacidade.
  2. Use o kubectl para se conectar ao cluster. Para mais detalhes, consulte Conexão a um cluster usando o kubectl.
  3. Crie dois arquivos YAML para criar o PV e a PVC. Suponha que os nomes dos arquivos sejam pv-sfs-example.yaml e pvc-sfs-example.yaml.

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

    Versão do cluster do Kubernetes

    Descrição

    Exemplo de YAML

    1.11 ≤ K8s versão < 1.13

    Clusters da v1.11 a v1.13

    Exemplo de YAML

    K8s versão = 1.9

    Clusters da v1.9

    Exemplo de YAML

    Clusters da v1.11 a v1.13

    • Exemplo de arquivo YAML para o 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
      Tabela 1 Parâmetros principais

      Parâmetro

      Descrição

      driver

      Driver de armazenamento usado para montar o volume. Defina o driver para huawei.com/fuxinfs para o sistema de arquivos.

      deviceMountPath

      Caminho compartilhado do sistema de arquivos.

      No console de gerenciamento, escolha Service List > Storage > Scalable File Service. Você pode obter o caminho compartilhado do sistema de arquivos na coluna Mount Address, conforme mostrado na Figura 1.

      volumeID

      ID do sistema de arquivos.

      Para obter o ID, entre no console do CCE, escolha Resource Management > Storage, clique no nome da PVC na página de guia SFS e copie o ID da PVC na página de detalhes da PVC.

      storage

      Tamanho do sistema de arquivos.

      storageClassName

      Modo de leitura/gravação suportado pelo sistema de arquivos. Atualmente, nfs-rw e onfs-ro são suportados.

      spec.claimRef.apiVersion

      O valor é fixado em v1.

      spec.claimRef.kind

      O valor é fixado em PersistentVolumeClaim.

      spec.claimRef.name

      O valor é o mesmo que o nome da PVC criado na próxima etapa.

      spec.claimRef.namespace

      Namespace da PVC. O valor é o mesmo que o namespace da PVC criado na próxima etapa.

    • Exemplo de arquivo YAML para a 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
      Tabela 2 Parâmetros principais

      Parâmetro

      Descrição

      volume.beta.kubernetes.io/storage-class

      Modo de leitura/gravação suportado pelo sistema de arquivos. nfs-rw e nfs-ro são suportados. O valor deve ser o mesmo do PV existente.

      volume.beta.kubernetes.io/storage-provisioner

      Deve ser definido como flexvolume-huawei.com/fuxinfs.

      storage

      Capacidade de armazenamento, na unidade de Gi. O valor deve ser o mesmo que o tamanho de armazenamento do PV existente.

      volumeName

      Nome do PV.

    Clusters da v1.9

    • Exemplo de arquivo YAML para o 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
      Tabela 3 Parâmetros principais

      Parâmetro

      Descrição

      driver

      Driver de armazenamento usado para montar o volume. Defina o driver para huawei.com/fuxinfs para o sistema de arquivos.

      deviceMountPath

      Caminho compartilhado do sistema de arquivos.

      No console de gerenciamento, escolha Service List > Storage > Scalable File Service. Você pode obter o caminho compartilhado do sistema de arquivos na coluna Mount Address, conforme mostrado na Figura 1.

      volumeID

      ID do sistema de arquivos.

      Para obter o ID, entre no console do CCE, escolha Resource Management > Storage, clique no nome da PVC na página de guia SFS e copie o ID da PVC na página de detalhes da PVC.

      storage

      Tamanho do sistema de arquivos.

      storageClassName

      Modo de leitura/gravação suportado pelo sistema de arquivos. Atualmente, nfs-rw e onfs-ro são suportados.

    • Exemplo de arquivo YAML para a 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
      Tabela 4 Parâmetros principais

      Parâmetro

      Descrição

      volume.beta.kubernetes.io/storage-class

      Modo de leitura/gravação suportado pelo sistema de arquivos. nfs-rw e nfs-ro são suportados. O valor deve ser o mesmo do PV existente.

      volume.beta.kubernetes.io/storage-provisioner

      O campo deve ser definido como flexvolume-huawei.com/fuxinfs.

      storage

      Capacidade de armazenamento, na unidade de Gi. O valor deve ser o mesmo que o tamanho de armazenamento do PV existente.

      volumeName

      Nome do PV.

    Figura 1 SFS - endereço de montagem do sistema de arquivos

    A VPC à qual o sistema de arquivos pertence deve ser a mesma VPC da VM do ECS para a qual a carga de trabalho está planejada.

  4. Crie um PV.

    kubectl create -f pv-sfs-example.yaml

  5. Crie uma PVC.

    kubectl create -f pvc-sfs-example.yaml