Delen via


Permanente volumes gebruiken met AKS ingeschakeld door Arc

Van toepassing op: AKS op Azure Stack HCI 22H2, AKS op Windows Server

In dit artikel wordt beschreven hoe u permanente volumes inricht, gebruikt en verwijdert die langetermijnopslag bieden voor gebruik met Kubernetes-pods in AKS die zijn ingeschakeld door Azure Arc (AKS Arc).

Een permanent volume vertegenwoordigt een stukje opslag dat is ingericht voor gebruik met Kubernetes-pods. Een permanent volume kan worden gebruikt door een of meer pods en is bedoeld voor langetermijnopslag. Het is ook onafhankelijk van de levenscyclus van pods of knooppunten.

Hoewel u een permanent volume voor zowel Windows- als Linux-knooppunten kunt inrichten, wordt in dit artikel beschreven hoe u een permanent volume maakt voor gebruik in uw Windows-toepassing. Zie Permanente volumes in Kubernetes voor meer informatie.

Voordat u begint

Dit is wat u nodig hebt om aan de slag te gaan:

Een permanente volumeclaim maken

Een permanente volumeclaim (PVC) wordt gebruikt om automatisch opslag in te richten op basis van een opslagklasse. Als u een volumeclaim wilt maken, maakt u eerst een bestand met de naam pvc-akshci-csi.yaml en kopieert en plakt u de volgende YAML-definitie. De PVC vereist een schijf die 10 GB groot is met ReadWriteOnce-toegang . De standaardopslagklasse wordt opgegeven als de opslagklasse (vhdx).

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

Als u het volume wilt maken, voert u de volgende opdrachten uit in een PowerShell-sessie met beheerdersrechten op een van de servers in het Azure Stack HCI-cluster. Gebruik een methode zoals Enter-PSSession of Extern bureaublad om verbinding te maken met de server.

kubectl create -f pvc-akshci-csi.yaml 

In de volgende uitvoer ziet u dat uw permanente volumeclaim is gemaakt:

Uitvoer:

persistentvolumeclaim/pvc-akshci-csi created

Permanent volume gebruiken

Als u een permanent volume wilt gebruiken, maakt u een bestand met de naam winwebserver.yamlen kopieert en plakt u de volgende YAML-definitie. Maak vervolgens een pod met toegang tot de permanente volumeclaim en vhdx.

In de volgende YAML-definitie mountPath is het pad om een volume in een container te koppelen. Nadat een pod is gemaakt, ziet u de submap mnt die is gemaakt in C:\ en de submap akshciscsi die in mnt is gemaakt:

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 

Als u een pod wilt maken met deze YAML-definitie, voert u het volgende uit:

kubectl create -f winwebserver.yaml 

Voer de volgende opdracht uit om ervoor te zorgen dat de pod wordt uitgevoerd. Wacht enkele minuten totdat de pod actief is, omdat het ophalen van de installatiekopie tijd kost:

kubectl get pods -o wide 

Zodra uw pod wordt uitgevoerd, bekijkt u de podstatus door de volgende opdracht uit te voeren:

kubectl.exe describe pod %podName% 

Voer de volgende opdracht uit om te controleren of het volume is gekoppeld in de pod:

kubectl exec -it %podname% cmd.exe 

Een permanente volumeclaim verwijderen

Voordat u een permanente volumeclaim verwijdert, moet u de app-implementatie verwijderen door de volgende opdracht uit te voeren:

kubectl delete deployments win-webserver

U kunt vervolgens een permanente volumeclaim verwijderen door het volgende uit te voeren:

kubectl delete PersistentVolumeClaim pvc-akshci-csi

Volgende stappen