From af0d73ea384aad8bdd306fc2e1c0a29dfa5fb9e3 Mon Sep 17 00:00:00 2001 From: SamYaple Date: Sun, 17 Jan 2016 23:19:34 +0000 Subject: [PATCH] Rename ceph-mon bootstrap container to avoid conflict Ceph-mon bootstrap container shares the same name of `ceph_mon` with real ceph-mon service. When bootstrapping, it will sleep forever for the purpose of distribute rings. Later on, when starting real `ceph_mon` service, kolla_docker module will take bootstrap container as real one because bootstrap container has a super set of env variables and kolla_docker doesn't do strict comparing of env variable items. This change follows the pattern of other bootstrap containers and rename to use `bootstrap_ceph_mon` to avoid conflict. Co-Authored-By: Sam Yaple Change-Id: I0082820900928c42f9cc778ffd705980fea9ad1c Closes-Bug: #1535140 --- ansible/roles/ceph/tasks/generate_cluster.yml | 16 ++++++++++++---- docker/ceph/ceph-mon/extend_start.sh | 3 +-- 2 files changed, 13 insertions(+), 6 deletions(-) diff --git a/ansible/roles/ceph/tasks/generate_cluster.yml b/ansible/roles/ceph/tasks/generate_cluster.yml index 64be33ef81..06797b40f7 100644 --- a/ansible/roles/ceph/tasks/generate_cluster.yml +++ b/ansible/roles/ceph/tasks/generate_cluster.yml @@ -3,21 +3,29 @@ kolla_docker: action: "start_container" common_options: "{{ docker_common_options }}" + detach: False environment: KOLLA_BOOTSTRAP: KOLLA_CONFIG_STRATEGY: "{{ config_strategy }}" MON_IP: "{{ hostvars[inventory_hostname]['ansible_' + api_interface]['ipv4']['address'] }}" image: "{{ ceph_mon_image_full }}" - name: "ceph_mon" + name: "bootstrap_ceph_mon" restart_policy: "never" volumes: - "{{ node_config_directory }}/ceph-mon/:{{ container_config_directory }}/:ro" - "ceph_mon:/var/lib/ceph" - "ceph_mon_config:/etc/ceph" -- name: Waiting for a few settings for cluster to generate keys - command: sleep 3 - changed_when: False +- name: Starting ceph-mon container + kolla_docker: + action: "start_container" + common_options: "{{ docker_common_options }}" + image: "{{ ceph_mon_image_full }}" + name: "ceph_mon" + volumes: + - "{{ node_config_directory }}/ceph-mon/:{{ container_config_directory }}/:ro" + - "ceph_mon:/var/lib/ceph" + - "ceph_mon_config:/etc/ceph" - name: Setting host for cluster files set_fact: diff --git a/docker/ceph/ceph-mon/extend_start.sh b/docker/ceph/ceph-mon/extend_start.sh index 3b8246e373..fd17de511e 100644 --- a/docker/ceph/ceph-mon/extend_start.sh +++ b/docker/ceph/ceph-mon/extend_start.sh @@ -21,8 +21,7 @@ if [[ "${!KOLLA_BOOTSTRAP[@]}" ]]; then ceph-authtool "${KEYRING_MON}" --import-keyring "${KEYRING_RGW}" monmaptool --create --add "$(hostname)" "${MON_IP}" --fsid "${FSID}" "${MONMAP}" - echo "Sleeping until keys are fetched" - /bin/sleep infinity + exit 0 fi # This section runs on every mon that does not have a keyring already.