0Pricing
Ansible Academy · Leçon

Concevoir le projet : rôles et inventaire

Organisez le dépôt complet de déploiement.

Concevoir le projet : rôles et inventaire est une leçon Ansible Academy gratuite sur CoddyKit. Ceci est la leçon 1 sur 4. Tu peux lire la leçon complète ci-dessous gratuitement — puis la pratiquer en direct dans le navigateur avec un éditeur de code intégré et un tuteur IA 24/7. Elle fait partie du parcours d'apprentissage Ansible Academy, et ta progression se synchronise sur le web et l'application CoddyKit. Le cours Ansible Academy comprend 4 leçons au total.

L’objectif du projet final

Il est temps de déployer une véritable application à plusieurs couches avec un déploiement progressif et sans interruption. Première étape : concevoir la structure du projet. 🚀

Raisonner en rôles

Divisez le système en rôles : un par responsabilité, comme common, web, app, db et loadbalancer. Chacun est réutilisable et testable indépendamment.

La structure de niveau supérieur

Un dépôt bien organisé conserve l’inventaire, group_vars, les rôles et le playbook d’entrée site.yml à la racine, afin que chacun puisse trouver rapidement ce dont il a besoin.

deploy/
  site.yml
  inventory/
  group_vars/
  host_vars/
  roles/

site.yml relie tous les éléments

Votre playbook principal site.yml importe les plays de chaque couche dans l’ordre. C’est la commande unique qui déploie toute la pile.

- import_playbook: plays/loadbalancer.yml
- import_playbook: plays/db.yml
- import_playbook: plays/app.yml
- import_playbook: plays/web.yml

Associer les couches aux groupes

Votre inventaire définit un groupe par couche : lb, db, app et web. Chaque play cible exactement les hôtes dont il est responsable.

[lb]
lb1

[web]
web1
web2

[app]
app1
app2

[db]
db1

group_vars par couche

Stockez les paramètres des couches dans group_vars : ports web, version de l’application et identifiants de la base de données. Les hôtes les héritent automatiquement, sans copier-coller.

group_vars/web.yml:
  nginx_port: 80
  upstream: app:8080

host_vars pour les cas particuliers

Lorsqu’un hôte diffère des autres, placez ses remplacements dans host_vars. La base de données principale peut par exemple contenir des paramètres de réplication absents des autres hôtes.

host_vars/db1.yml:
  postgresql_role: primary

Épingler la version de l’application

Faites de la version publiée une variable, et non une chaîne codée en dur. Un point de modification unique vous permet d’avancer ou de revenir en arrière en quelques secondes.

group_vars/all.yml:
  app_version: "2.4.1"

Séparer les environnements

Conservez des dossiers d’inventaire par environnement afin que la préproduction et la production ne partagent jamais leurs hôtes. Les mêmes rôles, des cibles différentes.

inventory/
  staging/hosts
  production/hosts

Verrouiller vos dépendances

Répertoriez les rôles externes de Galaxy dans requirements.yml afin que chaque membre de l’équipe et chaque exécution de CI installe exactement le même code d’automatisation.

roles:
  - name: geerlingguy.nginx
    version: 3.1.4

Une bonne architecture est payante

Une structure réfléchie transforme un déploiement inquiétant en quelques commandes prévisibles. Une bonne organisation aujourd’hui vous évite des interventions d’urgence plus tard. 🧱

Vérification rapide

Plaçons correctement un élément de configuration.

Récapitulatif

Vous avez conçu le dépôt : des rôles par couche, des groupes d’inventaire, group_vars et host_vars, ainsi qu’un site.yml qui exécute l’ensemble du déploiement. ✅

Questions Fréquemment Posées

La leçon « Concevoir le projet : rôles et inventaire » est-elle gratuite ?

Oui — le texte complet de « Concevoir le projet : rôles et inventaire » est gratuit à lire ici sur le web. Pour la pratiquer de manière interactive (un éditeur de code intégré et un tuteur IA 24/7) et déverrouiller le reste du cours Ansible Academy, passe à CoddyKit PRO. Le cours Ansible Academy comprend 4 leçons au total.

Qu'est-ce que j'apprendrai dans « Concevoir le projet : rôles et inventaire » ?

Organisez le dépôt complet de déploiement. Tu pratiques Ansible Academy avec du code pratique que tu exécutes directement dans le navigateur, et un tuteur IA 24/7 répond à tes questions au fur et à mesure que tu avances dans la leçon.

Dois-je avoir de l'expérience pour commencer Ansible Academy ?

Aucune expérience préalable n'est requise. Ansible Academy sur CoddyKit est structuré pour les débutants jusqu'aux apprenants avancés, donc tu peux commencer ici ou depuis le début et avancer à ton rythme. Ceci est la leçon 1 sur 4.

Combien de temps prend la leçon « Concevoir le projet : rôles et inventaire » ?

La plupart des leçons CoddyKit prennent environ 5–10 minutes. Chacune est courte et interactive, tu progresses régulièrement et tu repiques exactement où tu t'es arrêté sur le web et l'app.

Peux-tu écrire et exécuter du code dans cette leçon Ansible Academy ?

Oui. Chaque leçon Ansible Academy inclut un éditeur de code intégré, tu écris et exécutes du vrai code directement dans ton navigateur et tu reçois des retours IA instantanés — aucune configuration locale requise.

Toutes les leçons de ce cours

  1. Concevoir le projet : rôles et inventaire
  2. Provisionner, renforcer et amorcer les hôtes
  3. Déploiement progressif derrière l’équilibreur de charge
  4. Tests rapides, restauration et notifications
← Retour à Ansible Academy