Junior
Numiți modalitățile de atribuire a variabilelor în Ansible.
sobes.tech AI
Răspuns de la AI
Variabilele în Ansible pot fi definite în mai multe moduri:
- Fișiere de inventar: în fișierele
hostssau în fișiere separate în directoarelegroup_varsșihost_vars. - Linia de comandă: folosind opțiunea
--extra-varssau-e. - Playbook-uri: în secțiunile
vars,vars_files,include_vars. - Roluri: în directoarele
varssau prin parametri la apelarea rolului. - Fișiere de configurare Ansible: în
ansible.cfg, dar nu se recomandă pentru valori specifice. - Inventar dinamic: prin scripturi care generează inventar și variabile în timpul execuției.
- Vaults: pentru stocarea datelor secrete.
Prioritatea atribuirii variabilelor în Ansible de la cea mai mică la cea mai mare:
ansible.cfg- Fișierele de inventar (
host_vars,group_vars) - Roluri (din
default, apoi dinvars) - Secțiunea
varsdin playbook - Variabilele transmise prin linia de comandă
Exemplu de atribuire a unei variabile în inventar:
# inventory.ini
[webservers]
web1 ansible_host=192.168.1.100
[webservers:vars]
http_port=80
Exemplu de atribuire a unei variabile în playbook:
# playbook.yml
---
- name: Configurare server web
hosts: webservers
vars:
greeting: "Hello, World!"
tasks:
- name: Afișează salutul
debug:
msg: "{{ greeting }}"
Exemplu de atribuire a unei variabile prin linia de comandă:
ansible-playbook playbook.yml -e "user=admin"