AI智能体自动化运维,自动监控服务器告警

服务器告警最怕的不是没监控,而是告警太多没人看,或者出了问题要等用户反馈才发现。
本文用开源AI智能体配合Prometheus和告警脚本,搭建一套能自动判断异常并推送通知的监控流程,零基础也能照着做。

这套方案适合什么场景

如果你手上有几台到几十台Linux服务器,希望CPU、内存、磁盘、服务端口出现异常时能自动收到通知,并且不想每天手动翻监控面板,这套方案就适合。
核心思路是:Prometheus负责采集指标,Alertmanager负责路由告警,AI智能体负责在告警触发后做二次判断和自动处置,比如重启服务、清理日志、发送带上下文的通知。

你需要准备:
一台能运行Docker的Linux服务器(2核4G以上),
服务器已安装Docker和Docker Compose,
并且有一个可用的通知渠道,
比如企业微信机器人或钉钉Webhook。

部署监控采集与告警组件

先在服务器上创建目录并编写Docker Compose文件:

version: '3.8'
services:
  prometheus:
    image: prom/prometheus:v2.51.0
    volumes:
      - ./prometheus.yml:/etc/prometheus/prometheus.yml
      - ./rules:/etc/prometheus/rules
    ports:
      - "9090:9090"
  alertmanager:
    image: prom/alertmanager:v0.27.0
    volumes:
      - ./alertmanager.yml:/etc/alertmanager/alertmanager.yml
    ports:
      - "9093:9093"

prometheus.yml里配置采集目标和告警规则路径:

global:
  scrape_interval: 15s
