Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
Van toepassing op: 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 op Windows Server.
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 Kubernetes-cluster met ten minste één Windows-werkknooppunt.
- Een kubeconfig-bestand voor toegang tot het Kubernetes-cluster.
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 Windows Server-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 persistente volumeclaim succesvol 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 persistent volumeclaim en vhdx.
In de volgende YAML-definitie is mountPath het pad om een volume in een container te monteren. 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 draait. Wacht een paar minuten totdat de pod actief is, aangezien het ophalen van de afbeelding tijd kost.
kubectl get pods -o wide
Zodra uw pod actief is, kunt u de pod-status bekijken door de volgende opdracht uit te voeren:
kubectl.exe describe pod %podName%
Voer de volgende commando uit om te controleren of het volume in de pod is gekoppeld.
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