Sobes.tech
Junior

Norādiet veidus, kā piešķirt mainīgos Ansible.

sobes.tech AI

Atbilde no AI

Mainīgie Ansible var tikt definēti vairākos veidos:

  • Inventāra faili: hosts failos vai atsevišķos failos mapēs group_vars un host_vars.
  • Komandrindā: izmantojot karogu --extra-vars vai -e.
  • Playbookos: sadaļās vars, vars_files, include_vars.
  • Lomas: mapēs vars vai ar parametriem, izsaucot lomu.
  • Ansible konfigurācijas failos: ansible.cfg, bet tas nav ieteicams specifiskām vērtībām.
  • Dinamisks inventārs: ar skriptiem, kas ģenerē inventāru un mainīgos darbības laikā.
  • Vaults: slepeno datu glabāšanai.

Prioritāte mainīgo piešķiršanai Ansible no zemākās uz augstāko:

  1. ansible.cfg
  2. Inventāra faili (host_vars, group_vars)
  3. Lomas (no default, pēc tam no vars)
  4. Sekcija vars playbookā
  5. Mainīgie, kas nodoti ar komandrindu

Piemērs mainīgā piešķiršanai inventārā:

# inventory.ini
[webservers]
web1 ansible_host=192.168.1.100

[webservers:vars]
http_port=80

Piemērs mainīgā piešķiršanai playbookā:

# playbook.yml
---
- name: Konfigurēt tīmekļa serveri
  hosts: webservers
  vars:
    greeting: "Hello, World!"
  tasks:
    - name: Izvadīt sveicienu
      debug:
        msg: "{{ greeting }}"

Piemērs mainīgā piešķiršanai ar komandrindu:

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