首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >警报管理器不加载webhook_config

警报管理器不加载webhook_config
EN

Stack Overflow用户
提问于 2021-06-30 12:50:05
回答 1查看 555关注 0票数 0

我希望为警报管理器创建新的接收器和路由,以便将心跳发送到OpsGenie。

我试图通过定义opsgenie_config来实现这一点,但是我无法在OpsGenie中向心跳发送pings (我能够用相同的api键向OpsGenie发送警报)。

我发现的另一种方法是使用webhook_config (如#444中所建议的),我的清单如下所示:

代码语言:javascript
复制
apiVersion: monitoring.coreos.com/v1alpha1
kind: AlertmanagerConfig
metadata:
  name: opsgenie-webhook
  labels:
    managedBy: team-sre
spec:
  receivers:
  - name: heartbeat
    webhookConfigs:
    - httpConfig:
        basicAuth:
          password:
            name: opsgenie-api-key
            key: address
      url: https://api.opsgenie.com/v2/heartbeats/sre-test-cluster/ping
  route:
    groupWait: 0s
    repeatInterval: 1m
    groupInterval: 1m
    matchers:
    - name: alertname
      value: Watchdog
    receiver: heartbeat

当我应用清单时,所描述的接收方和路由不会加载到Alertmanager。当我检查日志时,没有记录错误,但也没有消息表明sidecar试图加载新的alertmanagerconfig。

有没有人经历过同样的问题,并知道如何解决?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-09-28 09:24:03

我在github第3970期上找到了要接受basicAuth的解决方案,必须同时提供用户名和密码。不错的方法是将用户名设置为: base64格式(Og==)。舱单的定义如下:

代码语言:javascript
复制
apiVersion: monitoring.coreos.com/v1alpha1
kind: AlertmanagerConfig
metadata:
  labels:
    managedBy: team-sre
  name: alertmanager-opsgenie-config
  namespace: monitoring
spec:
  receivers:
  - name: deadmansswitch
    webhookConfigs:
      # url link to the specific heartbeat, replace test with heartbeat name
      - url: 'https://api.opsgenie.com/v2/heartbeats/<hearbeat-name>/ping'
        sendResolved: true
        httpConfig:
          basicAuth:
            # reference to secret containing login credentals
            password:
              key: apiKey
              name: opsgenie
            username:
              key: username
              name: opsgenie
  route:
    groupBy:
    - job
    groupInterval: 10s
    groupWait: 0s
    repeatInterval: 10s
    matchers:
      - name: alertname
        value: Watchdog
      - name: namespace
        value: monitoring
    receiver: deadmansswitch

---

apiVersion: v1
kind: Secret
metadata:
  namespace: monitoring
  name: opsgenie
type: Opaque
data:
  # apiKey in encoded in base64
  apiKey: YOUR_PASSWORD
  # ':' in base 64 - fix suggested in https://github.com/prometheus-operator/prometheus-operator/issues/3970#issuecomment-888893008
  username: Og==

在应用了清单,并且符合标准的警报定义被触发后,Opsgenie就会被心跳击中。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/68195122

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档