From 3890eb169aae42b20fbdde620e13970ccc105353 Mon Sep 17 00:00:00 2001 From: Giulio Fidente Date: Mon, 24 Apr 2017 13:44:42 +0200 Subject: [PATCH] [NEWTON-ONLY] Fix Ceph upgrade from Hammer to Jewel >= 10.2.4 Newer versions of Ceph Jewel (>= 10.2.4) require setting a flag after the last OSD has been upgraded from Hammer. This change adds a conditional in the upgrade scripts to set the needed flag when the warning message appears in ceph health output. Change-Id: I449588609b2b6d7252401499b229cf6490ce90bf Closes-Bug: #1685777 --- extraconfig/tasks/major_upgrade_ceph_storage.sh | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/extraconfig/tasks/major_upgrade_ceph_storage.sh b/extraconfig/tasks/major_upgrade_ceph_storage.sh index a745e723f6..c327f2a6de 100644 --- a/extraconfig/tasks/major_upgrade_ceph_storage.sh +++ b/extraconfig/tasks/major_upgrade_ceph_storage.sh @@ -100,6 +100,12 @@ ceph osd unset noout ceph osd unset norebalance ceph osd unset nodeep-scrub ceph osd unset noscrub + +# From Ceph 10.2.4 we need to set the require_jewel_osds flag when the last OSD +# has been upgraded, see http://ceph.com/geen-categorie/v10-2-4-jewel-released/ +if ceph health | grep "all OSDs are running jewel or later"; then + ceph osd set require_jewel_osds +fi ENDOFCAT # ensure the permissions are OK