Kubernetes,  QNAP

Kubernetes. k0s – Creación de StorageClass

Hasta ahora cuando he necesitado persistencia en los Deployments he optado en montar un recurso nfs directamente. Esta solución, aunque práctica, no es la mejor forma de conseguir persistencia en Kubernetes.

El primer paso para configurar la persistencia es crear una StorageClass. He elegido el proyecto https://github.com/kubernetes-sigs/nfs-subdir-external-provisioner que permite utilizar el almacenamiento que tengo disponible, un recurso nfs que me proporciona una NAS QNAP.

Empezamos. El primer lugar es necesario configurar todo lo relativo a los permisos. Esta declaración la tienes disponible en https://github.com/kubernetes-sigs/nfs-subdir-external-provisioner/blob/master/deploy/rbac.yaml y es este caso ni me molesto en explicarla, así que apply -f y listo.

Lo siguiente, y es donde está la chicha, la declaración de la StorageClass y del Deployment Este último es el que implementa el provisioner.

Lo primero la StorageClass, donde lo más importante sería el provisioner: qnap-nfs-share.

Lo segundo el Deployment que implementa el provisioner anterior.

Ahora toca probarlo y vemos si es verdad que esto funciona.

Una vez aplicado, comprobamos tanto en kubernetes como en el NAS si tenemos el PV creado.

Ale pues funciona, ahora toca probarlo en algún deploy más complejo que este test.