首页主机资讯Ubuntu LAMP怎样监控系统状态

Ubuntu LAMP怎样监控系统状态

时间2025-12-16 09:23:03发布访客分类主机资讯浏览462
导读:Ubuntu LAMP 系统状态监控实用方案 一 快速排障的命令行工具 进程与资源总览 top/htop:实时查看CPU、内存、负载、进程;htop 支持按键筛选与树形视图,安装:sudo apt-get install htop vm...

Ubuntu LAMP 系统状态监控实用方案

一 快速排障的命令行工具

  • 进程与资源总览
    • top/htop:实时查看CPU、内存、负载、进程;htop 支持按键筛选与树形视图,安装:sudo apt-get install htop
    • vmstat:查看进程、内存、分页、块 I/O、CPU等整体指标,适合定位瓶颈
    • iostat:查看磁盘 I/O 与 CPU,安装 sysstat:sudo apt-get install sysstat;常用 iostat -x 1
    • sar:查看历史性能数据(需启用 sysstat 的数据收集),如 sar -u 1 10
    • nmon:综合监控CPU、内存、磁盘、网络,安装:sudo apt-get install nmon
  • 磁盘与文件系统
    • df -h:查看磁盘空间使用
    • du -sh /var/www /var/log:定位目录占用
    • iotop:按进程查看磁盘读写(需 root)
  • 网络与连接
    • ss -tulpen:查看监听端口与连接状态,比 netstat 更快更现代
    • tcpdump -i any -nn port 80 or 443:抓取HTTP/HTTPS流量做深度排查
  • LAMP 专项
    • systemctl status apache2 mysql:查看服务运行状态与最近日志
    • apache2ctl status 或 service apache2 status:快速查看Apache状态(若启用 mod_status 可看到更细信息)
    • mysqladmin status/processlist:查看MySQL连接与基本健康度

二 LAMP 组件专项监控

  • Apache
    • 启用并配置 mod_status:在站点配置或 /etc/apache2/mods-enabled/status.conf 中设置
      • 典型配置:
        • < Location /server-status>
        • SetHandler server-status
        • Require local
      • 访问:http://服务器IP/server-status 可查看当前连接、请求处理、Worker 状态
    • 结合日志分析访问与错误:/var/log/apache2/access.log、error.log,配合 grep/awk/sed 做状态码、耗时、UA 等统计
  • MySQL
    • 内置与实时工具:mysqladmin status、mysqladmin processlist、SHOW STATUS LIKE ‘Threads_connected’;
    • 性能洞察:启用并查询 Performance Schema(如 events_statements_summary_global_by_event_name)获取慢查询、语句统计、锁等待
    • 慢查询日志:在 my.cnf 中开启 slow_query_log、long_query_time,用 mysqldumpslow 或 pt-query-digest 分析
  • PHP
    • 确认进程与 FPM 池:systemctl status php*-fpm;查看 pm.max_children、request_terminate_timeout
    • 打开 PHP-FPM 慢日志与错误日志,定位脚本执行慢、致命错误与异常退出

三 可视化与集中监控

  • Prometheus + Grafana(推荐)
    • 安装与启动:sudo apt update & & sudo apt install prometheus;sudo systemctl enable --now prometheus
    • 安装与启动 Grafana:添加官方 APT 源后 sudo apt install grafana;sudo systemctl enable --now grafana-server
    • 访问:Prometheus :9090,Grafana :3000;在 Grafana 添加 Prometheus 数据源并导入 Node Exporter/Apache/MySQL 仪表盘
  • Zabbix
    • 添加 Zabbix 仓库后安装 zabbix-server-mysql、zabbix-frontend-php、zabbix-apache-conf、zabbix-agent
    • 初始化数据库、配置 zabbix_server.conf,启动服务;Web 安装向导完成后登录 :80 管理界面
  • 轻量与开箱即用
    • Glances:跨平台监控,支持Web/Socket展示,适合单机与小规模
    • Monit:进程/文件/目录/设备守护与告警,配置简单、资源占用低

四 日志与告警实践

  • 日志集中与可视化
    • 系统与应用日志:/var/log/syslog、/var/log/apache2/.log、/var/log/mysql/.log
    • 使用 ELK(Elasticsearch + Logstash + Kibana) 或 Loki + Promtail 做集中采集、检索与可视化,便于追踪错误与性能回放
  • 告警与阈值
    • Prometheus Alertmanager:基于指标阈值与异常规则触发邮件/企业微信/钉钉/Slack等告警
    • Zabbix:内置触发器动作,支持多种通知媒介与升级策略
    • Monit:条件满足即执行重启服务/执行脚本/发邮件,适合关键进程保活

五 5 分钟上手清单

  • 基线采集:安装 sysstat,确认 sar 能记录历史;记录当前 CPU/内存/磁盘/网络 与关键业务指标
  • 组件自检:systemctl status apache2 mysql;apache2ctl status;mysqladmin status/processlist
  • 实时巡检:htop、iostat -x 1、ss -tulpen、df -h;确认无异常进程与磁盘打满
  • 打开 Apache 状态页:启用 mod_status,浏览器访问 /server-status 观察连接与 Worker
  • 建立可视化:部署 Prometheus + Grafana,导入 Node Exporter 仪表盘,后续再接入 Apache/MySQL Exporter
  • 配置告警:在 Prometheus 或 Zabbix 中设置CPU> 80%磁盘> 85%Apache 5xx 增多MySQL 连接数异常等告警规则

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


若转载请注明出处: Ubuntu LAMP怎样监控系统状态
本文地址: https://pptw.com/jishu/772508.html
Debian backlog中如何协作沟通 Debian backlog如何进行质量把控

游客 回复需填写必要信息