Comando de copia ansible

Comando de copia ansible
Aprenderemos cómo usar el módulo de copia, uno de los módulos ansibles más cruciales, en esta guía. Pondremos en práctica los diversos escenarios de módulo de copia ansible. Mantenemos las cosas simples para que los usuarios puedan comprender la idea del módulo de copia.

El módulo de copia es uno de los módulos importantes de Ansible, que es el módulo incorporado en la herramienta Ansible. Los directorios y archivos se replican utilizando los módulos de copia ansible. El módulo de copia tiene suficiente flexibilidad. Se emplea para copiar la información y los archivos de un sistema local a los hosts remotos de destino. El módulo de copia puede transferir los archivos que han tenido parámetros sustituidos por ellos, como los archivos de configuración con modificaciones de la dirección IP. Puede llevar a cabo numerosas actividades intrincadas en el módulo de copia ansible.

Diferentes parámetros del módulo de copia ansible

Teniendo en cuenta que las siguientes son las diversas variables que empleamos mientras ponen los ejemplos en práctica.

Parámetros requeridos:
Para replicar los directorios y archivos en el host remoto de destino, el módulo de copia requiere argumentos específicos.

Dest: La ruta de destino final del documento o los directorios. Si la ruta original es un directorio y no se especifica el directorio de destino, el directorio de destino se crea automáticamente; Sin embargo, si la ruta original es un documento y la ruta de destino no se especifica como un documento, se lanza una excepción. La vía relativa exacta debería llevarlo al punto objetivo.

Parámetros opcionales:
Aunque hay posibles parámetros opcionales adicionales para el comando de copia ansible, solo nos centramos en algunos de ellos. Es posible que se nos exija comprender completamente este componente.

SRC: La ruta original de los directorios y documentos. Dependiendo del contexto, esta vía puede ser relativa o absoluta. Los documentos y los subdirectorios se copian de forma iterativa si la ubicación de origen es el directorio. Replica la información del directorio si la dirección de origen es un diccionario y termina con /. Alternativamente, duplica el directorio que lleva el nombre de hecho a la ruta objetivo.

fuerza: Si ha habido modificaciones de documento, modifica el documento y su modo predeterminado a sí. Si la opción es no, los documentos se han transferido. Sin embargo, no están presentes en la ruta deseada.

Prerrequisitos del comando de copia ansible

Similar a todos los demás módulos de Ansible, el módulo de copia tiene un conjunto de requisitos que deben cumplirse antes de que pueda implementarse en un libro de jugadas Ansible. Estos requisitos son los siguientes:

  • El dispositivo de host remoto que tiene una conexión SSH debe estar activo. Si no está activo, debe construir el archivo de inventario para hacer la conexión SSH.
  • Se deben ingresar las credenciales que se configuran para Ansible.

Ejemplo 1: Duplicando el documento en el dispositivo de host remoto de destino

Implementamos el primer escenario del módulo de copia. Duplicamos el documento del controlador Ansible a la ubicación local de host local. Para hacer esto, primero creamos el libro de jugadas para escribir el script y mencionar el camino del controlador y el host local en él. El siguiente es el comando para construir el libro de jugadas Ansible:

[root@maestro ansible]# nano copy_module.YML

Después de crear el libro de jugadas Copy_Module, ahora se abre automáticamente una nueva pantalla de terminal. Primero, pasamos la pequeña descripción del ejemplo que implementamos en el libro de jugadas para que el usuario pueda comprender fácilmente el ejemplo en el parámetro "Nombre". Luego, proporcionamos un valor "falso" a la variable "recopilar_fact" para que podamos recibir la información adicional del host remoto. Ahora, especificamos el host remoto en el parámetro "hosts" que es el localhost. También le decimos el tipo de conexión que es la "conexión local".

A continuación, comenzamos a enumerar las tareas en el juego Ansible-Playbook escribiendo primero el nombre de la tarea. Luego, escribimos la variable de "copia". Luego pasamos el "SRC" y el "Dest" para que podamos especificar la ruta del controlador para duplicar el documento y pegarlo en la ubicación especificada local.

Renunciar al copy_module.Libro de jugadas YML. En esta sección, no haremos el archivo de inventario para hacer la conexión porque estamos utilizando el host local aquí. Para mostrar los resultados, escribimos la siguiente declaración:

[root@master ansible]# ansible-playbook copy_module.YML

La siguiente captura de pantalla es la salida del libro de jugadas previamente ejecutado. En esta salida, nos muestra las señales "OK" y "Cambiadas" que le dicen al usuario que las tareas y comandos en el libro de jugadas "Copy_module" se ejecutan correctamente.

Ejemplo 2: Duplicando un documento a un directorio que no existe en el host local

En este ejemplo, duplicamos el documento a la ubicación donde el directorio no está disponible en el dispositivo de host local. Por ejemplo, si tenemos un documento que queremos duplicar al nuevo directorio con el nombre exacto como documento original, el módulo de copia crea el nuevo directorio si el directorio de destino no existe en el dispositivo de destino. Primero, abrimos el copy_module.Libro de jugadas YML. Luego, hacemos cambios de acuerdo con los requisitos de ejemplo.

[root@maestro ansible]# nano copy_module.YML

En el libro de jugadas, cambiamos la ruta de destino en el parámetro "Dest".

Ahora, ejecutamos el libro de jugadas para obtener la salida deseada en el terminal escribiendo la siguiente declaración:

[root@master ansible]# ansible-playbook copy_module.YML

Ejemplo 3: Duplicando un documento con el permiso del propietario

Aquí está el tercer escenario del módulo de copia Ansible donde copiamos el documento con el permiso del propietario al host remoto de destino. En el libro de jugadas, también agregamos los parámetros del propietario, el grupo y el modo.

[root@maestro ansible]# nano copy_module.YML

Ahora, el libro de jugadas se abre después de escribir la declaración anterior:

Para obtener los resultados, ejecutamos la siguiente declaración:

[root@master ansible]# ansible-playbook copy_module.YML

Aquí está el resultado después de ejecutar el comando anterior del libro de jugadas:

Ejemplo 4: Duplicando un documento a una ubicación remota

En esta ilustración, queremos duplicar el documento a la ubicación remota utilizando el módulo de copia de Ansible.

[root@maestro ansible]# nano copy_module.YML

Después de abrir el libro de jugadas, modificamos los comandos.

Queremos duplicar el documento al host remoto para que creemos el archivo de inventario para hacer la conexión entre el controlador Ansible y el host remoto. Ahora, creamos el archivo de inventario a través del siguiente comando:

[root@master ansible]# ansible-playbook copy_module.YML

Después de crear el archivo de inventario, construimos la conexión.

Todo:
Hospedadores:
Anfitrión1:
ansible_host: 192.168.7.10
Ansible_user: Iris
ansible_password: tpstps_1
ansible_connection: ssh
ansible_port: 22

Para obtener la salida deseada, ejecute el siguiente comando:

[root@master ansible]# ansible-playbook copy_module.yml -i anfitrión.YML

Aquí está el resultado de realizar el comando mencionado anteriormente:

Conclusión

Este artículo discute sobre el módulo de copia ansible. Ahora entendemos los parámetros obligatorios y opcionales del módulo de copia de varios copias. Se incluyen múltiples ejemplos para que los usuarios puedan comprenderlos completamente.