====== Ansible ======
===== Installation =====
Sur debian :
# apt install ansible
===== Utilisation =====
La configuration des hosts se fait dans le fichier ''/etc/ansible/hosts''. On peut faire des groupes différents :
# This is the default ansible 'hosts' file.
#
# It should live in /etc/ansible/hosts
#
# - Comments begin with the '#' character
# - Blank lines are ignored
# - Groups of hosts are delimited by [header] elements
# - You can enter hostnames or ip addresses
# - A hostname/ip can be a member of multiple groups
[home]
192.168.1.151 #server
192.168.1.161 #server2
192.168.1.157 #server3
192.168.1.158 #server4
[work]
192.168.1.154 #machinetest
192.168.1.156 #machinecela
192.168.1.155 #machine
192.168.1.160 #machinececi
Une fois les machines configurées dans le fichier, on peut par exemple //pinguer// tous les serveurs ou seulement ceux qu'un groupe en particulier. Toutes les machines qui sont dans le fichier ''hosts'' :
$ ansible all -m ping
Seulement les machines du groupe ''home'' :
$ ansible home -m ping
===== Playbook =====
Un playbook pour installer htop sur un serveur :
- hosts: nom-du-host
tasks:
- name: Installation de htop avec ansible
apt:
name: "{{ item }}"
update_cache: true
state: latest
with_items:
- 'htop'
become: yes
become_method: sudo
La commande pour "invoquer" le playbook et demander le mot de passe au passage :
$ ansible-playbook --ask-become-pass -l nom-du-host /path/to/ansible-playbooks/htop-install.yml
===== Sources =====
* Site officiel :
* [[https://www.ansible.com/|site officiel]]
* [[https://docs.ansible.com/ansible/latest|documentation]]
* Sur LinuxFr :
* [[https://linuxfr.org/news/presentation-d-ansible-et-version-2-a-venir|presentation d'ansible]]
* [[https://linuxfr.org/users/leryan/journaux/ansible-ton-conteneur|ansible et conteneur LXC]]