rule_files:
  - /etc/prometheus/rules/*.yml
alerting:
  alertmanagers:
    - static_configs:
        - targets: ['alertmanager:9093']
scrape_configs:
  - job_name: 'node'
    static_configs:
      - targets: ['192.168.1.10:9100']

这里的192.168.1.10:9100需要替换成你实际服务器的IP和node_exporter端口。
如果还没装node_exporter,可以在目标服务器上执行:

wget https://github.com/prometheus/node_exporter/releases/download/v1.8.0/node_exporter-1.8.0.linux-amd64.tar.gz
tar xzf node_exporter-1.8.0.linux-amd64.tar.gz
cd node_exporter-1.8.0.linux-amd64
./node_exporter &

启动后访问http://你的服务器IP:9090,在Prometheus的Status-Targets页面看到目标状态为UP,说明采集正常。

编写告警规则与AI智能体触发条件

rules目录下新建server_alerts.yml,定义几个最常用的告警项:

groups:
  - name: server_alerts
    rules:
      - alert: HighCPUUsage
        expr: 100 - (avg by(instance) (rate(node_cpu_seconds_total{mode="idle"}[5m])) * 100) > 85
        for: 5m
        labels:
          severity: warning
        annotations:
          summary: "CPU使用率超过85%"
      - alert: DiskWillFillIn4Hours
        expr: predict_linear(node_filesystem_free_bytes{fstype!="tmpfs"}[1h], 4*3600) < 0
        for: 10m
        labels:
          severity: critical
        annotations:
          summary: "磁盘预计4小时内写满"

关键点for字段表示持续满足条件多久才触发告警,避免瞬时波动误报。
CPU告警用5分钟,磁盘预测用10分钟,这个值可以根据业务容忍度调整。

随后配置Alertmanager的Webhook,把告警转发给AI智能体。
编辑alertmanager.yml

route:
  receiver: 'ai-agent-webhook'
receivers:
  - name: 'ai-agent-webhook'
    webhook_configs:
      - url: 'http://你的AI智能体服务地址:8000/alert'
        send_resolved: true

AI智能体服务可以用Python快速实现一个接收端,收到告警后先判断严重级别,再决定是直接转发通知还是执行自动修复动作。
比如磁盘告警可以自动清理/tmp下的过期文件,CPU告警则只通知不操作,避免误杀业务进程。

常见报错与避坑说明

配置过程中容易遇到几个问题:

  • 告警不触发:先检查Prometheus的Alerts页面是否显示规则已加载。如果规则文件路径不对,Prometheus启动日志会提示error loading config,需要确认rule_files路径和实际挂载路径一致。
  • Webhook收不到请求:Alertmanager日志里如果出现Post http://...: connection refused,说明AI智能体服务没启动或端口不通。先在服务器上执行curl http://127.0.0.1:8000/alert测试本地连通性。
  • 告警重复发送:Alertmanager默认会对同一告警组重复通知。可以在route里配置repeat_interval: 4h,把重复通知间隔拉长到4小时。
  • AI智能体误操作:自动修复动作一定要加白名单和二次确认。建议只对磁盘清理、日志轮转这类低风险操作开放自动执行,重启服务类操作先发通知让人确认。

验证告警链路是否生效

最直接的验证方法是手动制造一个异常。
在目标服务器上执行一个占满CPU的命令:

yes > /dev/null &

等待5到10分钟,观察Prometheus的Alerts页面是否出现HighCPUUsage告警,然后检查企业微信或钉钉是否收到通知。
确认收到后,用kill %1结束测试进程。

如果通知没到,
按这个顺序排查:
Prometheus Alerts页面有无告警 → Alertmanager的Silences和Alerts页面有无记录 → AI智能体服务日志有无收到请求 → 通知渠道Webhook地址是否正确。

几个实际使用中的疑问

AI智能体必须用大模型吗? 不一定。
简单的阈值判断和自动清理用脚本就能完成,大模型适合处理告警降噪和根因分析这类需要理解上下文的任务。

这套方案能监控Windows服务器吗? 可以,
把node_exporter换成windows_exporter,
采集端口默认是9182,
Prometheus配置里改一下targets即可。

告警太多怎么降噪? 除了调整for时长和repeat_interval
还可以在Alertmanager的route里用group_by把同一台机器的多个告警合并成一条通知,
减少打扰。

整套流程跑通后,服务器异常从发生到收到通知通常在1分钟以内,自动修复动作可以控制在秒级完成。
建议先在小范围服务器上验证,确认告警准确率和自动处置逻辑没问题,再逐步扩大监控范围。
如果后续要接入更多指标,只需要在rules目录新增yml文件并在prometheus.yml里确认路径覆盖即可。

分享到:
上一篇
程序员使用AI写代码常见坑,逻辑错误排查
下一篇
程序员必备技能,AI Agent开发入门教程
1
系统公告

泽御云中秋国庆双节活动上线:新购8折,拼团3.99元起

尊敬的用户:
泽御云“月满中秋·礼贺国庆”双节活动现已开启,活动时间为2026年9月23日至10月10日。 活动期间可享以下福利:
1. 常规云服务器新购使用优惠码“泽御中秋国庆同乐”,符合条件的订单享8折优惠。
2. 香港精品云服务器5人拼团低至3.99元,部分4核4G套餐3人拼团年付388元,续费同价。
3. 新用户购买年付云服务器,符合活动规则可赠送2个月使用时长。
4. 老用户续费季度赠15天,续费年度赠2个月;活动期间升级配置免收配置迁移手续费。
5. 推荐好友成功下单,符合条件的推荐人可获赠7天服务器使用时长。
6. 活动期间享宕机补偿标准翻倍、简单网站迁移协助及技术工单优先处理权益。
温馨提示:优惠码不适用于拼团套餐、活动轻量产品、年付订单及续费订单;拼团套餐为独立特价活动,不与赠时类福利叠加。赠送时长不可折现、退款或跨账户转移,具体规则以活动页面说明为准。
服务中心
客服
在线客服
24小时为您服务
咨询
联系我们
联系我们,为您的业务提供专属服务。
24/7 技术支持
如果您遇到寻求进一步的帮助,请过工单与我们进行联系。
24/7 即时支持
泽御云
售前客服
泽御云
泽御云
售后客服
泽御云
技术支持
评价
您对当前页面的整体感受是否满意?
😞
非常不满意
😕
不满意
😐
一般
🙂
满意
😊
非常满意