Sdílet prostřednictvím


Použití trvalých svazků s AKS povolenou službou Arc

Platí pro: AKS v Azure Stack HCI 22H2, AKS na Windows Serveru

Tento článek popisuje, jak zřizovat, používat a odstraňovat trvalé svazky, které poskytují dlouhodobé úložiště pro použití s pody Kubernetes v AKS povolených službou Azure Arc (AKS Arc).

Trvalý svazek představuje část úložiště, která byla zřízena pro použití s pody Kubernetes. Trvalý svazek může používat jeden nebo více podů a je určený pro dlouhodobé úložiště. Je také nezávislý na životním cyklu podů nebo uzlů.

I když můžete zřídit trvalý svazek pro uzly Windows i Linux, tento článek popisuje, jak vytvořit trvalý svazek pro použití v aplikaci pro Windows. Další informace najdete v tématu Trvalé svazky v Kubernetes.

Než začnete

Tady je seznam toho, co potřebujete, abyste mohli začít:

  • Cluster Kubernetes s alespoň jedním pracovním uzlem Windows.
  • Soubor kubeconfig pro přístup ke clusteru Kubernetes.

Vytvoření deklarace trvalého svazku

Deklarace trvalého svazku (PVC) se používá k automatickému zřizování úložiště na základě třídy úložiště. Pokud chcete vytvořit deklaraci identity svazku, nejprve vytvořte soubor s názvem pvc-akshci-csi.yaml a zkopírujte a vložte následující definici YAML. PVC vyžaduje disk o velikosti 10 GB s přístupem ReadWriteOnce . Výchozí třída úložiště je určena jako třída úložiště (vhdx).

apiVersion: v1
kind: PersistentVolumeClaim
metadata:
 name: pvc-akshci-csi
spec:
 accessModes:
 - ReadWriteOnce
 resources:
  requests:
   storage: 10Gi

Pokud chcete vytvořit svazek, spusťte následující příkazy v relaci Prostředí PowerShell pro správu na jednom ze serverů v místním clusteru Azure. K připojení k serveru použijte metodu, jako je Enter-PSSession nebo Vzdálená plocha.

kubectl create -f pvc-akshci-csi.yaml 

Následující výstup ukazuje, že vaše trvalá deklarace identity svazku byla úspěšně vytvořena:

Výstup:

persistentvolumeclaim/pvc-akshci-csi created

Použití trvalého svazku

Pokud chcete použít trvalý svazek, vytvořte soubor s názvem winwebserver.yamla zkopírujte a vložte následující definici YAML. Pak vytvořte pod s přístupem k trvalé deklaraci identity svazku a vhdx.

V následující definici mountPath YAML je cesta k připojení svazku uvnitř kontejneru. Po úspěšném vytvoření podu uvidíte podadresář mnt vytvořený v C:\ a podadresář akshciscsi vytvořený uvnitř mnt:

apiVersion: apps/v1 
kind: Deployment 
metadata: 
  labels: 
    app: win-webserver 
  name: win-webserver 
spec: 
  replicas: 1 
  selector: 
    matchLabels: 
      app: win-webserver 
  template: 
    metadata: 
      labels: 
        app: win-webserver 
      name: win-webserver 
    spec: 
     containers: 
      - name: windowswebserver 
        image: mcr.microsoft.com/windows/servercore/iis:windowsservercore-ltsc2019 
        ports:  
          - containerPort: 80    
        volumeMounts: 
            - name: akshciscsi 
              mountPath: "/mnt/akshciscsi" 
     volumes: 
        - name: akshciscsi 
          persistentVolumeClaim: 
            claimName:  pvc-akshci-csi 
     nodeSelector: 
      kubernetes.io/os: windows 

Pokud chcete vytvořit pod s touto definicí YAML, spusťte:

kubectl create -f winwebserver.yaml 

Spuštěním následujícího příkazu se ujistěte, že je pod spuštěný. Počkejte několik minut, než se pod nachází ve spuštěném stavu, protože vyžádání image nějakou dobu trvá:

kubectl get pods -o wide 

Po spuštění podu zobrazte stav podu spuštěním následujícího příkazu:

kubectl.exe describe pod %podName% 

Pokud chcete ověřit, že je svazek připojený k podu, spusťte následující příkaz:

kubectl exec -it %podname% cmd.exe 

Odstranění trvalé deklarace identity svazku

Než odstraníte trvalou deklaraci identity svazku, musíte nasazení aplikace odstranit spuštěním následujícího příkazu:

kubectl delete deployments win-webserver

Potom můžete odstranit trvalou deklaraci identity svazku spuštěním příkazu:

kubectl delete PersistentVolumeClaim pvc-akshci-csi

Další kroky