和 prometheus_monitor_apps
类似,通过配置 prometheus_alerting_rules
来实现告警通知,不过 kube-prometheus-stack
提供了 values
输入方法来简化配置,本文记录实践经验。
kube-prometheus-stack
的 values.yaml
中可以找到如下 PrometheusRules
相关入口:
kube-prometheus-stack_alert_config/values_default.yaml
我们可以在入口上添加自定义的监控配置 configmap
: 如果采用独立配置,则注释掉 additionalPrometheusRulesMap: {}
;如果采用合并配置,则直接在 additionalPrometheusRulesMap: {}
行下添加配置(注意要去掉 {}
)
- 配置
rules_DiskUsage.yaml
:
kube-prometheus-stack_alert_config/rules_disk_alert.yaml
上述监控目录 /
使用量,对于不同目录还要不断添加,感觉有点繁琐。改进为以下监控方式:
kube-prometheus-stack_alert_config/rules_disk_space_alert.yaml
这样就可以监视所有挂载目录,出现超过 80% 使用率报警
- 执行
update_prometheus_config_k8s
将上述告警配置添加:
kube-prometheus-stack_alert_config/helm_upgrade_add_prometheus_rules
Note
采用独立的 rules_disk_alert.yaml
需要注释掉对应 additionalPrometheusRulesMap: {}
,所以我感觉还是直接编辑 values.yaml
更为方便(只需要一个配置文件)。当然,为了能够将不同的配置归类,采用独立的配置文件也未尝不可。主要看你的运维习惯。