一、数据持久化

1.1、prometheus数照持久化

认识Promeheus和Grafana不做数期持久化,那么服务重启以后配置的Dashboard、账号密码、监控数现等信息将会丢失,所以做数现持久化也是很有的。

原始的数据是以emptyDir形式存放在pod里面,生命周期与pod相同,出现问题时,容器重启,监控相关的数据就全部消失了。

vim manifests/prometheus.prometheus.yaml

Prometheus Operator优化_altermanager

Prometheus Operator优化_k8s_02

1.2、grafana数据持久化

先手动创建grafana的持久化PVC:

Prometheus Operator优化_k8s_03

vim manifests/grafana-deployment.yaml


Prometheus Operator优化_监控_04

Prometheus Operator优化_监控_05

为了固定grafana的登录密码,添加环境变量:

二、优化配置

grafana-kubernetes-app 插件

$ kubect1 exec -it $(kubect1 get pod -n monitoring -1 app.kubernetes.io/name=grafana
-o jsonpath='{items[*].metadata.name]') -n monitoring -- sh I
/usr/share/grafana S grafana-cli plugins insta11 grafana-piechart-panel
/usr/share/grafana $ grafana-cli plugins instal1 camptocamp-prometheus-alertmanager-datasource
/usr/share/grafana S grafana-cli plugins instal] grafana-kubernetes-app

grafana dashboard 时区默认为UTC,比北京时间慢了8小时,很不便于日监控查看,这里可以修改

$ cd ./kube-prometheus/manifests
$ sed -i's/UTC/UTC+8/g’ grafana-dashboardDefinitions .yaml
$ kubectl apply -f grafana-dashboardDefinitions .yaml

三、如何修改alert rule?

3.1、通过rule规则修改

## edit
$ kubect1 edit cm prometheus-k8s-rulefiles-0 -n monitoring

3.2、修改配置文件方式

四、AlterManager报警配置

这里给出精简版本,详细可以参考 kube-prometheus/manifests/alertmanager-secret.yaml

Prometheus Operator优化_k8s_06

$ kubect1 apply -f alertmanager -prometheusAlert.yaml