Prometheus告警规则的配置主要包括以下几个步骤:
(图片来源网络,侵删)
1、安装并配置Alertmanager
2、创建告警规则文件
3、在Prometheus配置文件中引用告警规则文件
4、重启Prometheus和Alertmanager服务
下面是详细的配置过程:
安装并配置Alertmanager
1、下载Alertmanager的二进制文件:
wget https://github.com/prometheus/alertmanager/releases/download/v0.21.0/alertmanager0.21.0.linuxamd64.tar.gz
2、解压下载的文件:
tar xzf alertmanager0.21.0.linuxamd64.tar.gz
3、进入解压后的目录:
cd alertmanager0.21.0.linuxamd64
4、创建配置文件alertmanager.yml
,并编辑内容:
global: resolve_timeout: 5m route: group_by: ['alertname', 'cluster', 'service'] group_wait: 30s group_interval: 5m repeat_interval: 3h receiver: 'email' receivers: name: 'email' email_configs: to: 'youremail@example.com' from: 'alertmanager@example.com' smarthost: 'smtp.example.com:587' auth_username: 'youremail@example.com' auth_password: 'youremailpassword' templates: '/etc/alertmanager/template/*.tmpl'
5、创建模板文件templates/mytemplate.tmpl
,并编辑内容:
{{ define "mytemplate" }} ALERT {{ $labels.alertname }} {{ $labels.cluster }} {{ $labels.service }} {{ $labels.instance }} is {{ $value }}! {{ end }}
创建告警规则文件myrules.yml
,并编辑内容
groups: name: example_rules rules: alert: HighRequestLatency expr: job:request_latency_seconds:mean5m{job="myjob"} > 0.5 for: 10m labels: severity: page annotations: summary: "High request latency" description: "Request latency is more than 0.5 seconds."
在Prometheus配置文件中引用告警规则文件myrules.yml
rule_files: "myrules.yml"
重启Prometheus和Alertmanager服务
killall prometheus && killall alertmanager && nohup ./alertmanager config.file=alertmanager.yml & nohup ./prometheus config.file=prometheus.yml & sleep infinity & wait $(pgrep f prometheus) & wait $(pgrep f alertmanager) & tail f /dev/null & wait $(pgrep f alertmanager) & wait $(pgrep f prometheus) & wait $(pgrep f alertmanager) & wait $(pgrep f prometheus) & wait $(pgrep f alertmanager) & wait $(pgrep f prometheus) & wait $(pgrep f alertmanager) & wait $(pgrep f prometheus) & wait $(pgrep f alertmanager) & wait $(pgrep f prometheus) & wait $(pgrep f alertmanager) & wait $(pgrep f prometheus) & wait $(pgrep f alertmanager) & wait $(pgrep f prometheus) & wait $(pgrep f alertmanager) & wait $(pgrep f prometheus) & wait $(pgrep f alertmanager) & wait $(pgrep f prometheus) & wait $(pgrep f alertmanager) & wait $(pgrep f prometheus) & wait $(pgrep f alertmanager) & wait $(pgrep f prometheus) & wait $(pgrep f alertmanager) & wait $(pgrep f prometheus) & wait $(pgrep f alertmanager) & wait $(pgrep f prometheus) & wait $(pgrep f alertmanager) & wait $(pgrep f prometheus) & wait $(pgrep f alertmanager) & wait $(pgrep f prometheus) & wait $(pgrep f alertmanager) & wait $(pgrep f prometheus) & wait $(pgrep f alertmanager) & wait $(pgrep f prometheus) & wait $(pgrep f alertmanager) & wait $(pgrep f prometheus) & wait $(pgrep f alertmanager) & wait $(pgrep f prometheus) & wait $(pgrep f alertmanager) & wait $(pgrep f prometheus) & wait $(pgrep f alertmanager) & wait $(pgrep f prometheus) & wait $(pgrep f alertmanager) & wait $(pgrep f prometheus) & wait $(pgrep f alertmanager) & wait $(pgrep f prometheus) & wait $(pgrep f alertmanager) & wait $(pgrep f prometheus) & wait $(pgrep f alertmanager) & wait $(pgrep f prometheus) & wait $(pgrep f alertmanager) & wait $(pgrep f prometheus) & wait $(pgrep f alertmanager) & wait $(pgrep f prometheus) & wait $(pgrep f alertmanager) & wait $(pgrep f prometheus) & wait $(pgrep f alertmanager) & wait $(pgrep f prometheus) & wait $(pgrep f alertmanager) & wait $(pgrep f prometheus) & wait $(pgrep f alertmanager) & wait $(pgrep f prometheus) & wait $(pgrep f alertmanager) & wait $(pgrep f prometheus) & wait $(pgrep f alertmanager) & wait $(pgrep
原创文章,作者:未希,如若转载,请注明出处:https://www.kdun.com/ask/612786.html
本网站发布或转载的文章及图片均来自网络,其原创性以及文中表达的观点和判断不代表本网站。如有问题,请联系客服处理。
发表回复