meta data de esta página
Volumes
Definiciones
- pv = PersistentVolume (Volumen Persistente)
- pvc = PersistentVolumeClaim (Solicitud de Volumen Persistente)
Por ejemplo
kubectl get pvc
kubectl get pv
Tipos
Tenermos varios tipos:
- emptyDir
- hostPath
- Cloud
EmpyDir
Crea un directorio vacio en el pod y que estara disponible mientras exista el pod. Independiente de que los containers de dentro del pod se destruyan, recreen, reinicien , etc
Ejemplo
apiVersion: v1
kind: Pod
metadata:
name: test-pd
spec:
containers:
- image: nginx:alpine
name: test-container
volumeMounts:
- mountPath: /var/log/nginx #indica el directorio que vamos a montar como un volumen emptyDir
name: vol
volumes:
- name: vol
emptyDir: {}
hostPath
Crea el volumen en un directorio del nodo donde corre el pod
apiVersion: v1
kind: PersistentVolume
metadata:
name: task-pv-volume
labels:
type: local
spec:
storageClassName: manual
capacity:
storage: 10Gi
accessModes:
- ReadWriteOnce
hostPath:
path: "/test"
---
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
name: task-pv-claim
spec:
storageClassName: manual
accessModes:
- ReadWriteOnce
resources:
requests:
storage: 10Gi
NFS
Kubernetes permite montar volúmenes NFS existentes en un pod. Los volúmenes NFS son volúmenes externos al cluster Kubernetes y son persistentes, su contenido se mantiene después de la eliminación de los pods que lo tengan montado.
Cloud
- Openstack Cinder