Archives et modules antiarchives dans ANSIBLE

Archives et modules antiarchives dans ANSIBLE

Nous savons déjà compresser et débarrasser les fichiers ou les dossiers sous Windows. Mais aujourd'hui, nous apprenons comment nous compressons les fichiers et les dossiers à l'aide de l'outil ANSIBLE. Pour comprendre les deux terminologies d'ANSIBLE, discutons d'abord du module d'archives. Plus tard, nous discuterons du module Unarchive dans Ansible avec des exemples expliqués.

Module d'archive dans ANSIBLE

Un module d'archives dans l'outil ANSIBLE est une collection de tout contenu qui est déplacé vers un appareil de conservation ou un appareil distant afin que nous puissions conserver le contenu pendant une longue période qui est maintenu pour les besoins réglementaires ou a été supprimé de l'appareil principal principal ou machine hôte. Le contenu que nous voulons compresser peut être un fichier de document ou un répertoire qui contient plusieurs sous-répertoires ou fichiers de documents. Pour utiliser la fonctionnalité des archives dans l'outil ANSIBLE, nous utilisons la version d'Anable 2.3 ou supérieure à la version car avant cette version d'Anible, nous utilisons le module Shell pour comprimer un dossier dans Ansible. Pour compresser les fichiers et répertoires de documents, il existe de nombreux formats dans ANIBLE 2.3 version ou plus que nous utiliserons comme .zipper, .le goudron, .gz, .bz2, etc. pour archiver le répertoire. Pour compresser le fichier ou le répertoire de document, le périphérique hôte virtuel doit contenir le contenu que nous souhaitons compresser.

Prérequis pour archiver le contenu dans ANIBLE

Nous supposons que vous avez un contrôleur ANSIBL avec l'annonce configurée sur votre appareil et certaines machines virtuelles afin que nous puissions valider la fonctionnalité des modules d'archives dans l'outil ANSIBLE.

Pour comprendre le concept d'un module d'archives dans ANSIBLE, mettons en œuvre un exemple d'archive afin que nous puissions facilement comprendre le concept de compression du contenu dans Anible.

Exemple: compression du fichier ou du répertoire dans .Format zip

Voici le tout premier exemple du module d'archive ANSIBLE où nous comprimons le document ou le répertoire dans un .format zip. Pour comprimer le document dans .Format zip, nous créons d'abord le playbook. Dans le playbook, nous écrivons l'emplacement du document ou du répertoire que nous voulons compresser et également écrire le point de destination où nous voulons placer le fichier ou le dossier d'archive. La commande qui est utilisée pour construire le playbook dans l'outil ANSIBLE est répertoriée dans ce qui suit:

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

Après avoir écrit la commande, une archive.Le fichier yml playbook apparaît. Tout d'abord, nous fournissons «tous» les hôtes distants où nous voulons archiver le document. Pour acquérir les informations sur les hôtes distants, la variable Gather_facts de Ansible PlayBook lance le module de configuration par défaut au début de l'archive.livre de jeu YML. Après cela, nous écrivons les tâches que nous voulons faire dans les archives.livre de jeu YML.

Dans le module de la tâche, nous écrivons le nom de la tâche. Nous écrivons le module d'archives qui montre que nous voulons comprimer le document. Dans le module d'archive, le fichier de document ou le répertoire qui va être compressé doit être fourni comme l'argument minimum unique «chemin» ou trois arguments qui sont le «chemin», le «dest» et le «format» lors de la compression d'un document. L'argument «chemin» contient le chemin réel du document source qui est / home / anible / test.

Le chemin du périphérique ciblé est / TMP / test.zip et le format du module d'archive est .zipper. Si en quelque sorte le répertoire cible n'est pas fourni, il revient au répertoire par défaut du fichier de document. Ce qui suit est le livre de jeu qui contient les tâches complètes du module d'archives:

- Hôtes:
- tous
rassemble_facts: faux
Tâches:
- Nom: Compress Directory / Home / Ansible / Test dans Directory / TMP / Test.zipper
archive:
chemin: / home / anible / test
dest: / tmp / test.zipper
Format: zip

