Demande #5838
Utiliser ansible pour exécuter des commandes sur plusieurs machines de l'infra
Status:
En cours de traitement
Priority:
Normale
Assignee:
Category:
Task
Target version:
Start date:
03/30/2022
Due date:
% Done:
0%
Estimated time:
Difficulté:
2 Facile
Description
Utiliser ansible pour exécuter des commandes sur plusieurs machines de l'infra, à la do.sh
History
Updated by Pierre-Louis Bonicoli over 1 year ago
- Status changed from Nouveau to En cours de traitement
Tout semble déjà présent dans le dossier ansible
du dépôt Git admin
:
$ cd ansible $ ansible agir -mcommand -a"hostname -f" agir | CHANGED | rc=0 >> agir.cluster.april.org
J'ai testé le plugin d'inventaire libvirt:
$ cat libvirt.yml plugin: community.libvirt.libvirt uri: 'qemu+ssh://root@virola.april.org/system' keyed_groups: - key: default_value: from_libvirt prefix: hosts
Il peut être utile pour détecter des VM qui ne seraient pas présentes dans l'inventaire ansible (ou des VMs présentes dans l'inventaire ansible mais inexistantes):
$ ansible localhost -i ansible_hosts -i libvirt.yml -mdebug -amsg="{{ groups['hosts_from_libvirt']|symmetric_difference(groups['cluster_vm']) }}" localhost | SUCCESS => { "msg": [ "candidatsfr-clone", "pad-test", "spip", "drupal-test" ] }
Si le service
QEMU Guest Agent
était activé au sein des VMs, le plugin d'inventaire libvirt pourrait être utilisé pour se connecter aux VMs en passant par libvirt plutôt que par SSH:ansible agir -i libvirt.yml -mcommand -auptime
Updated by Pierre-Louis Bonicoli over 1 year ago
TODO:
- documenter l'utilisation d'ansible pour l'exécution d'une commande sans playbook
- ajouter un playbook pour mettre à jour les machines (attention à needrestart qui bloque en mode interactif)
- documenter l'utilisation de ce playbook
Updated by Pierre-Louis Bonicoli over 1 year ago
J'ai créé dans le wiki admin une entrée concernant Ansible et son utilisation.
b7d4fa45304b76a97cbc9308f7b1dcb66019c266 ajoute un playbook permettant de mettre à jour (apt) les machines.
Updated by Quentin Gibeaux over 1 year ago
- Target version changed from Été 2022 to Septembre 2022
Updated by Quentin Gibeaux about 1 year ago
- Target version changed from Septembre 2022 to Octobre 2022
Updated by Quentin Gibeaux about 1 year ago
- Target version changed from Octobre 2022 to Novembre 2022
Updated by Quentin Gibeaux about 1 year ago
- Target version changed from Novembre 2022 to Décembre 2022
Updated by Quentin Gibeaux 11 months ago
- Target version changed from Décembre 2022 to Janvier 2023
Updated by Quentin Gibeaux 10 months ago
- Target version changed from Janvier 2023 to Février 2023
Updated by Quentin Gibeaux 2 months ago
- Target version changed from Septembre 2023 to Octobre 2023
Updated by Quentin Gibeaux about 1 month ago
- Target version changed from Octobre 2023 to Novembre 2023
Updated by Quentin Gibeaux 3 days ago
- Target version changed from Novembre 2023 to Décembre 2023