Provisioning di un volume
Creare un PersistentVolume (PV) e un PersistentVolumeClaim (PVC) che utilizza Kubernetes StorageClass configurato per richiedere l'accesso al PV. È quindi possibile montare il PV su un pod.
Panoramica
R "PersistentVolume" (PV) è una risorsa di storage fisico fornita dall'amministratore del cluster su un cluster Kubernetes. Il "PersistentVolumeClaim" (PVC) è una richiesta di accesso a PersistentVolume sul cluster.
Il PVC può essere configurato per richiedere la memorizzazione di una determinata dimensione o modalità di accesso. Utilizzando StorageClass associato, l'amministratore del cluster può controllare più delle dimensioni di PersistentVolume e della modalità di accesso, ad esempio le prestazioni o il livello di servizio.
Dopo aver creato PV e PVC, è possibile montare il volume in un pod.
Manifesti campione
Manifesto di esempio di PersistentVolume
Questo manifesto di esempio mostra un PV di base di 10Gi associato a StorageClass basic-csi.
apiVersion: v1
kind: PersistentVolume
metadata:
name: pv-storage
labels:
type: local
spec:
storageClassName: basic-csi
capacity:
storage: 10Gi
accessModes:
- ReadWriteOnce
hostPath:
path: "/my/host/path"
Manifesto di esempio PersistentVolumeClaim
Questo esempio mostra un PVC di base con accesso RWO associato a un nome StorageClass basic-csi.
kind: PersistentVolumeClaim
apiVersion: v1
metadata:
name: pvc-storage
spec:
accessModes:
- ReadWriteOnce
resources:
requests:
storage: 1Gi
storageClassName: basic-csi
Campione manifesto pod
kind: Pod
apiVersion: v1
metadata:
name: pv-pod
spec:
volumes:
- name: pv-storage
persistentVolumeClaim:
claimName: basic
containers:
- name: pv-container
image: nginx
ports:
- containerPort: 80
name: "http-server"
volumeMounts:
- mountPath: "/my/mount/path"
name: pv-storage
Creare PV e PVC
-
Creare il PV.
kubectl create -f pv.yaml
-
Verificare lo stato FV.
kubectl get pv NAME CAPACITY ACCESS MODES RECLAIM POLICY STATUS CLAIM STORAGECLASS REASON AGE pv-storage 4Gi RWO Retain Available 7s
-
Creare il PVC.
kubectl create -f pvc.yaml
-
Verificare lo stato del PVC.
kubectl get pvc NAME STATUS VOLUME CAPACITY ACCESS MODES STORAGECLASS AGE pvc-storage Bound pv-name 2Gi RWO 5m
-
Montare il volume in un pod.
kubectl create -f pv-pod.yaml
È possibile monitorare l'avanzamento utilizzando kubectl get pod --watch. -
Verificare che il volume sia montato su
/my/mount/path.kubectl exec -it task-pv-pod -- df -h /my/mount/path
-
A questo punto è possibile eliminare il pod. L'applicazione Pod non esisterà più, ma il volume rimarrà.
kubectl delete pod task-pv-pod
Fare riferimento a. "Kubernetes e Trident Objects" per informazioni sulle modalità di interazione delle classi di storage con PersistentVolumeClaim E parametri per controllare come Astra Trident esegue il provisioning dei volumi.