Finalmente tenemos un cluster kubernetes desplegado mediante kubeadm, pero no disponemos de un mecanismo de persistencia de datos mas allá de los propios discos de almacenamiento de nuestros workernode. Llegados a este punto debemos configurar un sistema de persistencia de datos externo a nuestro cluster, para evitar tener que depender del propio nodo kubernetes para persistir información (mala práctica).

En este post, veremos cómo instalar nuestro servidor NFS para que podamos utilizarlo como sistema de referencia de puntos de montaje desde los workernode de nuestro cluster kubernetes.

kubernetes instalar cluster storage

Es muy interesante añadir un servidor de ficheros para que kubernetes lo consuma para nuestros storageclass o persistentvolumes. En este post vamos a ver lo fácil que resulta añadir un servidor NFS y que luego lo podamos utilizar como servidor de persistencia de datos local.

Aquí tienes la arquitectura que queremos montar, donde puedes ver que el servidor NFS se encuentra conectado, pero no forma parte del cluster kubernetes.

NOTA: Te recuerdo que estamos montando un sistema virtual para poder jugar en modo OnPremises con kubernetes. Esta configuración de persistencia no es óptima para producción puesto que no tiene el rendimiento y fiabilidad que seguramente necesites en producción.

Instalar NFS Server

Para instalar el servicio NFS es tan fácil como instalar el paquete nfs-kernel-server

sudo apt-get install nfs-kernel-server

Configurar Servicio NFS

Vamos a configurar para que nuestro servidor kubernetes utilice como persistencia la ruta /export. Para ello la vamos a crear y configurar de la siguiente manera.

#crear rutas
sudo mkdir /export
sudo mkdir /export/volumes
sudo mkdir /export/volumes/pod
 
# Configurar nfs
sudo bash -c ‘echo “/export/volumes *(rw,no_root_squash,no_subtree_check)” > /etc/exports’
sudo cat /etc/exports
sudo systemctl restart nfs-kernel-server.service
 

Instalar el Cliente NFS en Nuestros Nodos Kubernetes

Para que nuestros StorageClass y PersistentVolumes puedan hacer uso de nuestro sistema de persistencia NFS, tendremos que instalar el cliente NFS en nuestros nodos kubernetes manualmente:

sudo apt-get install nfs-common
 
 

Y finalmente testearemos que efectivamente podemos montar manualmente los volúmenes mediante bash

user node kubernetes storage

¿Qué viene ahora?

Pues ahora ya solo nos queda configurar nuestro StorageClass NFS para que podamos utilizarlo en nuestros deployments y que automáticamente persista la información que queramos aquí, pero eso es motivo de otro post.

Aprende todo lo que necesitas saber sobre Kubernetes de cero a Experto

Después del Curso Administración en Kubernetes de 0 a 100, comprenderás los diversos componentes que lo conforman y sus interdependencias, gestionar cargas de trabajo en Kubernetes, configurar tu propio cluster Kubernetes con buenas prácticas... ¡y mucho más!

Voy a Echar un vistazo
0 Shares:
Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

You May Also Like
Leer más

Expresiones, parámetros y funciones en Azure Data Factory

Hay ocasiones, cuando estamos construyendo pipelines con Azure Data Factory, que queremos repetir patrones para extraer y procesar la información cambiando de manera dinámica, en tiempo de ejecución, valores, orígenes/destinos de los datasets, incluso los mismos linked services. Esto es posible mediante el uso de parámetros, expresiones y funciones. Vamos a ver cómo implementarlo con un ejemplo práctico en el que se nos plantea el siguiente supuesto. Se nos ha pedido que extraigamos todos los días los datos del día anterior de distintas tablas del DW a ficheros en un blob storage que además se nombre como la tabla de origen. Si no pudiéramos utilizar contenido dinámico tendríamos que crear dos datasets (uno de origen y otro de destino) y añadir una actividad de copia por cada tabla a exportar.