Care este diferența dintre inventory_hostname și ansible_hostname (Programare, Ansible)

Babken Vardanyan a intrebat.

Tot ce am putut găsi a fost acest lucru din din documentație:

În plus, inventory_hostname este numele gazdei, așa cum este configurat în fișierul gazdă de inventar Ansible. Acest lucru poate fi util pentru situațiile în care nu doriți să vă bazați pe numele de gazdă descoperit ansible_hostname sau pentru alte motive misterioase. Dacă aveți un FQDN lung, inventory_hostname_short conține, de asemenea, partea de până la primul punct, fără restul domeniului.

Există vreo diferență reală între inventory_hostname și ansible_hostname variabile în Ansible? Dacă da, atunci care dintre ele ar trebui să le folosesc și când?

1 răspunsuri
helloV
  • inventory_hostname – După cum este configurat în fișierul de inventar ansible (de ex: /etc/ansible/hosts). Poate fi o adresă IP sau un nume care poate fi rezolvat prin DNS
  • ansible_hostname – Așa cum a fost descoperit de ansible. Ansible ssh‘s în gazdă și adună câteva date. Ca parte a faptelor, descoperă, de asemenea, numele său de gazdă care este stocat în ansible_hostname.

Pe care dintre ele ar trebui să o utilizați?

hostvars este un dicționar care are o intrare pentru fiecare gazdă din inventar. Dacă doriți să accesați informațiile despre gazdă, trebuie să utilizați inventory_hostname. Dacă doriți să utilizați/imprimați numele gazdei așa cum este configurat pe gazdă, trebuie să utilizați ansible_hostname deoarece, cel mai probabil, IP-ul va fi utilizat în fișierul de inventariere.

Important: Pentru a utiliza ansible_hostname, , trebuie să adunați date:

gather_facts: true

În caz contrar, veți primi un mesaj care vă va spune că ansible_hostname nu este definit.

"ansible_hostname": "VARIABLE IS NOT DEFINED!"

Încercați acest lucru cu o singură gazdă pentru a înțelege diferențele

  tasks:
    - debug: var=inventory_hostname
    - debug: var=ansible_hostname
    - debug: var=hostvars

Comentarii

    20

  • inventory_hostname este un nume arbitrar pe care l-ați setat în fișierul de inventar. Nu este necesar să poată fi rezolvat prin DNS. –  > Por hedayat.
  • Dar, în acest caz, trebuie să setați ansible_host corect? –  > Por pierdut.

Tags: