Kubernetes es a día de hoy el orquestador de contenedores open-source más usado y es por ello que han ido apareciendo un gran número de herramientas con las que gestionar un cluster de Kubernetes via terminal. Muchas de estas herramientas son para hacernos la vida un poco más fácil en el proceso de gestión de un cluster y es por ello que quiero hacer una pequeña guía de las que mas utilizo en UserZoom y que considero más interesantes.

kubectl

Cliente oficial para linea de comandos de Kubernetes con lo que podremos realizar cualquier acción que queramos en nuestro cluster.

Ejemplos de uso:

kubectl get pods
List all pods
kubectl get replicationcontroller web
List a single replication controller with specified NAME
kubectl get secret SECRET_NAME -o jsonpath='{.data.SECRET_KEY}' | base64 -d
Get secret value and decode it

[ Instalación ]

kube-shell

Esta herramienta trabaja conjuntamente con kubectl y nos facilita información sobre los argumentos que podemos usar en kubectl así como funciones de auto-completado para evitar tener que memorizar todos los argumentos disponibles e ir mas rápido trabajando con ellos.

Ejemplo de uso:

[ Instalación ]

kubectx / kubens

Estas herramientas también trabajan conjuntamente con kubectl. En este caso, kubectx nos permitirá cambiar de context muy fácilmente y kubens lo mismo pero con los namespaces.

Ejemplo de uso:

[ Instalación ]

k9s

Si bien las anteriores herramientas nos sirven para realizar un acción concreta con un comando y podrían ser usadas en cualquier script que queramos. La herramienta k9s nos brinda la opción de gestionar el cluster de Kubernetes a tiempo real con un menú muy intuitivo via terminal.

Ejemplo de uso:

[ Instalación ]

kind

Kind es una herramienta para ejecutar uno o varios clusters locales de Kubernetes utilizando "nodos" de contenedores Docker. Esta herramienta se diseñó principalmente para probar Kubernetes, pero se puede usar para desarrollo local o CI.

Ejemplo de uso:

Create cluster

[ Instalación ]

minkube

Minikube es otra herramienta para ejecutar uno o varios clusters locales de Kubernetes. Este tipo de herramientas nos facilitaran mucho la vida para testear nuestra aplicación o si somos principiantes y queremos empezar a jugar con kubernetes.

Ejemplos:

minikube start
Start a cluster
minikube dashboard
Access the Kubernetes dashboard
minikube service hello-minikube
Open this exposed endpoint in your browser

[ Instalación ]