...
 
Commits (2)
......@@ -3,6 +3,8 @@ Découverte de Ansible
C'est dans le cadre d'une initiation proposée par [Tharyrok](https://github.com/Tharyrok) pour préparer la nouvelle [infrastructure de Neutrinet](https://github.com/Neutrinet/infra).
Il y avait les scripts, la programmation, et maintenant il y a la scriptogrammation d'infrastructure !
Quelle claque ! :P
Ordinateur
......@@ -252,4 +254,43 @@ Le contenu des fichiers listés ci-dessus devraient fonctionner et c'est ce qu'o
.env/bin/ansible-playbook -i hosts playbooks/disks.yml
```
Utiliser un playbook pour changer le fichier hosts
--------------------------------------------------
Dans cette étape il y une nouvelle notion; un **template**, c'est le fichier `hosts.j2`.
```
tree
.
├── ansible.cfg
├── group_vars
│   └── all
├── hosts
├── playbooks
│   ├── disks.yml
│   └── hosts.yml
├── README.md
├── requirements.txt
└── roles
├── disks
│   └── tasks
│   └── main.yml
└── hosts
├── tasks
│   └── main.yml
└── templates
└── hosts.j2
8 directories, 10 files
```
Exécution de la mini recette pour remplacer un fichier (hosts) et rebooter les trois serveurs.
```
.env/bin/ansible-playbook -i hosts playbooks/hosts.yml
```
La suite… suivra o/
Et pour rappel, ma découverte d'Ansible est passée par [ce tutoriel]((https://github.com/leucos/ansible-tuto)).
---
# one time about hosts and hostnames
- hosts: all
roles:
- hosts
---
# remplacer le fichier host
# TODO : construire le fichier template sur base de l'inventaire !
# TODO : reboot sous condition ?
- name: Copie du fichier hosts
template: src=hosts.j2 dest=/etc/hosts owner=root group=root mode="u+rw,g+r,o+r"
- name: Reboot le(s) serveur(s)
shell: reboot
127.0.0.1 localhost
127.0.1.1 {{ ansible_hostname }}
# Sur le LAN
192.168.1.121 hpc01 hpc01.home
192.168.1.122 hpc02 hpc02.home
192.168.1.123 hpc03 hpc03.home
# The following lines are desirable for IPv6 capable hosts
::1 localhost ip6-localhost ip6-loopback
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters