# Ansible

**<span class="hover:entity-accent entity-underline inline cursor-pointer align-baseline"><span class="whitespace-normal">Ansible</span></span>** est un outil d’automatisation IT orienté **configuration management**, **déploiement** et **orchestration**.

> tu décris *l’état souhaité* de ton infra… et Ansible s’occupe de le rendre réel.

#### Cas d’usage concrets

- Installer/configurer des serveurs (nginx, users, firewall…)
- Maintenir la cohérence entre environnements (dev/staging/prod)

Alternative à <span class="hover:entity-accent entity-underline inline cursor-pointer align-baseline"><span class="whitespace-normal">Puppet / </span></span>Chef.

##### 3. Orchestration multi-serveurs

Exemple :

1. 1. Provisionner VM
    2. Installer DB
    3. Déployer backend
    4. Configurer load balancer

Tout dans un seul workflow.

##### 4. Infrastructure as Code (IaC)

- Décrire ton infra en YAML
- Versionner dans Git
- Reproductibilité totale

#### Concepts clés

- **Inventory** → liste des serveurs
- **Playbooks** → fichiers YAML (le cœur)
- **Modules** → actions (apt, service, copy…)
- **Roles** → structure modulaire propre