From dad10e8f3f67f1e0c6a14ef3e0b1f51f90d9d962 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?S=C3=A9bastien=20Han?= Date: Mon, 13 Aug 2018 15:59:25 +0200 Subject: [PATCH] rolling_update: register container osd units MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Before running the upgrade, let's call systemd to collect unit names instead of relaying on the device list. This is more accurate and fix the osd_auto_discovery scenario too. Closes: https://bugzilla.redhat.com/show_bug.cgi?id=1613626 Signed-off-by: Sébastien Han --- infrastructure-playbooks/rolling_update.yml | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/infrastructure-playbooks/rolling_update.yml b/infrastructure-playbooks/rolling_update.yml index 1991ab99f..92a0e63a4 100644 --- a/infrastructure-playbooks/rolling_update.yml +++ b/infrastructure-playbooks/rolling_update.yml @@ -334,12 +334,18 @@ become: True pre_tasks: - - name: get osd numbers + - name: get osd numbers - non container shell: "if [ -d /var/lib/ceph/osd ] ; then ls /var/lib/ceph/osd | sed 's/.*-//' ; fi" register: osd_ids changed_when: false when: not containerized_deployment + - name: get osd unit names - container + shell: systemctl list-units | grep -E "loaded * active" | grep -oE "ceph-osd@([0-9]{1,}|[a-z]+).service" + register: osd_names + changed_when: false + when: containerized_deployment + - name: stop ceph osd systemd: name: ceph-osd@{{ item }} @@ -374,11 +380,11 @@ - name: restart containerized ceph osd systemd: - name: ceph-osd@{{ item | basename }} + name: "{{ item }}" state: restarted enabled: yes daemon_reload: yes - with_items: "{{ devices }}" + with_items: "{{ osd_names.stdout_lines }}" when: - containerized_deployment