{{tag>software ansible sysadmin}} ====== 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 : 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 ===== * https://www.ansiblepilot.com/articles/execute-command-on-the-ansible-host-ansible-localhost/