首页主机资讯Ubuntu Trigger如何配置报警

Ubuntu Trigger如何配置报警

时间2025-12-12 12:50:04发布访客分类主机资讯浏览1012
导读:Ubuntu 中 Trigger 报警配置指南 概念澄清 **Trigger(触发器)**是监控系统的“条件表达式”,用于判断监控指标是否异常;它本身不发送通知。 **报警(告警)通常由Alertmanager(Prometheus 生态...

Ubuntu 中 Trigger 报警配置指南

概念澄清

  • **Trigger(触发器)**是监控系统的“条件表达式”,用于判断监控指标是否异常;它本身不发送通知。
  • **报警(告警)通常由Alertmanager(Prometheus 生态)Zabbix 的动作(Action)**来执行,例如发送邮件、微信、Webhook 等。

方案一 Prometheus Alertmanager 配置报警

  • 安装组件
    • 在 Ubuntu 上安装并启动 PrometheusAlertmanager(示例命令:sudo apt update & & sudo apt install prometheus alertmanager)。
  • 配置 Prometheus 加载规则与告警路由
    • 编辑 /etc/prometheus/prometheus.yml,添加规则文件与 Alertmanager 目标:
      • rule_files: [“/etc/prometheus/rules/alert.rules.yml”]
      • alerting: { alertmanagers: [{ static_configs: [{ targets: [“localhost:9093”] } ] }
  • 定义告警规则
    • 新建 /etc/prometheus/rules/alert.rules.yml,示例:
      • groups:
        • name: host rules:
          • alert: InstanceDown expr: up == 0 for: 1m labels: { severity: critical } annotations: summary: “Instance { { $labels.instance } } down” description: “{ { $labels.instance } } of job { { $labels.job } } down for > 1m.”
  • 配置 Alertmanager 通知(以 SMTP 邮件为例)
    • 编辑 /etc/alertmanager/alertmanager.yml
      • global: smtp_smarthost: ‘smtp.example.com:587’ smtp_from: ‘alertmanager@example.com’ smtp_auth_username: ‘your_username’ smtp_auth_password: ‘your_password’ smtp_ssl: true
      • route: { receiver: ‘email’ }
      • receivers:
        • name: ‘email’ email_configs: [{ to: ‘admin@example.com’ } ]
  • 启动与验证
    • 启动服务:sudo systemctl start prometheus alertmanager
    • 在 Prometheus Web(默认 :9090)的 Alerts 页面查看规则与触发状态;Alertmanager(默认 :9093)查看是否收到告警。

方案二 Zabbix 配置触发器与动作实现告警

  • 前置
    • 部署 Zabbix Server/Agent,在 Web 端完成主机与监控项配置。
  • 创建触发器(Trigger)
    • 在 Zabbix Web:配置 → 主机 → 触发器 → 创建触发器
      • 名称:如“CPU 使用率过高”
      • 表达式:如 { server:system.cpu.util[,avg1].last()} > 80
      • 严重性:如 Warning/Critical
  • 配置告警媒介(以邮件为例)
    • 管理 → 媒介类型 → 创建媒介类型(Email)
      • SMTP Server、SMTP HELO、发件人等按实际填写
    • 管理 → 用户 → 报警媒介 → 添加 Email 并填写收件人
  • 配置动作(Action)
    • 配置 → 动作 → 触发器动作 → 创建动作
      • 条件:例如“触发器=CPU 使用率过高”
      • 操作:发送消息给用户/用户组,主题与内容可使用宏(如 { HOST.NAME} 、{ TRIGGER.NAME} 、{ ITEM.VALUE} 等)
      • 恢复操作:问题恢复时同样通知
  • 测试
    • 制造触发条件(如压测使 CPU> 80%),确认是否收到邮件。

方案三 轻量替代与日志告警

  • 使用 Monit 做进程与服务告警
    • 安装:sudo apt-get install monit
    • 配置示例(/etc/monit/conf.d/my-service.conf):
      • check process my-service with pidfile /var/run/my-service.pid start program = “/etc/init.d/my-service start” stop program = “/etc/init.d/my-service stop” if memory > 200 MB for 5 cycles then alert your_email@example.com
    • 启动:sudo systemctl start monit
  • 使用 Logwatch 做日志摘要邮件
    • 安装:sudo apt-get install logwatch
    • 配置(/etc/logwatch/conf/logwatch.conf):
      • Detail = High
      • Output = mail
      • MailTo = your_email@example.com
      • Service = syslog
    • 运行:sudo logwatch --service custom.rules(可按需定制规则)。

快速排错与最佳实践

  • Prometheus/Alertmanager
    • 核对 9090/9093 端口连通;Prometheus 页面 Alerts 是否有 Firing;Alertmanager 是否收到但未发送(查看 Silence、Inhibition、路由与接收器配置)。
  • Zabbix
    • 触发器表达式语法与阈值是否合理;动作条件是否匹配;用户媒介是否启用且收件人正确;服务器与代理连通性(Server/Proxy 与 Agent)。
  • 通用
    • 建议为不同级别(如 Warning/Critical)配置不同接收人;为告警消息添加足够的上下文(主机、指标、时间、值);生产环境优先使用稳定的通知渠道(如企业邮箱/企业微信/钉钉),并保留告警历史以便复盘。

声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!


若转载请注明出处: Ubuntu Trigger如何配置报警
本文地址: https://pptw.com/jishu/770419.html
Ubuntu Trigger能恢复数据吗 Linux分卷怎样进行日志管理

游客 回复需填写必要信息