以下是Debian系统LNMP环境的监控与告警设置方法及工具:
一、常用监控工具
-
Prometheus + Grafana
- 功能:Prometheus拉取Nginx、MySQL、PHP-FPM等指标,Grafana可视化并设置告警规则。
- 安装:通过包管理器或源码安装,配置
prometheus.yml添加监控目标,Grafana中添加数据源并创建仪表盘。
-
Zabbix
- 功能:支持服务器、网络及LNMP组件(如Nginx状态、MySQL性能)的监控,提供邮件/短信告警。
- 安装:使用官方仓库安装服务器、代理及前端,配置数据库连接后,在Web界面添加监控项和触发器。
-
Nagios
- 功能:监控系统资源(CPU、内存)及服务状态,支持自定义告警阈值。
- 安装:安装服务器及插件,配置
nagios.cfg和commands.cfg,设置对Nginx、PHP-FPM的监控。
-
轻量级工具
- nmon:实时监控CPU、内存、磁盘I/O等,通过命令行查看。
- Tiptop:命令行实时监控,支持设置告警阈值并通过邮件通知。
二、告警设置要点
- 阈值配置:针对CPU使用率(如>80%)、内存占用、服务响应时间等关键指标设置阈值。
- 通知方式:通过邮件(需配置SMTP)、短信(集成第三方API)或Webhook发送告警。
- 日志监控:结合
tail -f或工具(如Logstash)监控Nginx/MySQL错误日志,触发异常告警。
三、配置示例(以Prometheus为例)
- 安装Prometheus:
wget https://github.com/prometheus/prometheus/releases/download/v2.30.3/prometheus-2.30.3.linux-amd64.tar.gz tar xvfz prometheus-2.30.3.linux-amd64.tar.gz cd prometheus-2.30.3.linux-amd64
- 配置监控目标:编辑
prometheus.yml,添加Nginx、MySQL的Exporter地址。 - Grafana可视化:
- 添加Prometheus数据源,在仪表盘中使用“Nginx Status”“MySQL Performance”等模板。
- 设置告警规则(如“当HTTP 500错误率>5%时触发告警”)。
四、注意事项
- 定期更新监控工具版本,确保兼容性。
- 对生产环境建议采用分布式监控(如Zabbix Server + 多个Agent),避免单点故障。
- 敏感数据(如数据库密码)需通过加密或环境变量配置,避免明文存储。
参考来源: