d2f828a134
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
37 lines
1.2 KiB
YAML
37 lines
1.2 KiB
YAML
---
|
|
- 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"
|
|
common_options: "{{ docker_common_options }}"
|
|
name: "rabbitmq"
|
|
register: rabbitmq_volume
|
|
|
|
- name: Running RabbitMQ bootstrap container
|
|
kolla_docker:
|
|
action: "start_container"
|
|
common_options: "{{ docker_common_options }}"
|
|
detach: False
|
|
environment:
|
|
KOLLA_BOOTSTRAP:
|
|
KOLLA_CONFIG_STRATEGY: "{{ config_strategy }}"
|
|
RABBITMQ_CLUSTER_COOKIE: "{{ rabbitmq_cluster_cookie }}"
|
|
image: "{{ rabbitmq_image_full }}"
|
|
labels:
|
|
BOOTSTRAP:
|
|
name: "rabbitmq_bootstrap"
|
|
restart_policy: "never"
|
|
volumes:
|
|
- "{{ node_config_directory }}/rabbitmq/:{{ container_config_directory }}/:ro"
|
|
- "rabbitmq:/var/lib/rabbitmq/"
|
|
when: rabbitmq_volume | changed
|