Instalar Kubernetes Dashboard en tu clúster
Hasta ahora, todo lo que te he contado de Kubernetes y Docker ha sido a través del terminal. Hoy vamos a ver cómo instalar Kubernetes Dashboard en un entorno de desarrollo, para que pruebes una forma más visual de gestionar tu clúster.
Instalación
Como puedes intuir, este Dashboard no viene instalado cuando montaste tu clúster de Kubernetes. Este va a ser un pod más, bajo el namespace kube-system, que es el espacio de nombres donde se instalan los pods del sistema. En su repositorio de GitHub te ofrecen diferentes versiones del mismo. En este ejemplo vamos a utilizar la versión alternativa, que es menos segura (no se requiere el uso de certificados y se expone a través de HTTP) y se utiliza para este tipo de entornos. Como en el artículo anterior, para hacer un despliegue de un pod basta con utilizar el comando kubectl create y el archivo donde viene definido lo que quieres crear:
Para comprobar que Kubernetes Dashboard se ha desplegado correctamente puedes consultar los pods del sistema a través de este comando:
O bien indicando el el namespace del sistema, que es kube-system:
Si todo ha salido bien, un pod con el nombre kubernetes-dashboard-* debería de estar en el estado Running entre tus pods.
¿Cómo accedo a Kubernetes Dashboard?
Si recuerdas lo que te conté cuando hablábamos de ejecutar contenedores en Kubernetes, los pods sólo pueden ser accedidos desde dentro del clúster, ya que inicialmente no están expuestos al exterior de ninguna manera. Hasta ahora, para hacer peticiones al pod hello-world o a nuestro servidor Nginx hacíamos uso de cURL. Sin embargo, en este caso necesitamos acceder a través de un navegador.
En entornos no productivos la forma más sencilla de exponer un pod es a través del comando kubectl proxy. Ejecuta el siguiente comando para exponer nuestro dashboard:
Ahora, desde el navegador abre la siguiente dirección: http://192.168.1.48:8001/api/v1/namespaces/kube-system/services/kubernetes-dashboard/proxy/#!/node?namespace=default. La IP 192.168.1.48 debes modificarla por la que se corresponda con tu master. Una vez allí, verás que has podido acceder al sitio pero no tienes permisos para ver los recursos de tu clúster.
Dando permisos de administrador a Kubernetes Dashboard
Desde la versión 1.7 de Kubernetes Dashboard, el usuario que viene por defecto no tiene privilegios administrativos, por lo que debemos darlos de alta en nuestro clúster. En este caso, vamos a asignarle el rol cluster admin a través de este comando:
A partir de este momento podrás acceder a tu Dashboard sin problemas.
Desplegar un pod desde Kubernetes Dashboard
¡Ahora ya tienes otra forma de gestionar tu clúster mucho más visual! Puedes ver que existen diferentes secciones de cosas que todavía ni conocemos pero, para empezar, haz una prueba y despliega un pod. Haz clic en CREATE y puedes copiar y pegar el ejemplo de nginx del post anterior para ver lo sencillo que es:
Al cabo de unos instantes tu despliegue estará listo, al igual que ocurría con kubectl.
¡Saludos!