Por fin tenemos nuestro cluster de 1 solo nodo (formado únicamente por nuestro controlplane). Llega el turno de desplegarle nodos para conformar nuestro cluster kubernetes de 3 nodos (master/controlplane, node1 y node2)
Llegados a este punto, tenemos un cluster kubernetes desplegado con un solo nodo (master) al que queremos añadir 2 nodos mas que tendrán precisamente el rol de nodo1 y nodo2 sobre el que desplegaremos ya nuestras aplicaciones.
La idea sigue siendo acabar teniendo esta topología.
Recuerda que debes tener cumplidos los prerrequisitos comentados en el primer post de esta serie, que se pueden resumir en:
NOTA: Revisa el primer post de esta serie para más detalles
Añadir un nuevo nodo es tan fácil como recuperar el comando kubeadm join que nos escupió la salida de kubeadm init (ver post anterior).
Y precisamente eso es lo que tenemos que hacer:
Si no hemos cometido ningún error en ninguna de las etapas previas, la salida esperada debería ser la siguiente:
NOTA: Repite el proceso en los 2 nodos (node1 y node2)
En este punto, ya deberíamos tener el cluster levantado y funcionando compuesto por el nodo master y los dos nodos secundarios. Para comprobarlo ejecuta el siguiente comando desde el nodo master:
Y finalmente podemos ver cómo tenemos varios despliegues con 2 pods, como por ejemplo calico, kube-proxy o coredns. (uno por cada nodo y el del controlplane si aplicase)
Si estas leyendo esto es porque te despistaste y olvidaste salvar la salida de tu ejecución kubeadm init. No te preocupes porque es posible obtener el comando kubeadm join una vez tenemos nuestro cluster desplegado.
Es un poco mas tedioso que copiar-pegar el comando previamente generado, eso si
NOTA: Tienes que salvar el valor del token que yo he ofuscado por seguridad
Lo normal es que el token de join sirva durante unos pocos días por seguridad y que debas generarte otro. Si este es tu caso, lo puedes hacer así:
Obtener el certification hash
Con los comandos anteriores, ya podrás realizar el join, puesto que has conseguido nuevos TOKEN_VALUE y CA_HASH_VALUE:
En este post hemos finalmente terminado nuestro cluster kubernetes con kubeadm. Nos queda únicamente añadirle un sistema de persistencia de datos para nuestros futuros despliegues stateful, pero eso lo trataremos en el siguiente post.
¿Quieres profundizar en tus conocimientos en Kubernetes? Después de esta formación, 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 vistazoSoy Technical Leader en Verne TECH, MVP de Microsoft y Microsoft Certified Trainer (MCT). Estoy focalizado en motores relacionales de SQL Server y me encanta resolver problemas de rendimiento y escalabilidad en sistemas OLTP. He liderado más de 100 proyectos, no sólo en España, sino también en otros países como USA, Holanda, México, etc. siendo el principal arquitecto de soluciones como HealthCheck, QueryAnalytics y DatabaseObfuscator.