Instalando y Configurando MicroK8s para Nuestro Clúster
Con nuestro servidor Ubuntu listo y los DNS públicos apuntando a él, ha llegado el momento de construir el motor que orquestará todos nuestros servicios: nuestro clúster de Kubernetes.
Para este tutorial, hemos elegido MicroK8s, una distribución de Kubernetes ligera, robusta y desarrollada por Canonical (la misma empresa detrás de Ubuntu). Es perfecta para entornos de desarrollo, edge computing y, como en nuestro caso, para montar un clúster de un solo nodo de forma rápida y sencilla.
Parte 1: Instalación de MicroK8s
Section titled “Parte 1: Instalación de MicroK8s”-
Instalar MicroK8s con Snap Nos conectamos a nuestro servidor por SSH y ejecutamos un solo comando para instalar MicroK8s.
Terminal window sudo snap install microk8s --classic --channel=1.32--classic
: Permite que la aplicación tenga acceso al sistema como un paquete tradicional, lo cual es necesario para que MicroK8s gestione la red y otros recursos.--channel=1.32
: Fijamos la versión de Kubernetes a la1.32
. Esto es una buena práctica para garantizar la estabilidad y evitar actualizaciones automáticas inesperadas que podrían romper nuestra configuración.
-
Configurar Permisos de Usuario Por defecto, los comandos de MicroK8s requieren
sudo
. Para evitar esto y facilitar la administración, añadiremos nuestro usuario actual al grupomicrok8s
.Terminal window sudo usermod -a -G microk8s $USERmkdir -p ~/.kubechmod 0700 ~/.kubesu - $USERusermod
: Añade (-a
) nuestro usuario ($USER
) al grupo (-G
)microk8s
.mkdir
ychmod
: Crean el directorio.kube
con los permisos adecuados para almacenar la configuración del clúster.su - $USER
: Reinicia nuestra sesión de shell para que los nuevos permisos de grupo se apliquen. Deberás introducir tu contraseña.
-
Verificar el Estado del Clúster Una vez que los permisos están aplicados, verificamos que el clúster esté completamente operativo.
Terminal window microk8s status --wait-readyEl flag
--wait-ready
le dice al comando que espere hasta que todos los servicios principales de Kubernetes estén en funcionamiento. El mensajemicrok8s is running
confirma que nuestro clúster de un solo nodo está vivo y listo para recibir órdenes.
Parte 2: Configurando los Addons Esenciales
Section titled “Parte 2: Configurando los Addons Esenciales”Un clúster de Kubernetes “vacío” no es muy útil. Necesitamos añadirle funcionalidades clave. En MicroK8s, esto se hace habilitando “addons”. Vamos a configurar los tres más importantes para nuestro proyecto.
microk8s enable dnsmicrok8s enable metallbmicrok8s enable hostpath-storage

Vamos a desglosar qué hace cada uno de estos comandos.
Addon 1: DNS
Addon 2: MetalLB (Load Balancer)
Addon 3: Hostpath Storage (Almacenamiento Persistente)
Parte 3: Visualizando Nuestro Clúster con Lens
Section titled “Parte 3: Visualizando Nuestro Clúster con Lens”Administrar Kubernetes desde la línea de comandos es potente, pero a veces una interfaz gráfica ayuda a visualizar el estado del clúster. Lens es considerado el IDE para Kubernetes por excelencia.
-
Descargar e Instalar Lens Visita la página web oficial de Lens y descarga el instalador para tu sistema operativo.
-
Obtener el Archivo de Configuración (Kubeconfig) Para que Lens (o cualquier otra herramienta) pueda conectarse a nuestro clúster, necesita un archivo de configuración. Lo obtenemos con este comando en nuestro servidor:
Terminal window microk8s configEsto imprimirá el contenido del archivo kubeconfig en la terminal. Cópialo todo.
-
Añadir el Clúster a Lens Abre Lens y haz clic en el icono + para añadir un nuevo clúster, o selecciona la opción “Add kubeconfig by pasting”.
-
Pegar la Configuración Pega el contenido del kubeconfig que copiaste del servidor en el cuadro de texto y haz clic en “Add Clusters”.
-
Explorar el Clúster ¡Listo! Lens se conectará a tu clúster de MicroK8s. Ahora puedes navegar visualmente por los nodos, workloads, pods y todos los recursos de tu clúster, viendo su estado en tiempo real.
Conclusión
Section titled “Conclusión”¡Felicidades! Has construido y configurado con éxito un clúster de Kubernetes funcional. No solo has instalado el motor, sino que también le has añadido las piezas clave para el descubrimiento de servicios (DNS), la exposición a la red (MetalLB) y la persistencia de datos (Hostpath Storage).