]> git.apps.os.sepia.ceph.com Git - ceph.git/commitdiff
mon/OSDMonitor: health warn if require_{jewel,kraken} flags aren't set
authorSage Weil <sage@redhat.com>
Fri, 30 Sep 2016 22:07:53 +0000 (18:07 -0400)
committerSage Weil <sage@redhat.com>
Tue, 18 Oct 2016 20:40:09 +0000 (16:40 -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 4fba1f5679c58b21dbe70f0e5fc230ad88a5c385..a661b291f2ee9e16eaf60456a7aa97558e2367df 100644 (file)
@@ -3094,6 +3094,26 @@ 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_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));
+      }
+    }
+    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));
+      }
+    }
+
     get_pools_health(summary, detail);
   }
 }