Add StarlingX specific restart command for Ceph monitors

Since we don't use systemd to manage Ceph and we have pmon monitoring we
have to make sure that:
1. Restarting is properly handled as "systemctl restart" will return
   error and manifest will fail;
2. Pmon does not check ceph-mon status during restart. Otherwise we risk
   getting into a race condition between the puppet restart and pmon
   detecting that ceph is down and trying a restart.

Both are resolved when using /etc/init.d/ceph-init-wrapper restart.

Change-Id: Ie316bb611a006bbbc92ac22c52c3973cc9f15109
Co-Authored-By: Ovidiu Poncea <ovidiu.poncea@windriver.com>
Implements: containerization-2002844-CEPH-persistent-storage-backend-for-Kubernetes
Story: 2002844
Task: 28723
Signed-off-by: Ovidiu Poncea <Ovidiu.Poncea@windriver.com>
This commit is contained in:
Ovidiu Poncea 2018-12-20 09:10:00 -05:00
parent 5d7ebb734c
commit 6db8e31b21
4 changed files with 69 additions and 1 deletions

View File

@ -1 +1 @@
TIS_PATCH_VER=6 TIS_PATCH_VER=7

View File

@ -0,0 +1,32 @@
From b590f06d6f6ce2bd71d4d0389b6d51a78e225c19 Mon Sep 17 00:00:00 2001
From: Ovidiu Poncea <ovidiu.poncea@windriver.com>
Date: Thu, 20 Dec 2018 08:07:15 -0500
Subject: [PATCH] Add-StarlingX-specific-restart-command-for-Ceph-moni patch
---
SPECS/puppet-ceph.spec | 2 ++
1 file changed, 2 insertions(+)
diff --git a/SPECS/puppet-ceph.spec b/SPECS/puppet-ceph.spec
index 0b728a1..e5cc64c 100644
--- a/SPECS/puppet-ceph.spec
+++ b/SPECS/puppet-ceph.spec
@@ -14,6 +14,7 @@ Patch0003: 0003-Ceph-Jewel-rebase.patch
Patch0004: 0004-US92424-Add-OSD-support-for-persistent-naming.patch
Patch0005: 0005-Remove-puppetlabs-apt-as-ceph-requirement.patch
Patch0006: 0006-ceph-disk-prepare-invalid-data-disk-value.patch
+Patch0007: 0007-Add-StarlingX-specific-restart-command-for-Ceph-moni.patch
BuildArch: noarch
@@ -35,6 +36,7 @@ Community Developed Ceph Module
%patch0004 -p1
%patch0005 -p1
%patch0006 -p1
+%patch0007 -p1
find . -type f -name ".*" -exec rm {} +
find . -size 0 -exec rm {} +
--
1.8.3.1

View File

@ -4,3 +4,4 @@
0004-Add-OSD-support-for-persistent-naming.patch 0004-Add-OSD-support-for-persistent-naming.patch
0005-meta-patch-for-patch5.patch 0005-meta-patch-for-patch5.patch
0006-add-ceph-disk-prepare-invalid-data-disk-value-patch.patch 0006-add-ceph-disk-prepare-invalid-data-disk-value-patch.patch
0007-Add-StarlingX-specific-restart-command-for-Ceph-moni.patch

View File

@ -0,0 +1,35 @@
From a364f37cacab78cdaad5ebd23ab24cf400a3fa40 Mon Sep 17 00:00:00 2001
From: Ovidiu Poncea <ovidiu.poncea@windriver.com>
Date: Thu, 20 Dec 2018 07:18:55 -0500
Subject: [PATCH] Add StarlingX specific restart command for Ceph monitors
Since we don't use systemd to manage Ceph and we have pmon monitoring we
have to make sure that:
1. Restarting is properly handled as "systemctl restart" will return error
and manifest will fail;
2. Pmon does not check ceph-mon status during restart. Otherwise we risk
getting into a race condition between the puppet restart and pmon
detecting that ceph is down and trying a restart.
Both are resolved when using /etc/init.d/ceph-init-wrapper restart
Signed-off-by: Ovidiu Poncea <Ovidiu.Poncea@windriver.com>
---
manifests/mon.pp | 1 +
1 file changed, 1 insertion(+)
diff --git a/manifests/mon.pp b/manifests/mon.pp
index 17cb925..62d5059 100644
--- a/manifests/mon.pp
+++ b/manifests/mon.pp
@@ -106,6 +106,7 @@ define ceph::mon (
start => "service ceph start mon.${id}",
stop => "service ceph stop mon.${id}",
status => "service ceph status mon.${id}",
+ restart => "/etc/init.d/ceph-init-wrapper restart mon.${id}",
enable => $mon_enable,
}
}
--
1.8.3.1