Ejecutar Bash en una cápsula con Kubectl?

Ejecutar Bash en una cápsula con Kubectl?
Este artículo demuestra cómo llevar un shell en un contenedor en ejecución usando Kubectl Exec. Este artículo debe realizarse en un clúster con un mínimo de dos nodos que no controlan los hosts de plano. Puede usar Minikube para construir un clúster si actualmente no tiene uno.

Para ejecutar la instrucción en Kubernetes, necesitará Ubuntu 20.04 implementado en su sistema operativo Linux. Para ejecutar Kubernetes en Linux, también necesitará instalar el clúster Minikube en su PC. Minikube hace que sea sencillo probar comandos y programadores al permitirle hacerlo sistemáticamente. Como resultado, ofrece a los novatos la mejor experiencia de aprendizaje de Kubernetes posible. El clúster de minikube debe iniciarse primero. Vaya a la terminal del símbolo del sistema recién instalado en Ubuntu 20.04. Mediante el uso de la tecla de acceso directo Ctrl+Alt+T o colocando "terminal" en el Ubuntu 20.04 Caja de búsqueda del sistema, puede hacerlo. Cualquiera de las formas anteriores iniciará completamente el minikube en la carcasa terminal. El minikube se iniciará después de eso.

$ minikube comienzo

Escriba "Minikube Start" en la terminal para iniciar el minikube. El clúster de Kubernetes se iniciará después de que se haya construido una máquina virtual capaz de operar un solo clúster de nodo. También funcionará con el entorno Kubectl. Así es como el clúster interactuará contigo.

Obtenga un caparazón en un contenedor en ejecución

Primero, hemos creado un archivo usando el comando touch. Se usa para hacer un archivo que no tenga ningún contenido. El comando touch generó un archivo vacío. Este comando también se puede usar si el usuario no tiene ningún dato que almacenar cuando se crea el archivo.

$ touch shell.yaml

Con el comando touch, puede hacer un solo archivo a la vez. Vea la siguiente captura de pantalla para una mejor idea. El tacto, como todos los demás comandos, tiene una variedad de posibilidades. Estas opciones se pueden usar para diversos fines. Para crear una gran cantidad de archivos a la vez, use el comando touch. Estos archivos no contendrían ningún dato cuando se crearon.

Hemos creado con éxito una vaina con un contenedor. La imagen Nginx es ejecutada por el contenedor. El archivo de configuración del POD es el siguiente:

Por supuesto, eres libre de usar una imagen o caparazón diferente. Algunos argumentos se mencionan a continuación:

My-Shell: El nombre de la implementación que se produce generalmente lleva el nombre de esto. Este será el título de la cápsula con una identificación única al final.

-RM: Cuando se separamos, eliminemos todos los recursos que hemos producido. Esto limpia la implementación, así como la cápsula después de cerrar su sesión.

-i/-tty: Es la combinación de estos dos la que nos permite unirnos a una sesión interactiva.

-: Separa el arg posicional del final de las opciones de ejecución de kubectl (bash).

Intento: Anula el CMD del contenedor con Bash. Deseamos usar bash como comando de nuestro contenedor en este escenario.

Ahora el Pod se crea con éxito con este comando.

$ kubectl aplicar -f shell.yaml

El siguiente comando (Get POD) se puede usar para probar con éxito que el contenedor se está ejecutando.

$ Kubectl Get Pod Shell-Demo

El comando Kubectl Exec se usa para realizar comandos dentro de las vainas de Kubernetes usando contenedores Docker. También es posible adquirir un shell interactivo a un contenedor Docker que se ejecuta dentro de una cápsula usando este comando.

El comando Kubectl Exec le permite iniciar una sesión de shell dentro de los contenedores de su clúster de Kubernetes. Cuando los registros por sí solos no son suficientes, use este comando para investigar el sistema de archivos del contenedor, verificar el estado del entorno y usar herramientas de depuración adicionales. La mejor manera de llevar un shell en un contenedor Kubernetes es usar Kubectl Exec. Fue creado expresamente para este propósito y eliminó todas las complicaciones para determinar a qué nodo físico conectarse.

No hay nada que le impida alterar el contenedor con Kubectl Exec porque le brinda acceso completo a Shell. Esto le permite instalar paquetes de software adicionales para ayudar a solucionar problemas.

Enumere el directorio raíz en su shell. Dentro del contenedor, escriba "ls /".

Apertura de la consola cada vez que un pod tiene dos o más contenedores

Considere el siguiente escenario: tiene dos contenedores llamados Main-App y Helper-App en su Pod llamado My-Pod. El siguiente comando inicia un shell en el contenedor principal.

$ kubectl exec -i -t my -pod - -container main -app - /bin /bash

Conclusión

En este artículo, hemos aprendido a ejecutar el comando Bash con Kubectl y los requisitos previos de ejecutar las instrucciones en Kubernetes. Además, también hemos pasado por los conceptos básicos del comando táctil y ejecutivo y para el cual se usan.