Présentation
Ansible est un outil d'infrastructure en tant que code qui vous permet d'utiliser un seul nœud de contrôle pour surveiller et gérer des serveurs distants.
Ansible vous permet de gérer des serveurs distants en créant des playbooks, qui contiennent des listes de tâches à effectuer par les serveurs distants. Il fournit également un mode de vérification dans lequel vous pouvez tester un playbook.
Ce didacticiel vous montre comment effectuer une simulation d'un playbook Ansible à l'aide de la fonction de mode de vérification intégrée.
Prérequis
- Un système Linux (nous utilisons Ubuntu 20.04)
- Accès à la ligne de commande/fenêtre du terminal
- Ansible installé et configuré (voir nos guides sur l'installation d'Ansible sur Windows ou l'installation d'Ansible sur Ubuntu)
Quand utiliser Ansible Dry Run
Utilisation de l'essai à blanc d'Ansible La fonctionnalité permet aux utilisateurs d'exécuter un playbook sans apporter de modifications aux serveurs. Il utilise le mode de vérification intégré pour vérifier la présence d'erreurs dans un playbook avant son exécution.
Cette option est très utile lors de l'exécution de playbooks complexes contenant des commandes apportant des modifications majeures aux serveurs. Utilisation de la marche à blanc permet de détecter les erreurs fatales avant qu'elles n'arrêtent les serveurs et ne les rendent inutilisables.
Ansible Dry Run – Exécuter des playbooks en mode vérification
Le moyen le plus simple d'effectuer une simulation dans Ansible consiste à utiliser le check mode
. Ce mode fonctionne comme le --syntax-check
commande, mais au niveau du playbook.
Mode de vérification
Utilisez le -C
ou --check
indicateur avec le ansible-playbook
commande pour faire une simulation d'un playbook Ansible :
ansible-playbook playbook.yaml --check
Cela produit le même résultat que l'exécution réelle du playbook, sauf qu'il rendra compte des modifications qu'il aurait apportées au lieu de les apporter.
Une autre façon d'exécuter un playbook en mode vérification consiste à ajouter le check_mode
paramètre au contenu du playbook :
---
- hosts: all
tasks:
- name: A command to run in check mode
command: /your/command
check_mode: on
Option Diff
Utiliser le --diff
indicateur avec le ansible-playbook
La commande signale les modifications apportées lors de l'exécution du playbook :
ansible-playbook playbook.yaml --diff
Utiliser le --diff
flag produit une longue sortie, il est donc préférable de l'utiliser lors de la vérification des modifications sur un seul hôte.
Combiner vérification et diff
Combinaison du --check
et --diff
drapeaux avec le ansible-playbook
La commande vous donne un aperçu plus détaillé de toutes les modifications apportées par votre playbook :
ansible-playbook playbook.yaml --check --diff
Cela produit la même sortie détaillée que vous obtenez lorsque vous utilisez le --diff
flag, mais sans réellement exécuter aucune des modifications.
Quand ne pas utiliser Ansible Dry Run
Utilisation de la marche à blanc est utile pour la gestion de la configuration de base nœud par nœud.
Cependant, si votre playbook contient des tâches conditionnelles ou basées sur les résultats, il ne fonctionnera pas en mode vérification. En effet, les conditions de ces tâches ne peuvent être satisfaites sans exécuter réellement le playbook et apporter des modifications.