Kubectl Copiar archivo de POD al local

Kubectl Copiar archivo de POD al local
Al usar Kubernetes, es posible que deba transportar archivos dentro y fuera de los contenedores basados ​​en POD. Utilizamos el comando CP para transferir datos hacia y desde máquinas remotas antes de la contenedorización, y utilizamos una herramienta como SCP para hacerlo. Kubernetes, afortunadamente, tiene una característica comparable. El comando Kubectl CP completa el comando kubectl exec, utilizando el subresource EXEC en la API de Kubernetes POD. Kubectl CP se basa en el comando TAR, que se encuentra en la ruta de ejecución predeterminada del contenedor, y no examina el sistema de archivos del contenedor directamente. Para una mejor comprensión del comando Kubectl CP, esta guía revisará algunos ejemplos.

Antes de empezar:

Usaremos el Ubuntu 20.04 Sistema operativo de Linux para demostrar cómo funciona la función Kubectl CP. El sistema operativo utilizado estará completamente determinado por las elecciones del usuario. Primero debemos instalar kubectl y luego configurarlo en nuestra máquina. La instalación y la configuración del Minikube son dos de los requisitos esenciales. Además, debes comenzar a usar minikube. Minikube es una máquina virtual que opera un clúster de Kubernetes de un solo nodo. En el ubuntu 20.04 Sistema de Linux, debemos usar el terminal de línea de comando para comenzar. Abra la carcasa presionando "Ctrl+Alt+T" en el teclado o usando la aplicación terminal en el Ubuntu 20.04 Programas del sistema Linux. Para comenzar con el clúster de minikube, ejecute el comando indicado a continuación.

$ minikube comienzo

Detalles de la vaina

Asigna una dirección IP a un pod cuando la crea. Localhost se puede usar para unir contenedores en una cápsula con una gran cantidad de ellos. Puede extender la comunicación más allá del POD exponiendo un puerto. Desde Kubectl, los comandos GET devuelven los datos en forma tabular para uno o más recursos. Se pueden usar selectores de etiquetas para filtrar el contenido. La información solo se puede proporcionar al espacio de nombres actual o al clúster completo. Tendremos que elegir un nombre para la cápsula (o las vainas) con quien nos gustaría trabajar. Usaremos el comando kubectl get pod para encontrar los nombre (s) de la cápsula, y usaremos estos nombres a lo largo de los ejemplos. Ejecute el comando a continuación para ver una lista de las vainas que están actualmente disponibles en el sistema.

$ kubectl consigue vainas

Hemos generado un archivo en el directorio de inicio de nuestro sistema. "Xyz.txt "es el nombre del archivo. El comando Kubectl CP se ejecutará desde este archivo.

$ touch xyz.TXT

El archivo se produjo correctamente, como puede ver a continuación.

Asegúrese de tener todo lo que necesitará antes de comenzar. Debemos asegurarnos de que nuestro cliente Kubernetes esté conectado a un clúster. En segundo lugar, tendremos que decidir sobre el nombre de la cápsula (o las cápsulas) con los que nos gustaría colaborar. Para determinar los nombres de la vaina, utilizaremos el pod Kubectl Get POD y utilizaremos estos nombres en las siguientes partes.

Transferencia de un archivo de una PC local a una cápsula

Supongamos que necesitamos mover algunos archivos de una PC local a una cápsula. Copiamos un archivo local a una cápsula llamada "shell-demo" en el ejemplo anterior, y proporcionamos la misma ruta en la cápsula para reproducir el archivo. Verás que seguimos un camino absoluto en ambos casos. Las rutas relativas también se pueden emplear. En Kubernetes, el archivo se copia en el directorio de trabajo y no en el directorio de inicio, lo cual es una distinción significativa entre Kubectl CP y tecnologías como SCP.

El comando Kubectl CP toma dos parámetros, y el primer parámetro es la fuente, mientras que el segundo parece ser el destino. Al igual que SCP, ambos parámetros (archivos de origen y destino) pueden referirse a un archivo local o remoto sin ninguna duda.

$ kubectl cp xyz.Txt Shell-Demo: xyz.TXT

Copie el archivo al directorio actual del POD

Ahora hemos creado un nuevo archivo de texto con el nombre "Kalsoom.TXT".

$ touch kalsoom.TXT

El archivo se crea con éxito.

Copiará "Kalsoom.txt "desde el directorio de trabajo de su POD hasta el directorio de trabajo actual. Escriba el siguiente comando en la cubierta terminal del Ubuntu 20.04 Sistema operativo Linux.

$ Kubectl CP Shell-Demo: Kalsoom.txt kalsoom.TXT

Conclusión

Como aprendimos en esta publicación, el comando Kubectl CP más utilizado es copiar archivos entre la máquina de usuario o la nube y los contenedores. Este comando copia los archivos produciendo un archivo TAR en el contenedor, replicándolo a la red y luego desempaquetándolo con la ayuda de Kubectl en la estación de trabajo del usuario o la instancia de la nube. El comando Kubectl CP es bastante útil y es utilizado por muchos para transferir archivos entre las vainas de Kubernetes y el sistema local. Este comando podría ser útil para depurar cualquier registro o archivo de contenido que se emita localmente dentro del contenedor y si desea volcar la base de datos del contenedor, por ejemplo.