AnsibleDevOpsCloudAWS

Ansible : inventaires dynamiques avec AWS et Azure

13 août 2026 · Sphinx-Digital

Un inventaire Ansible statique qui liste les IPs de vos serveurs fonctionne tant que votre infrastructure ne change pas. Dès que vous opérez dans le cloud — instances auto-scaling, éphémères, qui démarrent et s’arrêtent — il faut des inventaires dynamiques.

Inventaire dynamique AWS EC2

# Installer le plugin
pip install boto3

# Créer aws_ec2.yml à la racine du projet
plugin: amazon.aws.aws_ec2
regions:
  - eu-west-1
filters:
  tag:Environment: production
  instance-state-name: running
keyed_groups:
  - key: tags.Role
    prefix: role
  - key: placement.availability_zone
hostnames:
  - private-ip-address
# Vérifier l'inventaire généré
ansible-inventory -i aws_ec2.yml --list
ansible-inventory -i aws_ec2.yml --graph

# Utiliser dans un playbook
ansible-playbook -i aws_ec2.yml deploy.yml --limit role_webserver

Inventaire dynamique Azure

# azure_rm.yml
plugin: azure.azcollection.azure_rm
include_vm_resource_groups:
  - production-rg
keyed_groups:
  - key: tags.role
  - key: location
auth_source: auto   # utilise les credentials Azure CLI

Combiner plusieurs sources d’inventaire

inventory/
├── aws_ec2.yml      # instances AWS
├── azure_rm.yml     # VMs Azure
└── static.yml       # équipements on-premise fixes
ansible-playbook -i inventory/ site.yml

Ansible fusionne automatiquement les trois sources. Vous ciblez des groupes qui peuvent couvrir des ressources AWS et Azure simultanément.

Cache d’inventaire : éviter les appels API répétés

# ansible.cfg
[inventory]
cache = true
cache_plugin = jsonfile
cache_path = /tmp/ansible_cache
cache_timeout = 300   # 5 minutes

Sans cache, chaque playbook fait des appels API AWS/Azure. Avec cache, le premier appel est mis en cache 5 minutes — utile pour les exécutions fréquentes.

Notre formation Ansible couvre les inventaires dynamiques et les intégrations cloud avec des ateliers sur des environnements réels.