Usare volumi persistenti con servizio Azure Kubernetes abilitato da Azure Arc
Si applica a: Servizio Azure Kubernetes in Azure Stack HCI 22H2, servizio Azure Kubernetes in Windows Server
Questo articolo descrive come effettuare il provisioning, l'uso e l'eliminazione di volumi persistenti che forniscono l'archiviazione a lungo termine per l'uso con i pod Kubernetes abilitati da Azure Arc (AKS Arc).
Un volume persistente rappresenta una parte di archiviazione di cui è stato effettuato il provisioning per l'uso con i pod Kubernetes. Un volume persistente può essere usato da uno o più pod ed è destinato all'archiviazione a lungo termine. È anche indipendente dai cicli di vita dei pod o dei nodi.
Anche se è possibile effettuare il provisioning di un volume persistente per i nodi Windows e Linux, questo articolo descrive come creare un volume persistente per l'uso nell'applicazione Windows. Per altre informazioni, vedere Volumi persistenti in Kubernetes.
Prima di iniziare
Ecco cosa è necessario iniziare:
- Un cluster Kubernetes con almeno un nodo di lavoro windows.
- File kubeconfig per accedere al cluster Kubernetes.
Creare un'attestazione di volume permanente
Un'attestazione di volume permanente viene usata per il provisioning automatico dell'archiviazione in una classe di archiviazione. Per creare un'attestazione di volume, creare prima un file denominato pvc-akshci-csi.yaml
e copiare e incollare la definizione YAML seguente. Il PVC richiede un disco di dimensioni pari a 10 GB con accesso ReadWriteOnce . La classe di archiviazione predefinita viene specificata come classe di archiviazione (vhdx).
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
name: pvc-akshci-csi
spec:
accessModes:
- ReadWriteOnce
resources:
requests:
storage: 10Gi
Per creare il volume, eseguire i comandi seguenti in una sessione di PowerShell amministrativa in uno dei server nel cluster Azure Stack HCI. Usare un metodo, ad esempio Invio-PSSession o Desktop remoto, per connettersi al server.
kubectl create -f pvc-akshci-csi.yaml
L'output seguente mostrerà che l'attestazione del volume persistente è stata creata correttamente:
Output:
persistentvolumeclaim/pvc-akshci-csi created
Usare il volume persistente
Per usare un volume persistente, creare un file denominato winwebserver.yaml
e copiare e incollare la definizione YAML seguente. Creare quindi un pod con accesso all'attestazione del volume persistente e vhdx.
Nella definizione YAML seguente è mountPath
il percorso per montare un volume all'interno di un contenitore. Dopo aver completato la creazione di pod, verrà visualizzata la sottodirectory mnt creata in C:\ e la sottodirectory akshciscsi creata all'interno di 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
Per creare un pod con la definizione YAML precedente, eseguire:
kubectl create -f winwebserver.yaml
Per assicurarsi che il pod sia in esecuzione, eseguire il comando seguente. Attendere alcuni minuti fino a quando il pod non è in esecuzione, poiché il pull dell'immagine richiede tempo.
kubectl get pods -o wide
Dopo aver eseguito il pod, visualizzare lo stato del pod eseguendo il comando seguente:
kubectl.exe describe pod %podName%
Per verificare che il volume sia stato montato nel pod, eseguire il comando seguente:
kubectl exec -it %podname% cmd.exe
Eliminare un'attestazione del volume persistente
Prima di eliminare un'attestazione del volume persistente, è necessario eliminare la distribuzione dell'app eseguendo:
kubectl delete deployments win-webserver
È quindi possibile eliminare un'attestazione di volume persistente eseguendo:
kubectl delete PersistentVolumeClaim pvc-akshci-csi
Passaggi successivi
Commenti e suggerimenti
https://aka.ms/ContentUserFeedback.
Presto disponibile: Nel corso del 2024 verranno gradualmente disattivati i problemi di GitHub come meccanismo di feedback per il contenuto e ciò verrà sostituito con un nuovo sistema di feedback. Per altre informazioni, vedereInvia e visualizza il feedback per