Junior
Nommez les méthodes d'attribution des variables dans Ansible.
sobes.tech IA
Réponse de l'IA
Les variables dans Ansible peuvent être définies de plusieurs façons:
- Fichiers d'inventaire : dans les fichiers
hostsou dans des fichiers séparés dans les répertoiresgroup_varsethost_vars. - Ligne de commande : en utilisant l'option
--extra-varsou-e. - Playbooks : dans les sections
vars,vars_files,include_vars. - Rôles : dans les répertoires
varsou via des paramètres lors de l'appel du rôle. - Fichiers de configuration d'Ansible : dans
ansible.cfg, mais il n'est pas recommandé pour des valeurs spécifiques. - Inventaire dynamique : via des scripts qui génèrent l'inventaire et les variables à la volée.
- Vaults : pour stocker des données secrètes.
Priorité d'attribution des variables dans Ansible du plus bas au plus élevé :
ansible.cfg- Fichiers d'inventaire (
host_vars,group_vars) - Rôles (de
default, puis devars) - Section
varsdans le playbook - Variables passées via la ligne de commande
Exemple d'attribution d'une variable dans l'inventaire :
# inventory.ini
[webservers]
web1 ansible_host=192.168.1.100
[webservers:vars]
http_port=80
Exemple d'attribution d'une variable dans le playbook :
# playbook.yml
---
- name: Configurer le serveur web
hosts: webservers
vars:
greeting: "Hello, World!"
tasks:
- name: Afficher le message de bienvenue
debug:
msg: "{{ greeting }}"
Exemple d'attribution d'une variable via la ligne de commande :
ansible-playbook playbook.yml -e "user=admin"