先说一下我操作的步骤,怎么一步一步踏进深渊的
刚开始一切都非常正常
自己编写了几个高级规则,起初还能告警,代表告警策略应该是正常的
问题是
从监控发现很多指标都已经超过我设置的自定义告警策略的阈值,发现没告警了 但是有一条告警
ThanosRuleConfigReloadFailure
意思更明显
加载配置文件失败
然后开始查自定义策略的问题,明着看也看不出来,必须找出具体哪个策略有问题
看了prometheus日志,也确实有一条自定义告警策略的问题 就是设置流入带宽
“\u003cerror expanding template: error executing template alert_service-receive-bandwidth: template: alert_service-receive-bandwidth:1:190: executing \”__alert_service-receive-bandwidth\" at \u003chumanize1024\u003e: error calling humanize1024: strconv.ParseFloat: parsing \“8.218Gi\”: invalid syntax\u003e"
然后解决了这个问题后,还是没回复
继续看prometheus日志
一堆错误信息,只展示
ts=2023-01-05T09:09:11.879Z caller=manager.go:610 level=warn component=“rule manager” group=node.rules msg=“Evaluating rule failed” rule=“record: ‘node:disk_space_available:’\nexpr: sum by(node, host_ip, role) (max by(device, node, host_ip, role) (node_filesystem_avail_bytes{device!~\”/dev/loop\\\\d+\“,device=~\”/dev/.*\",job=\“node-exporter\”}\n * on(namespace, pod) group_left(node, host_ip, role) node_namespace_pod:kube_pod_info🙂)\n" err="found duplicate series for the match group {namespace=\“kubesphere-monitoring-system\”, pod=\“prometheus-k8s-1\”} on the right hand-side of the operation: [{name=\“node_namespace_pod:kube_pod_info:\”, host_ip=\“10.10.0.44\”, namespace=\“kubesphere-monitoring-system\”, node=\“10.10.0.44\”, pod=\“prometheus-k8s-1\”}, {name=\“node_namespace_pod:kube_pod_info:\”, host_ip=\“10.10.0.26\”, namespace=\“kubesphere-monitoring-system\”, node=\“10.10.0.26\”, pod=\“prometheus-k8s-1\”}];many-to-many matching not allowed: matching labels must be unique on one side"
没明白,查资料无果
看了thanos-ruler-kubesphere的日志
此时pod都运行正常,但发现也有错误日志,提示加载失败的字样

然后怀疑还是加载失败
重启prometheus,未恢复
删除thanos-ruler-kubesphere的pod,这次坏了,pod起不来了
报错的跟上面截图一样
UI页面点击告警或告警策略,报错

有点头疼,请问大神怎么弄?