Kubernetes – Administración fácil y rápida con K9s

Si quieres administrar y gestionar tus Clusters de Kubernetes (sea OnPrem, Azure, AWS, GCP, etc) o de MiniKube sin necesidad de recurrir y memorizar los comandos de kubectl, esta es tu solución. K9s es una herramienta gráfica e intuitiva, que se conectará a tus Clusters de Kubernetes con las mismas crendeciales que tengas cacheadas (las que usas con el comando kubectl) y te permitirá hacer un montón de cosas, de manera rápida y sencilla, tanto ver los objetos de Kubernetes (Deploymentes, Services, Pods, HPAs, ConfigMaps, etc.) como realizar acciones sobre ellos (visualizar logs, editarlos en tiempo de ejecución, matar un contenedor, abrir una Shell, etc).

Está claro que tiene sentido seguir utilizando kubectl para un montón de cosas que hacemos con Kubernete, al final, K9s no viene a reemplazarlo, pero para otras muchas tareas (especialmente para ver lo que tenemos en nuestro Cluster), K9s nos hace la vida mucho más sencilla, y ahí es donde ganamos (y mucho) en productividad, sobretodo para aquellas personas que aunque trabajan con Kubernetes, su ámbito de conocimiento realmente es otro, y sólo necesitan una herramienta que les ayude a hacer las cuatro cosas que necesitan (habitualmente ver Deploymentes, Pods, logs, ConfigMaps, abrir una Shell, etc.), de forma rápida y sencilla. Esa herramienta es K9s.

Por ejemplo, como parte de un entorno de Desarrollo, K9s junto con MiniKube, serían dos herramientas de casi obligada instalación, al menos si trabajas con Kubernetes.

Instalar K9s sobre Windows 11

Vamos a instalar K9s utilizando Chocolatey (Choco), por lo tanto antes de comenzar, si no tenemos choco instalado, aprovecharemos para instalar Choco, mediante el siguiente comando PowerShell ejecutado como Admin, y abrir una nueva sesión de PowerShell para que apliquen los cambios en el PATH. Para más info: Chocolatey – Install

Set-ExecutionPolicy Bypass -Scope Process -Force; [System.Net.ServicePointManager]::SecurityProtocol = [System.Net.ServicePointManager]::SecurityProtocol -bor 3072; iex ((New-Object System.Net.WebClient).DownloadString('https://community.chocolatey.org/install.ps1'))

Seguidamente podemos instalar K9s, tan fácil como el siguiente comando, y listo. Para más info: K9s – Install

choco install k9s

Con esto, ya lo tenemos: podemos ejecutar el comando k9s, y ya estamos dentro 😉

k9s

Utilizando K9s

Ya tenemos instalado K9s. Y ahora qué hacemos? K9s incluye varios atajos de teclado, que podemos ver en el pantallazo de más abajo, y también aquí: K9s – Commands Sin embargo, por intentar simplificarlo:

  • Sobre el listado de recursos que muestra K9s, en la parte superior de la pantalla se incluye como chuleta los «atajos» a las acciones más comunes (ej: l para ver los Logs, etc), por lo que basta con pulsar esa tecla (o combinación de teclas), y listo.
  • Al pulsar Ctrl-W entramos o salimos de la vista extendida (Wide). Esto depende de qué recursos estamos viendo, ya que no todos ofrecen esta opción.
  • Al pulsar : entramos en un modo Comando, en el que podemos hacer muchas cosas. Por ejemplo:
    • context nos mostrará los Contextos de Kubernetes que tengamos y podremos cambiar el actual, es decir, básicamente nos permitirá conectarnos a uno u otro Cluster, en base a las conexiones/credenciales que tengamos guardadas.
    • Podremos especificar deploy, pods, services, hpa, y así con todos los recursos de Kubernetes, en función de cuáles queramos ver., para cambiar la selección de los resultados que queremos mostrar (por defecto son los Pods).
    • Sobre la lista de resultados, al pulsar Intro sobre un elemento podemos entrar en él, en los casos en que aplica (ej: en un Pod entraríamos y veríamos los Contenedores que tiene, que podría ser uno o varios), y Esc sería para volver al nivel anterior.
    • Si queremos ver los objetos de un Namespace concreto, basta con escribir ns mi-namespace y pulsar Intro, y filtraremos por dicho Namespace, y si luego lo necesitamos podemos pulsar 0 para ver los objetos de todos los Namespaces.
    • Con un comando como xray deploy o xray pods, nos muestra la vista jerárquica de XRay.
  • Al pulsar / entramos en un modo Filtrado, que nos permite filtrar lo que estamos viendo en pantalla (ej: listado de Contedores)

Hay más cosillas, pero simplemente con los puntos de arriba, ya puedes moverte por K9s, y en consecuencia por cualquiera de tus Clusters de Kubernetes, con rapidez y soltura 🙂

Para más info:

Poco más por hoy, como siempre confío que la lectura resulte de interés.

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

18 − 17 =