Options Avancées du Module Ping et Ciblage de Plusieurs Groupes
Ping de Plusieurs Groupes d'Hôtes
Développons notre playbook pour pinger plusieurs groupes de notre inventaire. Créez un nouveau fichier nommé ping_all.yml
:
- Dans l'IDE Web, naviguez vers
/home/labex/project/ansible
- Faites un clic droit sur le dossier
ansible
et sélectionnez "Nouveau fichier"
- Nommez le fichier
ping_all.yml
- Ajoutez le contenu suivant au fichier :
---
- hosts: all
gather_facts: no
tasks:
- name: Ping all hosts in the inventory
ping:
Ce playbook ciblera tous les hôtes du fichier d'inventaire. Exécutez-le avec :
ansible-playbook -i hosts ping_all.yml
Vous devriez voir une sortie affichant des réponses ping réussies de tous les hôtes de votre inventaire.
Utilisation de Données Personnalisées avec le Module Ping
Le module ping d'Ansible vous permet d'envoyer des données personnalisées pour vérifier qu'elles reviennent non modifiées. Cela peut être utile pour tester des scénarios de connectivité plus complexes.
Créez un nouveau playbook nommé ping_data.yml
:
- Dans l'IDE Web, créez un nouveau fichier nommé
ping_data.yml
dans le répertoire /home/labex/project/ansible
- Ajoutez le contenu suivant :
---
- hosts: webservers
gather_facts: no
tasks:
- name: Ping with custom data
ping:
data: "Hello from Ansible Lab"
Exécutez ce playbook :
ansible-playbook -i hosts ping_data.yml -v
La sortie verbose affichera vos données personnalisées dans la réponse :
TASK [Ping with custom data] **************************************************
ok: [localhost] => {"changed": false, "ping": "Hello from Ansible Lab"}
Exécution de Ping Contre des Hôtes Spécifiques
Vous pouvez également exécuter le module ping directement à partir de la ligne de commande sans créer de playbook. Ceci est utile pour des vérifications rapides de connectivité :
ansible local -i hosts -m ping
Cette commande pingera tous les hôtes du groupe local
et affichera les résultats. Vous devriez voir :
localhost | SUCCESS => {
"changed": false,
"ping": "pong"
}
Vous pouvez également spécifier plusieurs groupes ou motifs :
ansible 'webservers:local' -i hosts -m ping
Cette commande pingera tous les hôtes des groupes webservers
et local
.
Module Ping avec Arguments
Vous pouvez également passer des arguments au module ping directement à partir de la ligne de commande :
ansible all -i hosts -m ping -a "data='Command line test'"
Cette commande pingera tous les hôtes avec la chaîne de données personnalisée "Command line test" et affichera les résultats.
La sortie affichera la réponse de chaque hôte avec votre message personnalisé :
localhost | SUCCESS => {
"changed": false,
"ping": "Command line test"
}
Ces exemples démontrent la polyvalence du module ping d'Ansible pour vérifier la connectivité à vos hôtes gérés de différentes manières.