Klonowanie woluminów trwałych w usłudze Azure Container Storage (wersja zapoznawcza)

Woluminy trwałe można sklonować w usłudze Azure Container Storage. Sklonowany wolumin jest duplikatem istniejącego woluminu trwałego. Woluminy o takim samym rozmiarze, które znajdują się w tej samej puli magazynów, można klonować tylko te same woluminy.

Wymagania wstępne

  • Ten artykuł wymaga wersji 2.0.64 lub nowszej interfejsu wiersza polecenia platformy Azure. Zobacz Jak zainstalować interfejs wiersza polecenia platformy Azure. Jeśli używasz usługi Azure Cloud Shell, najnowsza wersja jest już zainstalowana. Jeśli planujesz uruchamiać polecenia lokalnie zamiast w usłudze Azure Cloud Shell, pamiętaj, aby uruchamiać je z uprawnieniami administracyjnymi.
  • Potrzebujesz klastra usługi Azure Kubernetes Service (AKS) z pulą węzłów co najmniej trzech maszyn wirtualnych dla węzłów klastra, z których każdy ma co najmniej cztery procesory wirtualne (vCPU).
  • W tym artykule założono, że usługa Azure Container Storage została już zainstalowana w klastrze usługi AKS i że utworzono pulę magazynów i trwałe oświadczenie woluminu (PVC) przy użyciu dysków platformy Azure lub dysku efemerycznego (magazynu lokalnego). Usługa Azure Elastic SAN nie obsługuje zmiany rozmiaru woluminów.

Klonowanie woluminu

Postępuj zgodnie z poniższymi instrukcjami, aby sklonować wolumin trwały.

  1. Użyj ulubionego edytora tekstów, aby utworzyć plik manifestu YAML, taki jak code acstor-clonevolume.yaml.

  2. Wklej następujący kod i zapisz plik. Wbudowana klasa magazynu obsługuje klonowanie woluminów, dlatego w przypadku źródła danych należy odwołać się do elementu PVC utworzonego wcześniej przez klasę magazynu kontenera platformy Azure. Jeśli na przykład utworzono pcv dla usługi Azure Disks, może to być nazywane .azurediskpvc W przypadku przechowywania określ rozmiar oryginalnego PVC.

    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. Zastosuj plik manifestu YAML, aby sklonować plik PVC.

    kubectl apply -f acstor-clonevolume.yaml 
    

    Powinny zostać wyświetlone dane wyjściowe podobne do poniższych:

    persistentvolumeclaim/pvc-acstor-cloning created
    
  4. Użyj ulubionego edytora tekstów, aby utworzyć plik manifestu YAML, taki jak code acstor-pod.yaml.

  5. Wklej następujący kod i zapisz plik. W przypadku claimName pamiętaj, aby odwołać się do sklonowanego pvc.

    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. Zastosuj plik manifestu YAML, aby wdrożyć nowy zasobnik.

    kubectl apply -f acstor-pod.yaml
    

    Powinny zostać wyświetlone dane wyjściowe podobne do następujących:

    pod/fiopod2 created
    
  7. Sprawdź, czy zasobnik jest uruchomiony i czy oświadczenie trwałego woluminu zostało pomyślnie powiązane z zasobnikem:

    kubectl describe pod fiopod2
    kubectl describe pvc azurediskpvc
    

Zobacz też