Commit 6bc57aab authored by Vincent Mazenod's avatar Vincent Mazenod
Browse files

ansible

parent 58274ad6
......@@ -63,12 +63,12 @@
* fichier contenant les ip ou les noms de domaine de toutes les machines à configurer
* **playbook**
* gère la configuration à déployer sur chaque machine
* **task**
* fichier où sont définies les actions réalisées par le playbook
## terminologie
* **task**
* fichier où sont définies les actions réalisées par le playbook
* **module**
* actions plus ou moins complexes, utilisables à partir des **tasks**
* ansible possède de nombreux [<i class="fa fa-book" aria-hidden="true"></i> modules natifs](https://docs.ansible.com/ansible/latest/modules/modules_by_category.html)
......@@ -96,6 +96,10 @@
* pour tous / par groupe / par machine
* déclarer des variables
* pour tous / par groupe / par machine
## inventory
* [<i class="fa fa-book" aria-hidden="true"></i> inventory](https://docs.ansible.com/ansible/latest/user_guide/intro_inventory.html)
```ini
......@@ -145,6 +149,10 @@ gitlab-runner1.criprod.isima.fr | SUCCESS => {
"ping": "pong"
}
```
## ad-hoc command
```
$ ansible criprod -a "/usr/bin/uptime"
......@@ -205,6 +213,9 @@ $ ansible-playbook my-playbook.yml
exécute le playbook sur toutes les machines de l'inventaire
## playbook
```shell
$ ansible-playbook my-playbook.yml --check --diff
```
......@@ -217,6 +228,9 @@ simule les tâches à effectuer sans les effectuer (dry-run)
indique ce qui change
## playbook
```shell
$ ansible-playbook my-playbook.yml -vvv
```
......@@ -246,6 +260,9 @@ $ ansible-playbook my-playbook.yml --skip-tags debug
exécute toutes les tâches du playbook sauf celles ayant un tag `debug`
## playbook
```shell
$ ansible-playbook my-playbook.yml --limit=py.isima.fr
```
......@@ -259,6 +276,9 @@ exécute toutes les tâches du playbook sur py.isima.fr uniquement
* pas de `-` pas de `.`
* pas de numérique pure
## variables
* affectation
* [<i class="fa fa-book" aria-hidden="true"></i> inventaire](https://docs.ansible.com/ansible/latest/user_guide/playbooks_variables.html#defining-variables-in-inventory)
* [<i class="fa fa-book" aria-hidden="true"></i> `group_vars`, `host_vars`, ou `inventaire.ini`](https://docs.ansible.com/ansible/latest/user_guide/intro_inventory.html#hosts-and-groups)
......@@ -360,6 +380,9 @@ permettent de lire les variables à partir de l'entrée standard.
* [<i class="fa fa-book" aria-hidden="true"></i> shell](https://docs.ansible.com/ansible/latest/modules/shell_module.html)
* comme **command** mais au travers d'un shell
## task
```yaml
- shell: somescript.sh >> somelog.txt
args:
......@@ -367,9 +390,6 @@ permettent de lire les variables à partir de l'entrée standard.
creates: somelog.txt
```
## task
[<i class="fa fa-book" aria-hidden="true"></i> register](https://docs.ansible.com/ansible/latest/user_guide/playbooks_variables.html#registering-variables)
```yaml
......@@ -379,6 +399,9 @@ ignore_errors: True
```
[<i class="fa fa-gitlab" aria-hidden="true"></i> register dans une liste](https://gitlab.isima.fr/cri/ansible-playbook-vault/blob/master/tasks/initialize.yml#L17)
## task
[<i class="fa fa-book" aria-hidden="true"></i> loop](https://docs.ansible.com/ansible/latest/user_guide/playbooks_loops.html)
```yaml
......@@ -408,6 +431,9 @@ ignore_errors: True
when: ansible_facts['os_family'] == "RedHat" and ansible_facts['lsb']['major_release']|int >= 6
```
## task
[<i class="fa fa-book" aria-hidden="true"></i> set_fact](https://docs.ansible.com/ansible/latest/modules/set_fact_module.html)
pre_task
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment