From d2f828a1346a0dc673c8b40cde84416661b88b86 Mon Sep 17 00:00:00 2001 From: "Michal (inc0) Jastrzebski" Date: Fri, 18 Mar 2016 16:49:09 +0000 Subject: [PATCH] Add check if all the hostnames are resolvable Rabbitmq can't work with IPs, so we need to make sure that all rabbit cluster hosts can resolve each others hostnames. We should also require that in docs. DocImpact Closes-Bug: #1559158 Change-Id: I2418187138988d21da3dc3624e9cdbda891d4894 --- ansible/roles/rabbitmq/tasks/bootstrap.yml | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/ansible/roles/rabbitmq/tasks/bootstrap.yml b/ansible/roles/rabbitmq/tasks/bootstrap.yml index 881d19553d..a7d875b10b 100644 --- a/ansible/roles/rabbitmq/tasks/bootstrap.yml +++ b/ansible/roles/rabbitmq/tasks/bootstrap.yml @@ -1,4 +1,14 @@ --- +- name: Check if all rabbit hostnames are resolvable + command: "getent hosts {{ hostvars[item]['ansible_hostname'] }}" + changed_when: false + register: rabbitmq_hostnames + with_items: groups['rabbitmq'] + +- fail: msg="Hostname has to resolve to IP address of api_interface" + with_items: rabbitmq_hostnames.results + when: "{% set ip=item.stdout.split(' ')[0] %}'{{ hostvars[item['item']]['ansible_' + hostvars[item['item']]['api_interface']]['ipv4']['address'] }}' != '{{ ip }}'" + - name: Creating rabbitmq volume kolla_docker: action: "create_volume"