首页主机资讯Ubuntu LNMP如何进行资源监控

Ubuntu LNMP如何进行资源监控

时间2025-11-14 21:50:03发布访客分类主机资讯浏览491
导读:Ubuntu LNMP 资源监控实操指南 一 系统层实时监控 进程与资源总览:使用 top/htop 查看 CPU、内存、负载 与占用最高的进程;安装 htop:sudo apt-get install htop。 内存与交换:使用 fr...

Ubuntu LNMP 资源监控实操指南

一 系统层实时监控

  • 进程与资源总览:使用 top/htop 查看 CPU、内存、负载 与占用最高的进程;安装 htop:sudo apt-get install htop。
  • 内存与交换:使用 free -h 查看 可用内存、已用内存、Swap 使用情况。
  • 虚拟内存与 CPU 调度:vmstat 1 观察 si/so(换入/换出)us/sy/id(用户/系统/空闲)等。
  • 磁盘与 I/O:iostat -x 1(需安装 sysstat:sudo apt-get install sysstat)关注 await、r/s、w/s、util
  • 网络接口与丢包:ip -s linkethtool -S < 网卡> 查看 RX/TX 错误、丢包、带宽;也可读取 /proc/net/dev 获取网卡统计。
    以上命令适合快速定位瓶颈(CPU、内存、磁盘 I/O、网络)并判断是否存在异常抖动或饱和。

二 组件状态与日志检查

  • 服务存活与端口监听:
    • 服务状态:sudo systemctl status nginx/mysql/php-fpm;旧系统可用 service 命令。
    • 端口监听:ss -tulpen | egrep ‘:(80|443|3306|9000)’; 或 netstat -tulpen | egrep ‘:(80|443|3306|9000)’。
  • 错误与慢查询定位:
    • Nginx:tail -n50 /var/log/nginx/error.log;访问日志用于分析 5xx/4xx 与耗时。
    • MySQL:tail -n50 /var/log/mysql/error.log;慢查询分析:mysqldumpslow /var/log/mysql/slow.log
    • PHP-FPM:查看 /var/log/php-fpm.log/var/log/php7.x-fpm.log(路径随版本/发行版不同)。
  • Nginx 运行状态页:启用 ngx_http_stub_status_module,在 server 配置中加入:
    location /nginx_status { stub_status on; allow 127.0.0.1; deny all; }
    访问 http://服务器IP/nginx_status 可查看 Active connections、accepts、handled、requests 等关键指标。
  • MySQL 即时状态:mysqladmin -u root -p status 查看 Threads、Queries/s、Slow queries 等。
    以上步骤覆盖“服务是否存活—端口是否可达—错误与慢操作定位—Nginx 细粒度状态”的完整闭环。

三 可视化与告警平台

  • Prometheus + Grafana:
    • 采集:Node Exporter(主机指标,9100)、Nginx Exporter(9113)、MySQL Exporter(9104)。
    • 配置示例(prometheus.yml):
      • job_name: ‘node’ static_configs: targets: [‘localhost:9100’]
      • job_name: ‘nginx’ static_configs: targets: [‘服务器IP:9113’]
      • job_name: ‘mysql’ static_configs: targets: [‘服务器IP:9104’]
    • 可视化:部署 Grafana,添加 Prometheus 数据源,导入 Node/MySQL/Nginx 官方或社区仪表盘。
  • 一体化与轻量方案:
    • Zabbix:企业级监控与告警,支持 自动发现、图形、触发器 等。
    • Nagios:老牌告警系统,插件丰富。
    • Netdata:开箱即用的实时可视化,适合单机与快速排查。
    • Munin:轻量、按节点与插件组织图表。
      这些平台可将系统、Nginx、MySQL、PHP-FPM 指标集中展示,并提供 阈值告警历史趋势分析

四 自动化巡检与自恢复脚本

  • 快速巡检脚本(示例):
    #!/usr/bin/env bash
    ts=$(date ‘+%F %T’)
    check() { systemctl is-active --quiet “$1” || { echo “$ts $1 DOWN, restarting…”; systemctl restart “$1”; echo “$ts $1 restarted” > > /var/log/lnmp-monitor.log; } }
    check nginx; check mysql; check php-fpm
  • 定时执行:crontab -e 加入
    */1 * * * * /usr/local/bin/lnmp-monitor.sh
  • 建议:脚本仅做“保活”,根因仍应通过 日志与指标 分析;重启前可先 告警,避免雪崩。
    该方式适合小规模部署或临时兜底,生产环境建议配合 平台化监控与告警

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


若转载请注明出处: Ubuntu LNMP如何进行资源监控
本文地址: https://pptw.com/jishu/748471.html
LNMP在Ubuntu上如何实现安全防护 Ubuntu LNMP如何更新与维护

游客 回复需填写必要信息