Sitä varten, keskustelemme ansible-moduulista: Gathers facts
💬 Virallinen verkkosivu:
- Näytä faktat kaikilta isänniltä ja tallenna ne osoitteeseen /tmp/facts indeksoituna isännän nimen mukaan
- Listaillaksesi faktat suoraan pelikirjaasi sinun täytyy asettaa gather_facts: True playbookissasi
- hae nykyisen kohde-isännän IP-osoite ja käytä sitä ansible-roolissasi tai playbookissasi
- Asettaaksesi arvon vars-tiedostossasi
- käytä case:a
- päivitetty: 2018-04-19
Näytä faktat kaikilta isänniltä ja tallenna ne osoitteeseen /tmp/facts indeksoituna isännän nimen mukaan
$ ansible all -m setup --tree /tmp/facts
➡ Tarkista nyt tiedosto saadaksesi selkeän näkymän kaikista muuttujista (faktoista), jotka ansible on kerännyt isännille kuten hyvin tiedossa oleva {{ inventory_hostname }}
Listaillaksesi faktat suoraan pelikirjaasi sinun täytyy asettaa gather_facts: True playbookissasi
gather_facts: True tasks:
- debug: var=hostvars
hae nykyisen kohde-isännän IP-osoite ja käytä sitä ansible-roolissasi tai playbookissasi
Voit käyttää template.j2{{ ansible_eth0.ipv4.address }}
:ssäsi samalla tavalla kuin käytät {{ inventory_hostname }}
Asettaaksesi arvon vars-tiedostossasi
---
host_ip: "{{ ansible_enp0s3.ipv4.address }}"
käytä case:a
➡ tässä esimerkki: https://github.com/orsius/ansible-dtx-cassandra-3
⚠ Tätä git-tietovarastoa ei ole tarkoitus käyttää tuotannossa, se on vain havainnollistamassa tätä blogikirjoitusta.
Toivottavasti se auttaa jotakuta jonain päivänä ッ
kr,
G.
päivitetty: 2018-04-19
Voit myös käyttää .yaml-tiedostossa.
e.g. Nykyisessä käyttötapauksessani minun täytyy saada default ipv4 addr
:
- name: Gather facts from new server
setup:
filter: ansible_default_ipv4.address
Voit nyt kutsua {{ ansible_default_ipv4.address }}
playbookissasi.
(setup lataa kaikki ansible_**-muuttujat)
ℹ️ Niille, jotka ovat kiinnostuneita oppimaan lisää ansibesta, suosittelen tätä sivustoa: www.educba.com ; Löysin tiedot täydellisinä ja helppolukuisina.