Ler em inglês

Compartilhar via


Clonar volumes persistentes no Armazenamento de Contêineres do Azure

É possível clonar volumes persistentes no Armazenamento de Contêineres do Azure. Um volume clonado é uma duplicata de um volume persistente existente. Só é possível clonar volumes do mesmo tamanho que estão no mesmo pool de armazenamento.

Pré-requisitos

  • Este artigo requer a versão mais recente (2.35.0 ou posterior) da CLI do Azure. Consulte Como instalar a CLI do Azure. Se você está usando o Azure Cloud Shell, a última versão já está instalada. Se você planeja executar os comandos localmente em vez de no Azure Cloud Shell, certifique-se de executá-los com privilégios administrativos.
  • Você precisará de um cluster do AKS (Serviço de Kubernetes do Azure) com um pool de nós de pelo menos três VMs (máquinas virtuais) para os nós de cluster, cada uma com um mínimo de quatro vCPUs (CPUs virtuais).
  • Este artigo pressupõe que você já instalou o Armazenamento de Contêineres do Azure no cluster do seu AKS e que criou um pool de armazenamento e uma declaração de volume persistente (PVC) usando os Discos do Azure ou disco efêmero (armazenamento local). O Azure Elastic SAN não dá suporte ao redimensionamento de volumes.

Clonar um volume

Siga as instruções abaixo para clonar um volume persistente.

  1. Use seu editor de texto favorito para criar um arquivo de manifesto YAML, como code acstor-clonevolume.yaml.

  2. Cole o seguinte código e salve o arquivo. Uma classe de armazenamento interna dá suporte à clonagem de volume, portanto. Para dataSource, lembre-se de fazer referência a um PVC criado anteriormente pela classe de Armazenamento de Contêineres do Azure. Por exemplo, se você criou o PVC para Discos do Azure, ele pode ser chamado de azurediskpvc. Para armazenamento, especifique o tamanho do PVC original.

    yml
    apiVersion: v1
    kind: PersistentVolumeClaim
    metadata:
      name: pvc-acstor-cloning
    spec:
      accessModes:
        - ReadWriteOnce
      storageClassName: acstor-azuredisk
      resources:
        requests:
          storage: 100Gi
      dataSource:
        kind: PersistentVolumeClaim
        name: azurediskpvc
    
  3. Aplique o arquivo de manifesto YAML para clonar o PVC.

    CLI do Azure
    kubectl apply -f acstor-clonevolume.yaml 
    

    Você deve ver uma saída semelhante a:

    Saída
    persistentvolumeclaim/pvc-acstor-cloning created
    
  4. Use seu editor de texto favorito para criar um arquivo de manifesto YAML, como code acstor-pod.yaml.

  5. Cole o seguinte código e salve o arquivo. Para claimName, lembre-se de fazer referência ao PVC clonado.

    yml
    kind: Pod
    apiVersion: v1
    metadata:
      name: fiopod2
    spec:
      nodeSelector:
        acstor.azure.com/io-engine: acstor
      volumes:
        - name: azurediskpv
          persistentVolumeClaim:
            claimName: pvc-acstor-cloning
      containers:
        - name: fio
          image: nixery.dev/shell/fio
          args:
            - sleep
            - "1000000"
          volumeMounts:
            - mountPath: "/volume"
              name: azurediskpv
    
  6. Aplique o arquivo de manifesto YAML para implantar o novo pod.

    CLI do Azure
    kubectl apply -f acstor-pod.yaml
    

    Será exibida uma saída semelhante à seguinte:

    Saída
    pod/fiopod2 created
    
  7. Verifique se o pod está em execução e se a declaração de volume persistente foi associada com êxito ao pod:

    CLI do Azure
    kubectl describe pod fiopod2
    kubectl describe pvc azurediskpvc
    

Confira também