Sobes.tech
Junior

Navedite načine dodeljivanja promenljivih u Ansible.

sobes.tech АИ

Одговор од АИ

Promenljive u Ansible-u mogu se definisati na više načina:

  • Fajlovi inventara: u fajlovima hosts ili u posebnim fajlovima u direktorijumima group_vars i host_vars.
  • Komandna linija: pomoću zastavice --extra-vars ili -e.
  • Playbook-ovi: u sekcijama vars, vars_files, include_vars.
  • Roli: u direktorijumima vars ili putem parametara prilikom poziva role.
  • Konfiguracioni fajlovi Ansible: u ansible.cfg, ali se ne preporučuje za specifične vrednosti.
  • Dinamički inventar: putem skripti koje generišu inventar i promenljive u toku izvršenja.
  • Vaults: za čuvanje tajnih podataka.

Prioritet dodeljivanja promenljivih u Ansible od niskog ka visokom:

  1. ansible.cfg
  2. Fajlovi inventara (host_vars, group_vars)
  3. Roli (iz default, zatim iz vars)
  4. Sekcija vars u playbook-u
  5. Promenljive prosleđene putem komandne linije

Primer dodeljivanja promenljive u inventaru:

# inventory.ini
[webservers]
web1 ansible_host=192.168.1.100

[webservers:vars]
http_port=80

Primer dodeljivanja promenljive u playbook-u:

# playbook.yml
---
- name: Konfigurisati web server
  hosts: webservers
  vars:
    greeting: "Hello, World!"
  tasks:
    - name: Ispisati pozdrav
      debug:
        msg: "{{ greeting }}"

Primer dodeljivanja promenljive putem komandne linije:

ansible-playbook playbook.yml -e "user=admin"