]> git.apps.os.sepia.ceph.com Git - ceph-ci.git/commitdiff
mon/OSDMonitor: health warn if require_{jewel,kraken} flags aren't set
authorSage Weil <sage@redhat.com>
Thu, 13 Oct 2016 16:16:40 +0000 (12:16 -0400)
committerSage Weil <sage@redhat.com>
Thu, 13 Oct 2016 16:16:40 +0000 (12:16 -0400)
We want to prompt users to set these flags as soon as their
upgrades complete.

Signed-off-by: Sage Weil <sage@redhat.com>
src/mon/OSDMonitor.cc

index 9b2354cbc477c2a96339e0d577750c52568024ec..822775024f7b8b09cffae13ddab0ccbbe5c4fcae 100644 (file)
@@ -3075,6 +3075,25 @@ void OSDMonitor::get_health(list<pair<health_status_t,string> >& summary,
       }
     }
 
+    // warn about upgrade flags that can be set but are not.
+    if ((osdmap.get_up_osd_features() & CEPH_FEATURE_SERVER_KRAKEN) &&
+       !osdmap.test_flag(CEPH_OSDMAP_REQUIRE_KRAKEN)) {
+      string msg = "all OSDs are running kraken or later but the"
+       " 'require_kraken_osds' osdmap flag is not set";
+      summary.push_back(make_pair(HEALTH_WARN, msg));
+      if (detail) {
+       detail->push_back(make_pair(HEALTH_WARN, msg));
+      }
+    } else if ((osdmap.get_up_osd_features() & CEPH_FEATURE_SERVER_JEWEL) &&
+              !osdmap.test_flag(CEPH_OSDMAP_REQUIRE_JEWEL)) {
+      string msg = "all OSDs are running jewel or later but the"
+       " 'require_jewel_osds' osdmap flag is not set";
+      summary.push_back(make_pair(HEALTH_WARN, msg));
+      if (detail) {
+       detail->push_back(make_pair(HEALTH_WARN, msg));
+      }
+    }
+
     get_pools_health(summary, detail);
   }
 }