Creación de almacenamiento de volúmenes en bloque persistente
El servicio de volúmenes en bloque de Compute Cloud@Customer proporciona un almacenamiento en bloque persistente, duradero y de alto rendimiento que puede utilizar para almacenar datos fuera de los contenedores.
Este procedimiento crea automáticamente la clase de almacenamiento oci-bv
solicitada; no es necesario crearla. Este procedimiento comienza con el uso del comando kubectl
para crear la reclamación de volúmenes persistentes.
-
Cree una reclamación de volumen persistente especificando el nombre de clase de almacenamiento
oci-bv
.$ kubectl create -f csi-bvs-pvc.yaml
A continuación se muestra el contenido del archivo
csi-bvs-pvc.yaml
:apiVersion: v1 kind: PersistentVolumeClaim metadata: name: mynginxclaim spec: storageClassName: "oci-bv" accessModes: - ReadWriteOnce resources: requests: storage: 50Gi
El nombre de reclamación de volumen persistente de la sección
metadata
está especificado por el usuario. Puede tener más de una reclamación de volumen persistente en un volumen persistente.Para el valor
accessModes
, especifiqueReadWriteOnce
; no utiliceReadWriteMany
.El valor de la propiedad
storage
debe ser de al menos 50 GB. -
Ejecute el siguiente comando para verificar que la PVC se ha creado:
$ kubectl get pvc NAME STATUS VOLUME CAPACITY ACCESSMODES STORAGECLASS AGE mynginxclaim Pending oci-bv 4m
La PVC tiene el estado
Pending
porque la definición de clase de almacenamientooci-bv
incluye lo siguiente:volumeBindingMode: WaitForFirstConsumer
-
Utilice la PVC al crear otros objetos, como pods.
Por ejemplo, puede crear un nuevo pod a partir de la siguiente definición de pod, que indica al sistema que utilice la PVC
mynginxclaim
como volumennginx
, montado por el pod en/data
:apiVersion: v1 kind: Pod metadata: name: nginx spec: containers: - name: nginx image: nginx:latest ports: - name: http containerPort: 80 volumeMounts: - name: data mountPath: /usr/share/nginx/html volumes: - name: data persistentVolumeClaim: claimName: mynginxclaim
Ejecute el siguiente comando para verificar que la PVC se ha enlazado a un nuevo PV:
$ kubectl get pvc NAME STATUS VOLUME CAPACITY ACCESSMODES STORAGECLASS AGE mynginxclaim Bound csi-unique_ID 50Gi RWO oci-bv
Ejecute el siguiente comando para verificar que el pod está utilizando la nueva PVC:
$ kubectl describe pod nginx