From ef4d0a39f24ed5794aaed6e019ae448a0441d69a Mon Sep 17 00:00:00 2001 From: Ivan Font Date: Mon, 22 Aug 2016 10:42:27 -0700 Subject: [PATCH] Restrict fact gathering to mons and update ceph.conf - Gather facts only for mons before processing ceph-mon role serially in containerized playbook sample - Updated ceph.conf in order to generate a valid ceph.conf Signed-off-by: Ivan Font --- roles/ceph-common/templates/ceph.conf.j2 | 16 ++++++++-------- site-docker.yml.sample | 3 ++- 2 files changed, 10 insertions(+), 9 deletions(-) diff --git a/roles/ceph-common/templates/ceph.conf.j2 b/roles/ceph-common/templates/ceph.conf.j2 index f70c924d1..f04f6d441 100644 --- a/roles/ceph-common/templates/ceph.conf.j2 +++ b/roles/ceph-common/templates/ceph.conf.j2 @@ -32,19 +32,19 @@ mon host = {% for host in groups[mon_group_name] %}{{ hostvars[host]['ansible_' {% if mon_containerized_deployment %} fsid = {{ fsid }} {% if groups[mon_group_name] is defined %} -{% for host in groups[mon_group_name] %} +mon host = {% for host in groups[mon_group_name] -%} {% if mon_containerized_deployment %} {% set interface = ["ansible_",ceph_mon_docker_interface]|join %} -mon_host = {{ hostvars[host][interface]['ipv4']['address'] }} -{% if not loop.last %},{% endif %} +{{ hostvars[host][interface]['ipv4']['address'] }} +{%- if not loop.last %},{% endif %} {% elif hostvars[host]['monitor_address'] is defined %} -mon_host = {{ hostvars[host]['monitor_address'] }} -{% if not loop.last %},{% endif %} +{{ hostvars[host]['monitor_address'] }} +{%- if not loop.last %},{% endif %} {% elif monitor_address != "0.0.0.0" %} -mon_host = monitor_address -{% if not loop.last %},{% endif %} +monitor_address +{%- if not loop.last %},{% endif %} {% endif %} -{% endfor %} +{%- endfor %} {% endif %} {% endif %} diff --git a/site-docker.yml.sample b/site-docker.yml.sample index 9eefc5763..68e4ff91c 100644 --- a/site-docker.yml.sample +++ b/site-docker.yml.sample @@ -1,11 +1,12 @@ --- # Defines deployment design and assigns role to server groups -- hosts: all +- hosts: mons # gather mon facts first before we process ceph-mon serially tasks: [] - hosts: mons become: True + gather_facts: false roles: - ceph-mon serial: 1 # MUST be '1' WHEN DEPLOYING MONITORS ON DOCKER CONTAINERS