Używanie woluminów trwałych z usługą AKS włączoną przez usługę Arc
Dotyczy: usługa AKS w usłudze Azure Stack HCI 22H2, AKS w systemie Windows Server
W tym artykule opisano sposób aprowizowania, używania i usuwania trwałych woluminów, które zapewniają długoterminowy magazyn do użycia z zasobnikami Kubernetes w usłudze AKS w usłudze Azure Arc (AKS Arc).
Wolumin trwały reprezentuje element magazynu, który został aprowizowany do użycia z zasobnikami Kubernetes. Wolumin trwały może być używany przez co najmniej jeden zasobnik i jest przeznaczony do przechowywania długoterminowego. Jest ona również niezależna od cykli życia zasobnika lub węzła.
Chociaż można aprowizować wolumin trwały dla węzłów systemu Windows i Linux, w tym artykule opisano sposób tworzenia trwałego woluminu do użycia w aplikacji systemu Windows. Aby uzyskać więcej informacji, zobacz Trwałe woluminy na platformie Kubernetes.
Zanim rozpoczniesz
Oto, czego potrzebujesz, aby rozpocząć pracę:
- Klaster Kubernetes z co najmniej jednym węzłem procesu roboczego systemu Windows.
- Plik kubeconfig umożliwiający dostęp do klastra Kubernetes.
Tworzenie trwałego oświadczenia woluminu
Trwałe oświadczenie woluminu (PVC) służy do automatycznego aprowizowania magazynu na podstawie klasy magazynu. Aby utworzyć oświadczenie woluminu, najpierw utwórz plik o nazwie pvc-akshci-csi.yaml
i skopiuj i wklej następującą definicję YAML. PCV wymaga dysku o rozmiarze 10 GB z dostępem ReadWriteOnce . Domyślna klasa magazynu jest określana jako klasa magazynu (vhdx).
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
name: pvc-akshci-csi
spec:
accessModes:
- ReadWriteOnce
resources:
requests:
storage: 10Gi
Aby utworzyć wolumin, uruchom następujące polecenia w sesji administracyjnej programu PowerShell na jednym z serwerów w klastrze Azure Stack HCI. Użyj metody, takiej jak Enter-PSSession lub Pulpit zdalny, aby nawiązać połączenie z serwerem.
kubectl create -f pvc-akshci-csi.yaml
Następujące dane wyjściowe pokazują, że oświadczenie trwałego woluminu zostało pomyślnie utworzone:
Wyjście:
persistentvolumeclaim/pvc-akshci-csi created
Używanie woluminu trwałego
Aby użyć woluminu trwałego, utwórz plik o nazwie winwebserver.yaml
i skopiuj i wklej następującą definicję YAML. Następnie utwórz zasobnik z dostępem do trwałego oświadczenia woluminu i vhdx.
W poniższej definicji mountPath
YAML jest ścieżką do zainstalowania woluminu wewnątrz kontenera. Po pomyślnym utworzeniu zasobnika zobaczysz podkatalog utworzony w katalogu C:\ i podkatalog akshciscsi utworzony wewnątrz obiektu 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
Aby utworzyć zasobnik z tą definicją YAML, uruchom polecenie:
kubectl create -f winwebserver.yaml
Aby upewnić się, że zasobnik jest uruchomiony, wykonaj następujące polecenie. Poczekaj kilka minut, aż zasobnik jest w stanie uruchomienia, ponieważ ściąganie obrazu zajmuje trochę czasu:
kubectl get pods -o wide
Po uruchomieniu zasobnika wyświetl stan zasobnika, uruchamiając następujące polecenie:
kubectl.exe describe pod %podName%
Aby sprawdzić, czy wolumin został zainstalowany w zasobniku, uruchom następujące polecenie:
kubectl exec -it %podname% cmd.exe
Usuwanie trwałego oświadczenia woluminu
Przed usunięciem trwałego oświadczenia woluminu należy usunąć wdrożenie aplikacji, uruchamiając następujące polecenie:
kubectl delete deployments win-webserver
Następnie możesz usunąć trwałe oświadczenie woluminu, uruchamiając polecenie:
kubectl delete PersistentVolumeClaim pvc-akshci-csi