.
Pentru a face acest lucru, vom discuta despre modulul ansible: Gathers facts
💬 Pagina web oficială:
- Afișează faptele de la toate gazdele și stochează-le în /tmp/facts indexate după numele gazdei
- Pentru a lista faptele direct în playbook-ul dvs. trebuie să setați gather_facts: True în playbook-ul dumneavoastră
- obțineți adresa IP a gazdei țintă actuale și folosiți-o în rolul ansible sau în playbook-ul dumneavoastră
- Pentru a seta valoarea în fișierul dumneavoastră vars
- utilizați case
- actualizare: 2018-04-19
Afișează faptele de la toate gazdele și stochează-le în /tmp/facts indexate după numele gazdei
$ ansible all -m setup --tree /tmp/facts
➡ acum verificați fișierul pentru a avea o vedere clară asupra tuturor variabilelor (faptelor) colectate de ansible pentru gazda dvs. ca și binecunoscutul {{ inventory_hostname }}
Pentru a lista faptele direct în playbook-ul dvs. trebuie să setați gather_facts: True în playbook-ul dumneavoastră
gather_facts: True tasks:
- debug: var=hostvars
obțineți adresa IP a gazdei țintă actuale și folosiți-o în rolul ansible sau în playbook-ul dumneavoastră
Puteți folosi în șablonul dumneavoastră.j2{{ ansible_eth0.ipv4.address }}
în același mod în care folosiți {{ inventory_hostname }}
Pentru a seta valoarea în fișierul dumneavoastră vars
---
host_ip: "{{ ansible_enp0s3.ipv4.address }}"
utilizați case
➡ iată un exemplu: https://github.com/orsius/ansible-dtx-cassandra-3
⚠ Acest depozit git nu este menit să fie folosit în producție, este doar pentru a ilustra acest articol de blog.
Sper că va ajuta pe cineva într-o zi ッ
kr,
G.
actualizare: 2018-04-19
De asemenea, puteți folosi „setup” în .yaml file.
e.g. În cazul meu actual de utilizare, am nevoie să obțin default ipv4 addr
:
- name: Gather facts from new server
setup:
filter: ansible_default_ipv4.address
Acum puteți apela {{ ansible_default_ipv4.address }}
în playbook-ul dumneavoastră.
(setup load all the ansible_** variables)
ℹ️ Pentru cei care sunt interesați să învețe mai mult cu ansible recomand acest site: www.educba.com ; am găsit informațiile complete și ușor de citit.