Commande de copie Ansible

Commande de copie Ansible
Nous apprendrons à utiliser le module de copie, l'un des modules ANSible les plus cruciaux, dans ce guide. Nous mettrons en pratique les différents scénarios de module de copie Ansible. Nous gardons les choses simples afin que les utilisateurs puissent comprendre l'idée du module de copie.

Le module de copie est l'un des modules importants d'ANSIBLE qui est le module intégré de l'outil ANSIBLE. Les répertoires et les fichiers sont reproduits en utilisant les modules de copie Ansible. Le module de copie a une flexibilité suffisante. Il est utilisé pour copier les informations et les fichiers d'un système local vers les hôtes distants cibles. Le module de copie peut transférer les fichiers qui ont subi des paramètres qui leur sont substitués, tels que les fichiers de configuration avec des modifications d'adresse IP. Vous pouvez mener de nombreuses activités complexes dans le module de copie Ansible.

Différents paramètres du module de copie Ansible

Considérant ce qui suit sont les différentes variables que nous utilisons tout en mettant les exemples en pratique.

Paramètres requis:
Pour reproduire les répertoires et les fichiers de l'hôte distant cible, le module de copie nécessite des arguments spécifiques.

Dest: Le document ou le chemin de destination final des répertoires. Si le chemin d'origine est un répertoire et que le répertoire cible n'est pas spécifié, le répertoire de destination est créé automatiquement; Cependant, si l'itinéraire d'origine est un document et que le chemin de destination n'est pas spécifié en tant que document, une exception est lancée. La voie relative exacte devrait vous amener au point ciblé.

Paramètres facultatifs:
Bien qu'il existe des paramètres facultatifs supplémentaires supplémentaires pour la commande ANSIBLE COPY, nous nous concentrons uniquement sur quelques-uns d'entre eux. Nous pouvons être tenus de comprendre complètement ce composant.

SRC: Le chemin d'origine des répertoires et documente. Selon le contexte, cette voie peut être relative ou absolue. Les documents et sous-répertoires sont copiés de manière itérative si l'emplacement d'origine est le répertoire. Il reproduit les informations du répertoire si l'adresse d'origine est un dictionnaire et se termine par /. Alternativement, il reproduit le répertoire qui porte le nom donné au chemin ciblé.

force: S'il y a eu des modifications de document, il modifie le document et son mode par défaut vers OUI. Si l'option est non, les documents ont été transférés. Cependant, ils ne sont pas présents sur la route souhaitée.

Prérequis de la commande de copie ANSIBLE

Semblable à tous les autres modules d'ANSIBL, le module de copie a un ensemble d'exigences qui doivent être satisfaites avant de pouvoir être implémentées dans un livre de jeu anible. Ces exigences sont les suivantes:

  • Le périphérique hôte distant qui a une connexion SSH doit être actif. S'il n'est pas actif, vous devez créer le fichier d'inventaire pour établir la connexion SSH.
  • Les informations d'identification configurées pour ANSIBLE doivent être saisies.

Exemple 1: duplication du document sur le périphérique hôte distant cible

Nous implémentons le tout premier scénario du module de copie. Nous en double le document du contrôleur ANSible à l'emplacement de l'hôte local ciblé. Pour ce faire, nous créons d'abord le playbook pour écrire le script et mentionner le chemin du contrôleur et de l'hôte local dedans. Ce qui suit est la commande pour construire le livre de jeu ANSIBLE:

[root @ maître anible] # nano copy_module.YML

Après avoir créé le livre de jeu Copy_Module, il ouvre désormais automatiquement un nouvel écran de terminal. Tout d'abord, nous passons la petite description de l'exemple que nous mettons en œuvre dans le playbook afin que l'utilisateur puisse facilement comprendre l'exemple du paramètre «Nom». Ensuite, nous fournissons une valeur «fausse» à la variable «rassembler_fact» afin que nous puissions recevoir les informations supplémentaires de l'hôte distant. Maintenant, nous spécifions l'hôte distant dans le paramètre "Hosts" qui est le localhost. Nous disons également le type de connexion qui est la «connexion locale».

Ensuite, nous commençons à répertorier les tâches dans le livre de jeu ANSIBLE en écrivant d'abord le nom de la tâche. Ensuite, nous écrivons la variable «Copie». Nous passons ensuite le «SRC» et le «dest» afin que nous puissions spécifier le chemin du contrôleur pour dupliquer le document et le coller dans l'emplacement spécifié localhost.

Quitter le copy_module.livre de jeu YML. Dans cette section, nous ne ferons pas le fichier d'inventaire pour établir la connexion car nous utilisons l'hôte local ici. Pour afficher les résultats, nous écrivons l'énoncé suivant:

[root @ maître anible] # anible-playbook copy_module.YML

La capture d'écran suivante est la sortie du playbook précédemment exécuté. Dans cette sortie, il nous montre les signaux «OK» et «modifiés» qui indiquent à l'utilisateur que les tâches et les commandes du manuel «copy_module» sont exécutées avec succès.

Exemple 2: duplication d'un document dans un répertoire qui n'existe pas dans l'hôte local

Dans cet exemple, nous reproduisons le document à l'emplacement où le répertoire n'est pas disponible dans l'appareil hôte local. Par exemple, si nous avons un document que nous souhaitons dupliquer dans le nouveau répertoire avec le nom exact comme document d'origine, le module de copie crée le nouveau répertoire si le répertoire cible n'existe pas sur le périphérique cible. Tout d'abord, nous ouvrons le copy_module.livre de jeu YML. Ensuite, nous apportons les modifications en fonction de l'exemple des exigences.

[root @ maître anible] # nano copy_module.YML

Dans le playbook, nous modifions le chemin de destination du paramètre «dest».

Maintenant, nous exécutons le Playbook pour obtenir la sortie souhaitée dans le terminal en écrivant la déclaration suivante:

[root @ maître anible] # anible-playbook copy_module.YML

Exemple 3: duplication d'un document avec l'autorisation du propriétaire

Voici le troisième scénario du module de copie Ansible où nous copie le document avec l'autorisation du propriétaire à l'hôte distant cible. Dans le livre de jeu, nous ajoutons en outre les paramètres du propriétaire, du groupe et du mode.

[root @ maître anible] # nano copy_module.YML

Maintenant, le livre de jeu est ouvert après avoir écrit la déclaration précédente:

Pour obtenir les résultats, nous exécutons l'énoncé suivant:

[root @ maître anible] # anible-playbook copy_module.YML

Voici le résultat après avoir exécuté la commande Playbook précédente:

Exemple 4: duplication d'un document à un emplacement éloigné

Dans cette illustration, nous souhaitons dupliquer le document à l'emplacement distant à l'aide du module de copie d'Anible.

[root @ maître anible] # nano copy_module.YML

Après avoir ouvert le livre de jeu, nous modifions les commandes.

Nous voulons dupliquer le document à l'hôte distant afin que nous construisons le fichier d'inventaire pour établir la connexion entre le contrôleur ANSible et l'hôte distant. Maintenant, nous créons le fichier d'inventaire via la commande suivante:

[root @ maître anible] # anible-playbook copy_module.YML

Après avoir créé le fichier d'inventaire, nous construisons la connexion.

Tous:
Hôtes:
Host1:
ANSIBLE_HOST: 192.168.7.dix
ANSIBLE_USER: IRIS
ANSIBLE_PASSWORD: TPSTPS_1
ANSIBLE_CONNECTION: SSH
ANSIBLE_PORT: 22

Pour obtenir la sortie souhaitée, exécutez la commande suivante:

[root @ maître anible] # anible-playbook copy_module.yml -i hôte.YML

Voici le résultat de l'exécution de la commande susmentionnée:

Conclusion

Cet article traite du module de copie Ansible. Nous comprenons maintenant les différents paramètres obligatoires et facultatifs du module de copie. Plusieurs exemples sont inclus afin que les utilisateurs puissent les saisir entièrement.