背景:
根本就是这样的环境:TKE 1.20.6搭建Kube-Prometheus(prometheus-oprator,做了一个cronjob:
Kubernetes Cronjob的第一次应用。更新版本时候job产生了异样。然而起初都复原了。可是alertmanager始终报警:
相当惹人烦。该怎么解决呢?
Kubernetes prometheus Job误报解决
1. 暴力形式-删除失败的job!
[root@k8s-master-01 manifests]# kubectl get job -n develop-layaverseNAME COMPLETIONS DURATION AGExxxx-worldmap-job-27468560 0/1 13d 13dxxxx-worldmap-job-27487460 1/1 1s 11mxxxx-worldmap-job-27487465 1/1 1s 6m57sxxxx-worldmap-job-27487470 1/1 1s 117s[root@k8s-master-01 manifests]# kubectl get cronjob -n develop-layaverseNAME SCHEDULE SUSPEND ACTIVE LAST SCHEDULE AGExxxx-worldmap-job */5 * * * * False 0 2m15s 79d
默认应该是显示三个job的。这个失败的还始终在.....依照失常的了解删除调失败的job就能够了吧?当然了,还想打破砂锅问到底的其解决一下的。这个简略形式先列在这里,最初去尝试!
2.批改elert规定
1. prometheus web 确认报警的elerts
登陆prometheus控制台首先确认报警的两个alerts是KubeJobCompletion and KubeJobFailed.失常了解下应该是从这两个elerts动手吧?
elerts配置文件在kubernetes-prometheusRule.yaml中:
[root@k8s-master-01 manifests]# grep -r KubeJobFailed ././kubernetes-prometheusRule.yaml: - alert: KubeJobFailed[root@k8s-master-01 manifests]# grep -r KubeJobCompletion ././kubernetes-prometheusRule.yaml: - alert: KubeJobCompletion
两个elert的相干配置如下:
2. 具体相干的能够借鉴:
- Prometheus: K8s Cronjob alerts
- Monitoring kubernetes jobs
- Prometheus 监控kubernetes Job资源误报的坑
三篇文章认真读一下很类似,最早的是Prometheus: K8s Cronjob alerts,2018年写的。Prometheus 监控kubernetes Job资源误报的坑 是阳明大佬写的。然而就事论事,跟Monitoring kubernetes jobs有很大雷同。因为规定记录,报警规定我还是不太熟悉....没有深入研究具体的其参考阳明大佬的博客吧!https://www.qikqiak.com/post/prometheus-monitor-k8s-job-trap/.......不知为不知毕竟都用了默认的.等相熟一下再去深刻。这里就先删除失败的job了。后续零碎钻研......