Puede crear de forma estática un volumen de bloques en un clúster de Servicio TKG mediante una notificación de volumen persistente (persistent volume claim, PVC) sin utilizar desde Supervisor.
La PVC debe cumplir las siguientes condiciones:
- La PVC debe estar presente en el mismo espacio de nombres en el que reside el clúster de TKG.
- La PVC aún no debe estar asociada a un pod en ningún clúster de TKG ni a un pod de vSphere en Supervisor.
Mediante el aprovisionamiento estático, también puede reutilizar en un clúster de TKG nuevo una PVC que otro clúster de TKG ya no necesite. Para ello, cambie la Reclaim policy
del volumen persistente (persistent volume, PV) en el clúster de TKG original a Retain
y, a continuación, elimine la PVC correspondiente.
Siga estos pasos para crear de forma estática una PVC en un nuevo clúster de TKG mediante la información del volumen subyacente de sobra.
Procedimiento
- Anote el nombre de la PVC original en el Supervisor.
Si vuelve a utilizar la PVC de un clúster de TKG antiguo, puede recuperar el nombre de la PVC de
volumeHandle del objeto de PV anterior en el clúster de TKG.
- Crear un PV.
En el archivo YAML, especifique los valores de los siguientes elementos:
- Para storageClassName, puede introducir el nombre de la clase de almacenamiento que utiliza su PVC en el Supervisor.
- Para volumeHandle, introduzca el nombre de PVC que obtuvo.
Si reutiliza un volumen de otro clúster de TKG, elimine los objetos de PVC y PV del clúster de TKG anterior antes de crear un PV en el nuevo clúster de TKG.
Utilice el siguiente manifiesto de YAML como ejemplo.
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.
- Cree un PVC para que coincida con el objeto PV que creó.
Establezca la
storageClassName en el mismo valor que en el 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
- Compruebe que la PVC esté enlazada al PV que creó.
$ 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