Sobes.tech
Junior

Uveďte spôsoby priraďovania premenných v Ansible.

sobes.tech AI

Odpoveď od AI

Premenné v Ansible možno definovať viacerými spôsobmi:

  • Súbory inventára: v súboroch hosts alebo v samostatných súboroch v adresároch group_vars a host_vars.
  • Príkazový riadok: pomocou prepínača --extra-vars alebo -e.
  • Playbooky: v sekciách vars, vars_files, include_vars.
  • Roly: v adresároch vars alebo cez parametre pri volaní roly.
  • Konfiguračné súbory Ansible: v ansible.cfg, ale neodporúča sa pre špecifické hodnoty.
  • Dynamický inventár: pomocou skriptov, ktoré generujú inventár a premenné počas behu.
  • Vaults: na uloženie tajných údajov.

Priorita priradenia premenných v Ansible od najnižšej po najvyššiu:

  1. ansible.cfg
  2. Súbory inventára (host_vars, group_vars)
  3. Roly (z default, potom z vars)
  4. Sekcia vars v playbooku
  5. Premenné odovzdané cez príkazový riadok

Príklad priradenia premennej v inventári:

# inventory.ini
[webservers]
web1 ansible_host=192.168.1.100

[webservers:vars]
http_port=80

Príklad priradenia premennej v playbooku:

# playbook.yml
---
- name: Konfigurácia webservera
  hosts: webservers
  vars:
    greeting: "Hello, World!"
  tasks:
    - name: Vytlačiť pozdrav
      debug:
        msg: "{{ greeting }}"

Príklad priradenia premennej cez príkazový riadok:

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