Répertoires group_vars et host_vars
Organisez les variables par hôte et par groupe.
Répertoires group_vars et host_vars est une leçon DevOps Bootcamp gratuite sur CoddyKit. Ceci est la leçon 2 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 DevOps Bootcamp, et ta progression se synchronise sur le web et l'application CoddyKit. Le cours DevOps Bootcamp comprend 4 leçons au total.
Cessez de coder les variables en dur
Enfouir les valeurs dans les livres de procédures devient vite désordonné. Ansible charge automatiquement les variables depuis les répertoires group_vars et host_vars à la place. 🗂️
Chargement de group_vars
Un fichier de group_vars portant le nom d'un groupe s'applique à chaque hôte de ce groupe, sans qu'aucun include manuel soit nécessaire.
# group_vars/webservers.yml
http_port: 80
worker_processes: 4Le groupe all
Un fichier spécial group_vars/all.yml définit les valeurs par défaut de chaque hôte de votre inventaire, ce qui convient parfaitement aux paramètres communs à toute l'organisation.
# group_vars/all.yml
timezone: UTC
ntp_server: pool.ntp.orgChargement de host_vars
Les fichiers de host_vars portent le nom d'un hôte unique et ne s'appliquent qu'à cette machine, ce qui est idéal pour les remplacements propres à chaque serveur.
# host_vars/web01.example.com.yml
server_id: 1
backup_disk: /dev/sdbLe nom doit correspondre
Le nom du fichier doit correspondre exactement au nom du groupe ou de l'hôte tel qu'il apparaît dans l'inventaire ; sinon, Ansible ignore silencieusement son chargement.
Fichiers ou répertoires
Chaque entrée peut être un seul fichier .yml ou un répertoire contenant plusieurs fichiers. Ansible fusionne tous les fichiers d'un répertoire.
group_vars/
webservers/
network.yml
tuning.ymlL'hôte l'emporte sur le groupe
Lorsqu'une même variable apparaît dans les deux, host_vars l'emporte sur group_vars. La portée la plus précise prend toujours le dessus sur la portée plus large.
Priorité du groupe enfant
Entre groupes, un groupe enfant prend le dessus sur son parent ; les groupes imbriqués vous donnent ainsi des valeurs par défaut organisées en couches prévisibles.
Par rapport à l'inventaire
Ansible recherche d'abord ces répertoires à côté de votre fichier d'inventaire, ainsi qu'à côté du livre de procédures en cours d'exécution.
Référencez-les normalement
Dans les tâches, vous utilisez ces variables exactement comme n'importe quelles autres, avec la syntaxe {{ }}. La source est invisible pour la tâche.
- name: Open the web port
debug:
msg: "Port is {{ http_port }}"Des livres de procédures plus clairs
Une fois les données externalisées, vos exécutions décrivent quoi faire, tandis que group_vars et host_vars contiennent les valeurs propres à chaque environnement. 🎯
Vérification rapide
Une variable est définie à la fois dans group_vars et dans host_vars. Quelle valeur l'emporte ?
Récapitulatif
Vous avez appris que group_vars et host_vars se chargent automatiquement à partir de leur nom, que l'hôte l'emporte sur le groupe et que l'enfant l'emporte sur le parent. Externalisez les données et gardez des exécutions claires. ✅
Questions Fréquemment Posées
La leçon « Répertoires group_vars et host_vars » est-elle gratuite ?
Oui — le texte complet de « Répertoires group_vars et host_vars » 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 DevOps Bootcamp, passe à CoddyKit PRO. Le cours DevOps Bootcamp comprend 4 leçons au total.
Qu'est-ce que j'apprendrai dans « Répertoires group_vars et host_vars » ?
Organisez les variables par hôte et par groupe. Tu pratiques DevOps Bootcamp 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 DevOps Bootcamp ?
Aucune expérience préalable n'est requise. DevOps Bootcamp 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 2 sur 4.
Combien de temps prend la leçon « Répertoires group_vars et host_vars » ?
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 DevOps Bootcamp ?
Oui. Chaque leçon DevOps Bootcamp 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
- Organisation de répertoires recommandée
- Répertoires group_vars et host_vars
- Fractionner les playbooks avec import et include
- Nommage, commentaires et style évolutifs