aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMichal (inc0) Jastrzebski <inc007@gmail.com>2016-09-15 03:30:28 +0000
committerMichal (inc0) Jastrzebski <inc007@gmail.com>2016-09-15 03:36:03 +0000
commit01d2e2e33162c4ea0e30809d3d6aa21e85df7647 (patch)
tree62b46d512a54f3731b84c752f72b0f1831d6a791
parentad2d6567a6d55ef2e08dff7ebfc0bc9f3f3d6998 (diff)
downloadkolla-01d2e2e33162c4ea0e30809d3d6aa21e85df7647.tar.gz
kolla-01d2e2e33162c4ea0e30809d3d6aa21e85df7647.zip
Generate full /etc/hosts on every node
Since compute nodes needs to resolve each other, and controller nodes needs to resolve each other, let everyone resolve everyone. Change-Id: I1ee117bdb2d71d48a064c4d317b53a1500bdd753 Closes-Bug: #1623669
-rw-r--r--ansible/roles/baremetal/tasks/append_to_etc_hosts.yml17
-rw-r--r--ansible/roles/baremetal/tasks/pre-install.yml33
2 files changed, 9 insertions, 41 deletions
diff --git a/ansible/roles/baremetal/tasks/append_to_etc_hosts.yml b/ansible/roles/baremetal/tasks/append_to_etc_hosts.yml
deleted file mode 100644
index c577d2fe2..000000000
--- a/ansible/roles/baremetal/tasks/append_to_etc_hosts.yml
+++ /dev/null
@@ -1,17 +0,0 @@
----
-- name: get real node hostname
- shell: echo $(hostname)
- register: real_node_hostname
- delegate_to: "{{ control_node }}"
-
-- name: get real node ip
- shell: ip -4 addr show "{{ hostvars[control_node]['api_interface'] }}" | grep -oP "(?<=inet )[\d\.]+(?=/)"
- register: real_node_ip
- delegate_to: "{{ control_node }}"
-
-- name: Insert hosts entries for all kolla-ansible hosts
- lineinfile:
- dest=/etc/hosts
- line="{{ real_node_ip.stdout }} {{ real_node_hostname.stdout.split('.')[0] }} {{ real_node_hostname.stdout }} {{ '#' }}a_kolla_ansible_host"
- insertafter=".*kolla-ansible\ hosts"
- state=present
diff --git a/ansible/roles/baremetal/tasks/pre-install.yml b/ansible/roles/baremetal/tasks/pre-install.yml
index 8a0f48314..43993229a 100644
--- a/ansible/roles/baremetal/tasks/pre-install.yml
+++ b/ansible/roles/baremetal/tasks/pre-install.yml
@@ -20,30 +20,15 @@
become: True
when: customize_etc_hosts | bool == True
-- name: Remove all previous kolla-ansible hosts entries to prevent cruft
- lineinfile:
- dest=/etc/hosts
- regexp="{{ '#' }}a_kolla-ansible_host"
- state=absent
- become: True
- when: customize_etc_hosts | bool == True
-
-- name: Insert a comment after EOF to put our entries under, IF it is not already present
- lineinfile:
- dest=/etc/hosts
- regexp="{{ '#' }}kolla-ansible hosts"
- line="{{ '#' }}kolla-ansible hosts"
- insertafter=EOF
- state=present
- become: True
- when: customize_etc_hosts | bool == True
-
-- include: append_to_etc_hosts.yml
- with_inventory_hostnames: control
- loop_control:
- loop_var: control_node
- become: True
- when: customize_etc_hosts | bool == True
+- name: Generate etc/hosts
+ blockinfile:
+ dest: /etc/hosts
+ marker: "# {mark} ANSIBLE GENERATED HOSTS"
+ block: |
+ {% for host in groups['all'] %}
+ {{ hostvars[host]['ansible_' + hostvars[host]['api_interface']]['ipv4']['address'] }} {{ hostvars[host]['ansible_hostname'] }}
+ {% endfor %}
+ when: customize_etc_hosts | bool
- name: ensure sudo group is present
group: name=sudo state=present