È possibile creare staticamente un volume di blocco in un cluster Tanzu Kubernetes utilizzando una richiesta volume persistente (PVC) inutilizzata dal Cluster supervisore.
La richiesta PVC deve soddisfare le seguenti condizioni:
- Si trova nello stesso spazio dei nomi in cui risiede il cluster Tanzu Kubernetes.
- Non è collegata a un Pod vSphere nel Cluster supervisore o a un pod in un cluster Tanzu Kubernetes.
Utilizzando il provisioning statico, è inoltre possibile riutilizzare in un nuovo cluster Tanzu Kubernetes una PVC che non è più necessaria per un altro cluster Tanzu Kubernetes. A tale scopo, modificare il Reclaim policy
del volume persistente (PV) nel cluster Tanzu Kubernetes originale in Retain
, quindi eliminare la PVC corrispondente.
Eseguire questi passaggi per creare staticamente una PVC in un nuovo cluster Tanzu Kubernetes utilizzando le informazioni del volume sottostante residuo.
Procedura
- Prendere nota del nome della PVC originale nel Cluster supervisore.
Se si riutilizza la PVC da un cluster
Tanzu Kubernetes precedente, è possibile recuperare il nome della PVC dal
volumeHandle dell'oggetto PV precedente nel cluster
Tanzu Kubernetes.
- Creare un PV.
Nel file YAML specificare i valori dei seguenti elementi:
- Per storageClassName, è possibile immettere il nome della classe di storage utilizzato dalla PVC nel Cluster supervisore.
- Per volumeHandle, immettere il nome della PVC ottenuta nel Passaggio 1.
Se si sta riutilizzando un volume da un altro cluster
Tanzu Kubernetes, eliminare gli oggetti PVC e PV dal cluster
Tanzu Kubernetes precedente prima di creare un pv nel nuovo cluster
Tanzu Kubernetes.
Utilizzare il seguente manifesto YAML come esempio.
apiVersion: v1
kind: PersistentVolume
metadata:
name: static-tkg-block-pv
annotations:
pv.kubernetes.io/provisioned-by: csi.vsphere.vmware.com
spec:
storageClassName: gc-storage-profile
capacity:
storage: 2Gi
accessModes:
- ReadWriteOnce
persistentVolumeReclaimPolicy: Delete
claimRef:
namespace: default
name: static-tkg-block-pvc
csi:
driver: "csi.vsphere.vmware.com"
volumeAttributes:
type: "vSphere CNS Block Volume"
volumeHandle: "supervisor-block-pvc-name" # Enter the PVC name from the Supervisor cluster.
- Creare una PVC corrispondente all'oggetto PV creato nel Passaggio 2.
Impostare il
storageClassName sullo stesso valore del PV.
kind: PersistentVolumeClaim
apiVersion: v1
metadata:
name: static-tkg-block-pvc
spec:
accessModes:
- ReadWriteOnce
resources:
requests:
storage: 2Gi
storageClassName: gc-storage-profile
volumeName: static-tkg-block-pv
- Verificare che la PVC sia associata al PV creato.
$ kubectl get pv,pvc
NAME CAPACITY ACCESS MODES RECLAIM POLICY STATUS CLAIM STORAGECLASS REASON AGE
persistentvolume/static-tkg-block-pv 2Gi RWO Delete Bound default/static-tkg-block-pvc gc-storage-profile 10s
NAME STATUS VOLUME CAPACITY ACCESS MODES STORAGECLASS AGE
persistentvolumeclaim/static-tkg-block-pvc Bound static-tkg-block-pv 2Gi RWO gc-storage-profile 10s