Outils pour utilisateurs

Outils du site


software:applications:ansible:executer_commandes_sur_node_manager

Ansible : exécuter des commandes localement

On souhaite utiliser ansible pour exécuter des actions sur le node manager lui-même.

Lorsque on invoque la commande ansible sans l'option -i, seule la cible localhost est disponible :

ansible localhost -m ping

La commande ci dessus s'exécute avec l'utilisateur courant. Si l'on souhaite pouvoir exécuter des commandes en tant que root, il faut utiliser l'élévation de privilèges :

ansible localhost -m raw -a 'systemctl restart nftables.service' --become --become-method=su --ask-become-pass

On peut créer un enregistrement dans le fichier inventaire :

inventory.ini
self ansible_host=localhost ansible_connection=local ansible_become_method=su

Puis lancer une action avec élévation de privilèges :

ansible -i inventory self -m ping --become --ask-become-pass

:TODO: Pour éviter d'avoir à taper le mot de passe en mode interactif voir méthodes d'enregistrement des mots de passe (vault).

Références

software/applications/ansible/executer_commandes_sur_node_manager.txt · Dernière modification : 2025/02/19 11:43 de yoann