En el video de hoy instalamos k3s y desplegamos home assistant on kubernetes. Ganas de complicarnos la vida con home assistant sobre kubernetes :).
La motivación del proyecto es aprender.
Por el hecho de ser kubernetes declarativo, es decir, le definimos el estado final de nuestra infraestructura, no el camino para llegar a ella, que sería imperativo. Como por ejemplo cuando en home assistant creamos una automatización para encender una luz de 8 a 10 frente a imperativamente encederla a las 8 y apagarla a las 10. Esto a futuro nos va a facilitar cambiar la forma de trabajar, acercándonos a infraestructura cómo código, despliegues automáticos desde el repositorio, etc.
En resumen, tener un cluster de Kubernetes en casa puede ser una forma muy útil de experimentar y aprender sobre cómo funciona Kubernetes, así como tener un entorno local donde se puedan ejecutar aplicaciones en contenedores de forma aislada y segura.
Lo vamos a ejecutar sobre un miniPC que ya tenemos, comprado en Aliexpress de poco más de 100€.
A futuro le añadiremos dos nodos al clúster, el servidor que tenemos como NAS y el que nos hace de firewall, por las ventajas que nos ofrece y la alta disponibilidad de disponer de tres nodos.
Lo hemos montado instalando la distribución de k8s k3s.
k3s es un proyecto de la CNCF. Lo promovió inicialmente Rancher que fué adquirida por Suse Linux.
K3s es un kubernetes ligero. Está pensado para entornos con pocos recursos, no para grandes centros de datos.
Consta de un único binario con todo lo necesario (incluído cotntrolador ingress, funciona bien en un único nodo, pero fácilmente se puede ampliar a 3, a dos o a una arquitectura de n nodos más agentes. Es fácil de instalar y actualizar. Puede usar etcd o una base de datos para almacenar el plano de control.
La instalación es muy sencilla y se puede hacer con un único comando.
Luego planteamos distintas mejoras como en el balanceo, el almacenamiento o la posibilidad de dar alta disponibilidad de hardware, con soluciones como metallb, Sophos home edition, longhorn, rook…
Por último realizamos el despliegue de home assistant.
Si necesitas ayuda recuerda unirte a nuestro grupo de Telegram. Para no perderte nada de lo que publiquemos sigue nuestro Twitter.