Herramienta para entender cómo corren las aplicaciones en Kubernetes

Octant

*Octant*

Kubernetes es una plataforma, que ya trabajes en desarrollo, seguridad u operaciones, debes conocer porque en algún momento, no muy lejano, te tocará tratar con ella, sino lo haces ya.

Octant es una herramienta de VMWare que nos ofrece información en tiempo de real sobre un clúster de Kubernetes al que tengamos acceso. Su objetivo es que ésta sea parte del conjunto de herramientas del desarrollador, aunque evidentemente puede ser usada por cualquiera.

Entre sus características podemos encontrar:

  • Visualización de recursos de forma visual y las dependencias entre estos.
  • Nos permite hacer port-forwarding a un pod. Es decir, podemos mapear un puerto local, a un puerto remoto de un pod. De esta forma podemos acceder al mismo sin tener que crear un servicio.
  • Ampliable a través de plugins.
  • Acceso a logs de forma continua.
  • Fácil navegación por el clúster.
  • Filtrado de búsquedas por etiquetas.

En Kubernetes existe una interfaz gráfica que práticamente permite hacer todo lo mencionado anteriormente, a excepción del port-forwarding y el uso de plugins. De hecho el panel de control de Kubernetes, nos permite crear objetos, borrarlos, modificarlos, etc. Mientras que Octant, sin la instalación de plugins, actualmente sólo nos permite navegar por el clúster y ver el estado del mismo, es decir, no nos permite modificarlo. Aquí la gran diferencia entre estos es que el panel de control de Kubernetes se instala como parte del clúster, mientras que Octant corre de forma local, es decir, que siempre y cuando tengas acceso a un cluster de Kubernetes, puedes correr Octant y poder navegar por el mismo de forma gráfica.

Recuerda que el panel de control gráfico de Kubernetes, no es un componente requerido. Es opcional, y no es el único que existe. De hecho, cada producto construido encima de Kubernete, suele tener su propio panel de control gráfico: Openshift, GKE, EKS, etc.

Si quieres ver la diferencia entre el panel de control de Kubernetes y Octant puedes ejecutar ambos en tu sistema.

Usando minikube sólo tienes que ejecutar (minikube debe estar corriendo):

minikube dashboard

Este comando abrirá el panel de control de minikube (oficial de Kubernetes) en el navegador.

Para ver Octant, lo primero es instalarlo, cuyas instrucciones están disponibles en el enlace de arriba, así el cómo ejecutarlo. Por defecto Octant escucha por el puerto 7777, pero éste se puede cambiar a través de la variable de entorno OCTANT_LISTENER_ADDR, por ejemplo:

OCTANT_LISTENER_ADDR=0.0.0.0:8900 octant

Ó

export OCTANT_LISTENER_ADDR=0.0.0.0:8900 
octant

Si estás interesado en la creación de plugins para Octant, puedes visitar la documentación, que curiosamente tienes que correr localmente usando hugo, misma plataforma sobre la que corre este blog :).