Använda beständiga volymer med AKS aktiverat av Arc
Gäller för: AKS på Azure Stack HCI 22H2, AKS på Windows Server
Den här artikeln beskriver hur du etablerar, använder och tar bort beständiga volymer som tillhandahåller långsiktig lagring för användning med Kubernetes-poddar i AKS som aktiveras av Azure Arc (AKS Arc).
En beständiga volym representerar en lagringsdel som har etablerats för användning med Kubernetes-poddar. En beständiga volym kan användas av en eller flera poddar och är avsedd för långsiktig lagring. Den är också oberoende av podd- eller nodlivscykler.
Du kan etablera en beständiga volym för både Windows- och Linux-noder, men den här artikeln beskriver hur du skapar en beständig volym för användning i ditt Windows-program. Mer information finns i Beständiga volymer i Kubernetes.
Innan du börjar
Här är vad du behöver för att komma igång:
- Ett Kubernetes-kluster med minst en Windows-arbetsnod.
- En kubeconfig-fil för åtkomst till Kubernetes-klustret.
Skapa ett beständigt volymanspråk
Ett beständiga volymanspråk (PVC) används för att automatiskt etablera lagring baserat på en lagringsklass. Skapa ett volymanspråk genom att först skapa en fil med namnet pvc-akshci-csi.yaml
och kopiera och klistra in följande YAML-definition. PVC kräver en disk som är 10 GB stor med ReadWriteOnce-åtkomst . Standardlagringsklassen anges som lagringsklass (vhdx).
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
name: pvc-akshci-csi
spec:
accessModes:
- ReadWriteOnce
resources:
requests:
storage: 10Gi
Om du vill skapa volymen kör du följande kommandon i en administrativ PowerShell-session på en av servrarna i Azure Stack HCI-klustret. Använd en metod som Enter-PSSession eller Fjärrskrivbord för att ansluta till servern.
kubectl create -f pvc-akshci-csi.yaml
Följande utdata visar att ditt beständiga volymanspråk har skapats:
Utdata:
persistentvolumeclaim/pvc-akshci-csi created
Använda beständiga volymer
Om du vill använda en beständig volym skapar du en fil med namnet winwebserver.yaml
och kopierar och klistrar in följande YAML-definition. Skapa sedan en podd med åtkomst till det beständiga volymanspråket och vhdx.
I följande YAML-definition mountPath
är sökvägen till att montera en volym i en container. När podden har skapats visas underkatalogen mnt som skapats i C:\ och underkatalogen akshciscsi som skapats i 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
Om du vill skapa en podd med den här YAML-definitionen kör du:
kubectl create -f winwebserver.yaml
Kör följande kommando för att se till att podden körs. Vänta några minuter tills podden är i ett körningstillstånd, eftersom det tar tid att hämta avbildningen:
kubectl get pods -o wide
När podden körs visar du poddstatusen genom att köra följande kommando:
kubectl.exe describe pod %podName%
Kontrollera att volymen har monterats i podden genom att köra följande kommando:
kubectl exec -it %podname% cmd.exe
Ta bort ett beständigt volymanspråk
Innan du tar bort ett beständiga volymanspråk måste du ta bort appdistributionen genom att köra följande kommando:
kubectl delete deployments win-webserver
Du kan sedan ta bort ett beständigt volymanspråk genom att köra:
kubectl delete PersistentVolumeClaim pvc-akshci-csi
Nästa steg
Feedback
https://aka.ms/ContentUserFeedback.
Kommer snart: Under hela 2024 kommer vi att fasa ut GitHub-problem som feedbackmekanism för innehåll och ersätta det med ett nytt feedbacksystem. Mer information finns i:Skicka och visa feedback för