我已使用https://github.com/coreos/prometheus-operator/tree/master/contrib/kube-prometheus/manifests
中提供的KB在GCP kubernetes环境中配置了Prometheus&Grafana。一切运行正常,我的群集详细信息显示在Grafana中。现在,我想为Prometheus配置警报,并且需要集成到我的闲暇频道。如果有人对此有任何想法,请告诉我。
预先感谢
答案 0 :(得分:1)
使用prometheus-operator,我花了一段时间才弄清楚alertmanager配置作为秘密存储在 https://github.com/coreos/prometheus-operator/blob/master/contrib/kube-prometheus/manifests/alertmanager-secret.yaml
您需要对其进行解码,编辑,编码和应用
回声 “Imdsb2JhbCI6IAogICJyZXNvbHZlX3RpbWVvdXQiOiAiNW0iCiJyZWNlaXZlcnMiOiAKLSAibmFtZSI6ICJudWxsIgoicm91dGUiOiAKICAiZ3JvdXBfYnkiOiAKICAtICJqb2IiCiAgImdyb3VwX2ludGVydmFsIjogIjVtIgogICJncm91cF93YWl0IjogIjMwcyIKICAicmVjZWl2ZXIiOiAibnVsbCIKICAicmVwZWF0X2ludGVydmFsIjogIjEyaCIKICAicm91dGVzIjogCiAgLSAibWF0Y2giOiAKICAgICAgImFsZXJ0bmFtZSI6ICJEZWFkTWFuc1N3aXRjaCIKICAgICJyZWNlaXZlciI6ICJudWxsIg ==” | base64 --decode
答案 1 :(得分:0)
对-是的。您需要做一些事情。
首先下载并运行警报管理器-您可以下载here-可以运行简单的配置。
然后,您需要将警报管理器添加到您的prometheus配置中。
prometheus.yml
中的示例
alerting:
alertmanagers:
alerting:
alertmanagers:
- scheme: http
static_configs:
- targets:
- "localhost:9093"
- scheme: http
static_configs:
- targets:
- "localhost:9093"
假设您已经在运行规则,并且现在要将其集成到松弛中,则在警报管理器配置文件中,您需要添加
global:
slack_api_url: '...'
route:
repeat_interval: 5s
receiver: slack-alert # replace this field
group_by:
- WebsiteStaus
- InstanceDownTime
receivers:
- name: 'slack-alert'
slack_configs:
- channel: '#some-channel'
username: 'prometheus-bot'
send_resolved: true
# title: '{{ range .Alerts }} {{ .Annotations.summary }} {{ end }}'
# text: '<!channel> \n {{ range .Alerts }} {{ .Annotations.description }} \n {{ end }}'
title: '{{ .CommonAnnotations.summary }}'
text: '{{ .CommonAnnotations.description }}'
请注意.CommonAnnotations
与.Annotations
。
CommonAnnotations
指单个警报,而Annotations
指多个警报事件。因此,如果您的警报规则同时触发了两个警报,则需要使用CommonAnnotations
如果您没有设置任何规则,这是一个示例规则,如果网站出现故障,我可以用来提醒我。
groups:
# ============================================================================
# Website alerts
# --------------
# ============================================================================
- name: WebsiteStaus
rules:
# Check if the probe_success was successful
- alert: SiteDown
expr: probe_success == 0
for: 5s
labels:
severity: page
annotations:
summary: A website has gone down!
description: '<{{ $labels.instance }}|{{ $labels.instance }}> failed to probe'
答案 2 :(得分:0)
https://amixr.io/的免费版本对此很有帮助。您可以在Grafana中配置警报,并将其转发到Slack。