Prometheus运维(接入PrometheusAlert 实现通讯工具告警)

前面的邮件告警虽然已经可用,但是现在大多数企业使用邮件的已经很少了,尤其这种告警类比较需要及时处理的工作,但是Prometheus在接入一些通讯工具的时候会有些问题,经常要单独部署一些接收发送的工具,这次找到了一个可以集成多个聊天工具的告警工具,就用这个工具来演示下如何进行钉钉告警,剩下的飞书机器人,企微机器人都是大同小异。

如果文章帮助到了您,请动动您发财的小手来个赞,转个发呗 嘿嘿!

1. PrometheusAlert部署

这里略过了,之前已经进行了部署,可以看前面文章或者到网上找下部署步骤,这里我就把我的docker-compose文件内容复制出来

javascript 复制代码
...
    prometheusalert-center:
        image: feiyu563/prometheus-alert:v4.9.1
        container_name: prometheus-alert-center
        hostname: prometheus-alert-center
        restart: always
        volumes:
            - /usr/local/prometheus_monitor/PrometheusAlert/app.conf:/app/conf/app.conf
            - /usr/local/prometheus_monitor/PrometheusAlert/logs:/app/logs
        ports:
            - "9223:8080"
        networks:
            - monitor_network
...

2.PrometheusAlert配置调整

ini 复制代码
root@ubuntu2204-98:~# cd /usr/local/prometheus_monitor/PrometheusAlert
root@ubuntu2204-98:/usr/local/prometheus_monitor/PrometheusAlert# vi app.conf
#---------------------↓全局配置(设置登录账号密码登)-----------------------
appname = PrometheusAlert
login_user=admin
login_password=123456
httpaddr = "0.0.0.0"
#---------------------↓告警消息全局配置,会适配到所有的告警-----------------------
#告警消息标题
title=PrometheusAlert
#钉钉告警 告警logo图标地址
logourl=https://raw.githubusercontent.com/feiyu563/PrometheusAlert/master/doc/alert-center.png
#钉钉告警 恢复logo图标地址
rlogourl=https://raw.githubusercontent.com/feiyu563/PrometheusAlert/master/doc/alert-center.png

3.接入钉钉告警

如何创建钉钉机器人请参考网上文章,有很多

ruby 复制代码
root@ubuntu2204-98:/usr/local/prometheus_monitor/PrometheusAlert# vi app.conf
#---------------------↓webhook-----------------------
#是否开启钉钉告警通道,可同时开始多个通道0为关闭,1为开启
open-dingding=1
#默认钉钉机器人地址
ddurl=https://oapi.dingtalk.com/robot/send?access_token=xxxxxxx
#是否开启 @所有人(0为关闭,1为开启)
dd_isatall=1
#是否开启钉钉机器人加签,0为关闭,1为开启
# 使用方法:https://oapi.dingtalk.com/robot/send?access_token=XXXXXX&secret=mysecret
open-dingding-secret=0

登录PrometheusAlert管理页面测试钉钉告警

null

image-20250826173536043

null

image-20250826173547116

4.配置Alertmanager使用webhook调用PrometheusAlert

ruby 复制代码
root@ubuntu2204-98:/usr/local/prometheus_monitor/alertmanager# cd
root@ubuntu2204-98:~# cd /usr/local/prometheus_monitor/alertmanager
root@ubuntu2204-98:/usr/local/prometheus_monitor/alertmanager# vi alertmanager.yml
....
  routes:
    - match:
        severity: warning
      receiver: 'web.hook.prometheusalert'  #这里改成新告警配置的名称
receivers:
  - name: 'mail'
  .......
  # 增加配置
  - name: 'web.hook.prometheusalert'
    webhook_configs:
      - url: 'http://192.168.1.98:9223/prometheusalert?type=dd&tpl=prometheus-dd&ddurl=https://oapi.dingtalk.com/robot/send?access_token=xxxx&at=手机号'

....

5.提高负载进行测试

typescript 复制代码
root@ubuntu2204-98:/usr/local/prometheus_monitor/alertmanager# for i in {1..4}; do (while true; do echo "scale=5000; 4*a(1)" | bc -l > /dev/null; done) & done
null

image-20250826180537268

null

image-20250826180639584

告警已经完成,这里告警模板我是用的默认的,大家可以进行自定义,图片呢是因为没有所以是个叹号。

到此Prometheus监控及告警基础使用就是这个意思了,剩下的就是大家自由发挥了,我也会不定期的更新一些监控方法和模板之类的。

另外对于主机状态监控这里,如果你是自建机房或者公司自己的私有环境使用Prometheus完全是可以的,但是如果你使用的是云主机我觉得更建议你使用云厂商提供的云监控,一般主机监控是免费的。但是你要多维度进行监控多种不同产品的话就需要购买云厂商产品了,这个看公司怎么决定,说白了有钱就行哈哈。

相关推荐
日月星辰Ace13 小时前
基于 AWS Lambda + Jenkins 的自动化接口测试平台实践
自动化运维
会飞的小蛮猪1 天前
Prometheus运维(接入AlertManager 实现邮件告警)
自动化运维
陈哥聊测试2 天前
当DevOps落地实施撞上技术债务,如何量化债务突破困局
前端·自动化运维·devops
一只拉古5 天前
DevOps 基础到精通 - 部署策略
后端·自动化运维·devops
腾讯蓝鲸智云6 天前
【运维自动化-标准运维】变量的高级用法
云计算·saas·自动化运维
会飞的小蛮猪9 天前
Prometheus运维(Prometheus基础结构组件)
自动化运维
一只拉古9 天前
DevOps 基础到精通 - 宏观概览
自动化运维·devops
一只拉古11 天前
DevOps 的 Linux 基础(第一部分)
linux·自动化运维·devops