meta data de esta página
  •  

Diferencias

Muestra las diferencias entre dos versiones de la página.

Enlace a la vista de comparación

Próxima revisión
Revisión previa
virtualizacion:kubernetes:volumes [2020/11/10 14:21] – creado lcvirtualizacion:kubernetes:volumes [2023/01/18 14:37] (actual) – editor externo 127.0.0.1
Línea 1: Línea 1:
 +{{tag>kubernetes volumens volumenes pv pvc}}
 ===== Volumes ===== ===== Volumes =====
 +==== Definiciones ==== 
 +  * pv = PersistentVolume (Volumen Persistente) 
 +  * pvc = PersistentVolumeClaim (Solicitud de Volumen Persistente) 
 +Por ejemplo <sxh>kubectl get pvc </sxh> <sxh>kubectl get pv </sxh> 
 +==== Tipos ====
 Tenermos varios tipos: Tenermos varios tipos:
   * emptyDir   * emptyDir
   * hostPath   * hostPath
   * Cloud   * 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
 +<sxh yaml>
 +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: {}
 +    
 + </sxh>
 +
 +==== hostPath ====
 +Crea el volumen en un directorio del nodo donde corre el pod
 +<note> Ojo ya que al estar el volumen asociado al nodo donde corre el pod, si este cambia de nodo dejaría de poder acceder</note>
 +<sxh yaml>
 +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
 +</sxh>
 +
 +==== 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
 +  * 
 +==== Referencias ====
 +  * https://github.com/ricardoandre97/k8s-resources/tree/master/volumes