Pour quitter l'archive de lecture de jeu.YML, nous appuyons sur «Ctrl + X» et enregistrons les modifications en appuyant sur le «Y».

Si vous voulez exécuter les archives.YML Playbook, nous devons d'abord construire le fichier d'inventaire. Ensuite, nous établissons les connexions entre les hôtes distants et le contrôleur anible. Pour créer le fichier d'inventaire, nous écrivons la commande suivante:

[root @ maître anible] # nano hôte.YML

L'hôte.Le fichier d'inventaire YML apparaît sur le nouvel écran. Maintenant, nous écrivons les informations concernant les hôtes. Puisque nous écrivons «tous» hôtes dans les archives.YML Playbook, nous écrivons d'abord le «tout», puis nous écrivons les informations «hôtes». Nous fournissons l'adresse IP hôte, le nom de l'utilisateur ANSIBLE, le mot de passe de l'ANSIBLE, le nom de connexion et le numéro de port disponible dans le fichier d'inventaire comme vous pouvez le voir ci-dessous:

Tous:
Hôtes:
Host1:
ANSIBLE_HOST: 192.168.3.229
ANIBLE_USER: ANSIBLE
ANSIBLE_PASSWORD: ********
ANSIBLE_CONNECTION: SSH
ANSIBLE_PORT: 22

Maintenant, nous exécutons le playbook et le fichier d'inventaire que nous avons déjà créé en écrivant la commande suivante:

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

Voici le résultat de l'Archove anible.YML Playbook:

Comme vous pouvez le voir dans la sortie, le répertoire de Host1 est comprimé en affichant le signal «OK».

Module unarchive dans ANSIBLE

Le module non archivé est utilisé pour déballer ou débrouiller le contenu du document ou du répertoire. Pour utiliser le module Unarchive d'ANSIBLE, le document ou le répertoire doit être disponible sous forme archivée.

Exemple: non compressé le fichier ou le répertoire du .Format zip

Nous avons déjà archivé le répertoire que nous avons récemment créé. Lorsque nous débrouillons le répertoire ou le fichier, il offre la possibilité de dupliquer le document ou le répertoire compressé à l'hôte distant. Pour désarchiver le document ou le répertoire, nous créons d'abord le playbook où nous écrivons la source et la destination du répertoire.

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

Nous créons le Unarchive.livre de jeu YML. Maintenant, nous écrivons les hôtes distants et les tâches que nous voulons mettre en œuvre dans le playbook. Dans les tâches, nous écrivons la variable «src» puis passons le chemin du répertoire archivé qui est / tmp / pré-requiste.zipper. Ensuite, nous écrivons la variable «dest» et placez le chemin qui est / home / anible / où nous voulons déballer le contenu du répertoire.

- Hôtes:
- tous
rassemble_facts: faux
Tâches:
- Nom: pré-requis non archivés.zip de la machine de contrôleur dans / home / anible sur la machine cible
Unarchive:
src: / tmp / pré-requis.zipper
dest: / home / anible /

Nous avons déjà créé le fichier d'inventaire précédent qui est hôte.YML donc nous n'avons pas à reconstituer la connexion entre le contrôleur ANSIBLE et les hôtes distants. Nous écrivons simplement la commande ANSIBL-PlayBook et appelons l'hôte.Fichier d'inventaire YML. Si nous n'avons pas la connexion, nous établissons la connexion. Pour exécuter l'unichie anarchive.YML Playbook, écrivez la commande suivante:

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

Ce qui suit est la sortie exécutable du PlayBook ANSIBLE où nous déballons le contenu du répertoire:

Conclusion

Nous avons appris à compresser et à débarrasser un document ou un répertoire à l'aide de l'outil ANSIBLE. Tout d'abord, nous avons un répertoire par défaut que nous avons converti en un module d'archive. Ensuite, nous avons désarchisé le répertoire archivé en implémentant l'exemple du .Format zip avec une explication détaillée.