Перейти к содержанию

Генерация /etc/hosts с помощью ansible

    - name: Generate /etc/hosts file
        template:
          src: templates/hosts.j2
          dest: /etc/hosts
        backup: yes
        tags: fist

Шаблон:

# templates/hosts.j2
# {{ ansible_managed }}
127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
::1         localhost localhost.localdomain localhost6 localhost6.localdomain6

# Network nodes as generated through Ansible.
{% for host in play_hosts %}
{% if 'ansible_eth0' in hostvars[host] %}
{{ hostvars[host]['ansible_eth0']['ipv4']['address'] }}  {{ host }}
{% endif %}
{% endfor %}

Инвентори-файл:

[srv-dev]
domain_host1 ansible_host=10.10.1.2
domain_host2 ansible_host=10.10.2.2
domain_host3 ansible_host=10.10.2.3

[srv-dev:vars]
ansible_python_interpreter=/usr/bin/python2

ЗЫ: не забываем включить gather_facts: yes

Опубликовано в рубрикеOrchestration

Оставьте первый коментарий

Добавить комментарий

Ваш адрес email не будет опубликован.