以下是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),避免單點故障。
- 敏感數據(如數據庫密碼)需通過加密或環境變量配置,避免明文存儲。
參考來源: