Používání trvalých svazků úložiště s AKS v systému Windows Server

Platí pro: AKS na Windows Serveru

Tento článek popisuje, jak zřídit, používat a odstraňovat trvalé svazky, které poskytují dlouhodobé úložiště pro použití s pody Kubernetes v AKS v Windows Server.

Trvalý svazek představuje určitou část úložiště, která byla přidělena pro použití v podech Kubernetes. Perzistentní svazek může být používán jedním nebo více pody a je určen pro dlouhodobé ukládání dat. 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 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:

Vytvořte požadavek na trvalý svazek

Požadavek na perzistentní svazek (PVC) se používá k automatickému zřizování úložiště na základě třídy úložiště. Chcete-li vytvořit deklaraci 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 zadána jako třída úložiště (vhdx).

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

Chcete-li vytvořit svazek, spusťte následující příkazy v administrátorské relaci PowerShellu na jednom ze serverů v clusteru Windows Server. 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 deklarace vašeho trvalého 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, který má přístup k deklaraci trvalého svazku a k souboru vhdx.

V následující definici YAML je mountPath cesta pro připojení svazku v 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

Chcete-li se ujistit, že je pod spuštěný, spusťte následující příkaz. 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

Odstraňte claim na trvalý svazek

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