我创建了警报规则文件.yml并将其复制到prometheus contianer的“/”下,然后将其添加到values.yml文件中,但在UI中看不到规则
prometheus.yml:
rule_files:
- /etc/config/recording_rules.yml
- /etc/config/alerting_rules.yml
- /custom_alerting_rules.yml
## Below two files are DEPRECATED will be removed from this default values file
- /etc/config/rules
- /etc/config/alerts
alerting:
alertmanagers:
- static_configs:
- targets: ['alertmanager:9093'] here i tried the @IP of alert manager service
字符串
这是警报文件
groups:
- name: my-custom-alerts
rules:
- alert: HighPodCount
expr: count(kube_pod_info{pod=~"consumer.*"}) > 2
for: 5m
labels:
severity: critical
annotations:
summary: High pod count
description: The number of pods is above the threshold.
型
k get svc显示
prometheus-alertmanager ClusterIP 10.10x.21x.x8 <none> 9093/TCP 68m
型
我做错了什么?
2条答案
按热度按时间kgqe7b3p1#
从Prometheus服务器的Angular 来看,其配置和规则文件不会自动重新加载。您需要手动调用Reload管理API。
有三种方法可用于此目的:
1.如果你在普罗米修斯战斗机里:
字符串
1.如果你在同一个命名空间的另一个pod容器中:
型
1.如果你不在K8s集群(即运行kubectl命令的地方):
型
4smxwvx52#
如果你使用prometheus operator,你也可以使用
PrometheusRule
crd而不是文件:字符串
然后:
型
这将使操作员在prometheus的配置中安装警报,而无需您做任何其他事情。