«kube-prompt»: comandos Auto Complete Shell para Kubernetes

Después de presentar el par de artículos de kube-shell anteriormente, ahora llegamos a otro gran shell para kubernetes, llamado kube-prompt. En este artículo, usamos nuevamente el clúster local de Minikube para la demostración, pero esta vez usaremos KVM en lugar de VirtualBox. Por supuesto, también puede ejecutar kube-prompt en VirtualBox si le gusta más, pero hay muy pocas razones para optar por KVM. El más importante de ellos: VirtualBox le da a su kernel una bandera contaminada debido a que el controlador del kernel está fuera del árbol. Algunas personas han informado de inestabilidad del kernel con kmods de VirtualBox, y dado que el kernel está contaminado con ellos, sus informes de errores no se considerarán como la primera prioridad. KVM está en el kernel de la línea principal, por lo que no hay ningún problema con él. Vamos a usar Ubuntu para este artículo, en mi computadora portátil de respaldo, la X220T.
Instalación de KVM
Evidentemente, lo primero que necesitamos es la instalación de KVM.
sudo apt-get install qemu-kvm libvirt-bin ubuntu-vm-builder bridge-utils
Para poder usar libvirt sin problemas, debe agregar su usuario al grupo libvirt. Habiendo iniciado sesión como su usuario, ejecute este comando
sudo adduser `id -un` libvirt
Y finalmente para probar su instalación de KVM, ejecute este comando
kvm-ok
Debería darte algo como esto
INFO: /dev/kvm exists KVM acceleration can be used
Instalación de kubectl, minikube y docker-machine-driver-kvm
Necesitamos instalar todos los binarios. Kubectl es, por supuesto, el primero entre ellos, por lo que lo instalamos con los siguientes 3 comandos.
curl -LO https://storage.googleapis.com/kubernetes-release/release/v1.7.0/bin/linux/amd64/kubectl
Luego agregue un bit ejecutable y muévalo a la ruta
chmod +x kubectl sudo mv kubectl /usr/local/bin/kubectl
El siguiente es minikube. La última versión es 0.22 al momento de escribir este artículo. Podemos instalarlo con este revestimiento.
curl -Lo minikube https://storage.googleapis.com/minikube/releases/v0.22.0/minikube-linux-amd64 && chmod +x minikube && sudo mv minikube /usr/local/bin/
Para que minikube se ejecute en KVM, necesitamos el controlador docker-machine-kvm. Aquí se explica cómo descargarlo.
curl -LO https://github.com/dhiltgen/docker-machine-kvm/releases/download/v0.10.0/docker-machine-driver-kvm-ubuntu16.04
Y de nuevo, bit ejecutable y moverse a la ruta
chmod +x docker-machine-driver-kvm-ubuntu16.04 sudo mv docker-machine-driver-kvm-ubuntu16.04 /usr/local/bin/docker-machine-driver-kvm
Abrir el clúster y ejecutar con KVM de forma predeterminada
Los binarios están en su lugar, pero minikube busca por defecto VirtualBox. Entonces podemos usar este comando para cambiar el valor predeterminado a KVM:
minikube config set vm-driver kvm
Después de eso, podemos ejecutar el comando que crea el clúster.
minikube start
La salida debe ser similar a esta

Instalación del indicador de kube
Y finalmente, ahora que tenemos un clúster en ejecución, podemos instalar kube-prompt
wget https://github.com/c-bata/kube-prompt/releases/download/v1.0.1/kube-prompt_v1.0.1_linux_amd64.zip
Necesitamos descomprimir, así que si no lo tiene, ahora es el momento de instalarlo.
sudo apt install unzip
Y luego descomprimamos el archivo.
unzip kube-prompt_v1.0.1_linux_amd64.zip
El siguiente paso es agregar un bit ejecutable y moverlo a la ruta
chmod +x kube-prompt sudo mv kube-prompt /usr/local/bin/kube-prompt
Usando el indicador de kube
Para ingresar al indicador de kube, simplemente escriba kube-prompt.
A partir de ahí, obtenemos las opciones de finalización automática y, a diferencia de kube-shell, no es necesario escribir el comando kubectl. No se equivoque, todavía se necesita kubectl, pero kube-prompt simplemente lo escribe automáticamente. Los siguientes comandos le permitirán crear el servicio y la implementación de prueba de hello-minikube:
kubectl run hello-minikube --image=gcr.io/google_containers/echoserver:1.7 --port=8080 kubectl expose deployment hello-minikube --type=NodePort
A continuación, se muestran algunos ejemplos de kube-prompt:
obtener implementaciones

conseguir vainas

ejecutivo

obtener espacios de nombres

get pods –todos los espacios de nombres


describir los puntos finales
Como vemos, el indicador de kube es algo similar al kube-shell que presentamos anteriormente. La principal diferencia es que no es necesario que escriba kubectl. De hecho, si lo escribe, arrojará un error, ya que se analizará como kubectl. Kubernetes se está volviendo fácil y productivo con kube-prompt y otros shells, pero todos todavía necesitan pulirse, ya que tienen bordes irregulares. Los objetivos del equipo de kube-prompt se describen en página de github. Planean admitir la mayoría de los comandos de kubernetes, lo cual es digno de elogio. Por ahora, seguiré usando kubectl simple ya que ninguno de los shells está listo para producción todavía. Gracias por leer, esto es todo por este artículo.