reconcile rulegroups to prometheusrules (#5081)

reconcile rulegroups

Signed-off-by: junot <junotxiang@kubesphere.io>
This commit is contained in:
junot
2022-07-22 10:21:57 +08:00
committed by GitHub
parent 111fc69ab1
commit 9bd15b7efc
8 changed files with 845 additions and 0 deletions

View File

@@ -31,6 +31,7 @@ import (
"sigs.k8s.io/kubefed/pkg/controller/util"
"kubesphere.io/kubesphere/cmd/controller-manager/app/options"
"kubesphere.io/kubesphere/pkg/controller/alerting"
"kubesphere.io/kubesphere/pkg/controller/application"
"kubesphere.io/kubesphere/pkg/controller/helm"
"kubesphere.io/kubesphere/pkg/controller/namespace"
@@ -540,6 +541,26 @@ func addAllControllers(mgr manager.Manager, client k8s.Client, informerFactory i
}
}
// controllers for alerting
alertingOptionsEnable := cmOptions.AlertingOptions != nil && (cmOptions.AlertingOptions.PrometheusEndpoint != "" || cmOptions.AlertingOptions.ThanosRulerEndpoint != "")
if alertingOptionsEnable {
// "rulegroup" controller
if cmOptions.IsControllerEnabled("rulegroup") {
rulegroupReconciler := &alerting.RuleGroupReconciler{}
addControllerWithSetup(mgr, "rulegroup", rulegroupReconciler)
}
// "clusterrulegroup" controller
if cmOptions.IsControllerEnabled("clusterrulegroup") {
clusterrulegroupReconciler := &alerting.ClusterRuleGroupReconciler{}
addControllerWithSetup(mgr, "clusterrulegroup", clusterrulegroupReconciler)
}
// "globalrulegroup" controller
if cmOptions.IsControllerEnabled("globalrulegroup") {
globalrulegroupReconciler := &alerting.GlobalRuleGroupReconciler{}
addControllerWithSetup(mgr, "globalrulegroup", globalrulegroupReconciler)
}
}
// log all controllers process result
for _, name := range allControllers {
if cmOptions.IsControllerEnabled(name) {