LINUX

kube shell: herramienta rica en funciones para un uso sencillo de la CLI de Kubernetes

kube shell kubernetesHoy mostraremos cómo instalar y usar kube-shell. Es un shell basado en Python y Go que ofrece autocompletado, historial y muchas otras ventajas para el conocido comando kubectl de Kubernetes. Todavía usa kubectl, de ninguna manera lo reemplaza, pero puede ser útil para la productividad y el aprendizaje.

Requisitos previos:

  • Linux destkop o computadora portátil
  • VirtualBox
  • Python con pip instalado

Instalación de VirtualBox

Como vamos a probar kube-shell en un clúster de minikube local, necesitamos VirtualBox. La instalación de VirtualBox para su distribución debería ser fácil, pero aún así le proporcionaremos información sobre las más populares:

En Fedora con RPMFusion habilitado

sudo dnf install VirtualBox

En Ubuntu

sudo apt-get install virtualbox

En CentOS con RPMfusion habilitado

sudo yum install VirtualBox

Instalación de kubectl y minikube y kubectl

Instalar el Minikube es el siguiente paso. El siguiente comando le buscará un binario de minikube y lo pondrá en / usr

curl -Lo minikube https://storage.googleapis.com/minikube/releases/latest/minikube-linux-amd64 && chmod +x minikube

Y este lo moverá a su ruta para que pueda llamarlo sin especificar la ruta completa del binario.

sudo mv minikube /usr/local/bin/

Por supuesto, también necesitará el binario kubectl. Entonces podemos buscarlo con este comando.

curl -Lo kubectl https://storage.googleapis.com/kubernetes-release/release/$(curl -s https://storage.googleapis.com/kubernetes-release/release/stable.txt)/bin/linux/amd64/kubectl && chmod +x kubectl


Y luego pon kubectl en la ruta también.

sudo mv kubectl /usr/local/bin/


Creando un clúster

Una vez que tengamos todo esto configurado, podemos crear un clúster de minikube en nuestra máquina. Asegúrese de no tener KVM ejecutándose ya que VirtualBox entra en conflicto con él, y luego ejecute el siguiente comando.

minikube start

Necesita una conexión a Internet activa para que esto funcione, ya que los archivos deben obtenerse de Internet para instalar el sistema operativo en una VM VirtualBox que será nuestro clúster. Su salida debería ser algo como este gif:

Cuando el clúster está activo, puede ejecutar el comando get nodes para ver si está funcionando. La salida debería ser similar a esta:

$ kubectl get nodes
NAME STATUS AGE VERSION
minikube Ready 7m v1.7.0

Además, hay un estado de comando minikube

$ minikube status
minikube: Running
localkube: Running
kubectl: Correctly Configured: pointing to minikube-vm at 192.168.99.100

Instalación de kube-shell

Ahora, cuando tengamos el clúster en funcionamiento, instalaremos kube-shell. Como mencionamos, es un programa de Python y se instala a través del administrador de paquetes de Python, llamado pip. En algunas distribuciones de Linux, puede tener Python instalado sin pip. Así que asegúrese de tener tanto pip como Python.

En centOS con EPEL habilitado, ejecuta este comando

sudo yum install python-pip

En Ubuntu

sudo apt-get install python-pip

En Fedora

sudo dnf install python-pip

Después de asegurarse de que pip esté instalado, simplemente ejecute este comando

sudo pip instalar kube-shell

¡Y aquí vamos, kube shell está instalado!

Usando kube-shell

En primer lugar, instalemos alguna aplicación en nuestro clúster. Esa puede ser la aplicación hello-minikube

kubectl run hello-minikube --image=gcr.io/google_containers/echoserver:1.7 --port=8080

A continuación, ingresemos kube-shell con simple kube-shell mando.

En kube-shell, exponga la implementación al mundo exterior

kube-shell> kubectl expose deployment hello-minikube --type=NodePort

Veamos cómo kube-shell hace su magia en este GIF.

Solo necesita comenzar a escribir el subcomando después de kubectl y se mostrará la lista de finalizaciones disponibles. Además, después de la palabra «implementación», obtendrá las implementaciones disponibles que puede exponer. También los elige de los menús desplegables. Después de eso, puede escribir

minikube service hello-minikube --url
http://192.168.99.100:31698

Y obtendrá una URL que puede visitar para ver la aplicación. A continuación, escalemos la aplicación y veamos cómo kube-shell nos ayuda a eliminar pods.

kube-shell> kubectl scale deployment --replicas=5 hello-minikube

Y usaremos la funcionalidad de autocompletar kube-shell para elegir una de las réplicas para su eliminación.

El uso de kube-shell no necesita más ejemplos, es completamente intuitivo. Puede recorrer el historial usando la tecla de flecha hacia arriba, o puede recorrer las opciones de autocompletado mientras escribe usando la tecla de tabulación o las teclas de flecha hacia arriba y hacia abajo. Para salir de kube-shell y volver a bash, simplemente escriba exit. El kube-shell todavía tiene algunas características sin terminar, en particular, no completa los parámetros después de – marque como, por ejemplo, –type = NodePort. Pero está completamente abierto a la contribución y disponible en github para que cualquier pirata informático de Python pueda mejorarlo. Con eso, terminamos con este artículo.

Publicaciones relacionadas

Deja una respuesta

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

Botón volver arriba
Cerrar