首页主机资讯Ubuntu LAMP怎样监控服务器状态

Ubuntu LAMP怎样监控服务器状态

时间2025-11-26 23:49:03发布访客分类主机资讯浏览428
导读:Ubuntu LAMP 服务器状态监控实践 一 快速排障的命令行工具 系统资源总览 实时进程与负载:top / htop(交互更友好,支持按键筛选) 综合资源:nmon(CPU、内存、磁盘、网络一屏查看) 虚拟内存与CPU:vmstat...

Ubuntu LAMP 服务器状态监控实践

一 快速排障的命令行工具

  • 系统资源总览
    • 实时进程与负载:top / htop(交互更友好,支持按键筛选)
    • 综合资源:nmon(CPU、内存、磁盘、网络一屏查看)
    • 虚拟内存与CPU:vmstat 1
    • 磁盘与CPU:iostat -x 1(需安装 sysstat:sudo apt-get install sysstat)
    • 历史与系统活动报告:sar(来自 sysstat,支持按日查看历史)
    • 多合一资源:dstatglances
  • LAMP 组件状态
    • Apache:sudo systemctl status apache2;实时连接与性能页:启用 mod_status 后访问 http://服务器IP/server-status(需配置访问控制)
    • MySQL:sudo systemctl status mysql;连接与执行:mysqladmin statusmysqladmin processlist;性能细节:Performance Schema
  • 以上工具覆盖 CPU、内存、磁盘 I/O、网络以及 Apache/MySQL 的关键运行状态,适合日常巡检与临时排障。

二 组件内置状态页与关键指标

  • Apache
    • 启用模块与配置:a2enmod status;在站点配置或 /etc/apache2/conf-available/status.conf 中设置
      • 示例:
        • ExtendedStatus On
        • < Location /server-status>
        • SetHandler server-status
        • Require local
    • 重载:sudo systemctl reload apache2
    • 关注指标:Total Accesses/Total kBytes、CPULoad、ReqPerSec、BytesPerSec、BusyWorkers、IdleWorkers、Scoreboard(用于判断并发、吞吐与排队)
  • MySQL
    • 快速健康检查:mysqladmin status(Threads、Questions、Slow queries、Opens、Flush、Uptime)
    • 实时连接与慢查询:mysqladmin processlist、开启慢查询日志分析长时 SQL
    • 深入诊断:Performance Schema(按语句/等待事件/阶段统计,定位瓶颈)
  • 这些内置页面与命令无需额外安装,能直接反映 LAMP 栈的运行健康度与性能瓶颈。

三 可视化与告警平台选型与部署

  • Prometheus + Grafana(指标采集与可视化)
    • 安装与启动
      • Prometheus:sudo apt update & & sudo apt install prometheussudo systemctl start prometheus & & sudo systemctl enable prometheus;访问 http://服务器IP:9090
      • Grafana:wget -q -O - https://packages.grafana.com/gpg.key | sudo apt-key add -;echo “deb https://packages.grafana.com/oss/ubuntu $(lsb_release -cs) main” | sudo tee /etc/apt/sources.list.d/grafana.list;sudo apt update & & sudo apt install grafanasudo systemctl start grafana-server & & sudo systemctl enable grafana-server;访问 http://服务器IP:3000
    • 典型用法:Prometheus 抓取 Node Exporter(系统指标)、Apache Exporter、MySQL Exporter;Grafana 导入 Node Exporter/Apache/MySQL 仪表盘进行可视化与告警规则配置
  • Zabbix(一体化监控与告警)
    • 添加仓库并安装:wget https://repo.zabbix.com/zabbix/5.4/ubuntu/pool/main/z/zabbix-release/zabbix-release_5.4-1ubuntu20.04_all.deb & & sudo dpkg -i zabbix-release_*.deb & & sudo apt update
    • 安装组件:sudo apt install zabbix-server-mysql zabbix-frontend-php zabbix-apache-conf zabbix-agent
    • 初始化数据库(示例):CREATE DATABASE zabbix …;创建用户并授权;导入初始数据;配置 /etc/zabbix/zabbix_server.conf;启动 zabbix-serverzabbix-agent;访问 http://服务器IP/zabbix 完成向导
  • Nagios(传统主机与服务监控)
    • 安装:sudo apt update & & sudo apt install nagios3 nagios-plugins
    • 启动:sudo systemctl start nagios3 & & sudo systemctl enable nagios3
    • 访问 http://服务器IP/nagios 查看状态与配置监控对象
  • 以上方案覆盖从开箱即用的 Zabbix 到灵活可扩展的 Prometheus+Grafana,以及告警能力成熟的 Nagios,可按团队规模与复杂度选择。

四 落地监控方案与告警阈值建议

  • 监控分层
    • 基础设施:CPU、内存、磁盘 I/O、网络(Node Exporter)
    • 服务层:Apache(请求吞吐、并发、5xx 错误、响应时间)、MySQL(连接数、慢查询、复制延迟)
    • 日志层:Apache access/error 与 MySQL slow query log(异常状态码、峰值时段、TOP SQL)
  • 建议阈值与动作
    • CPU 使用率 > 80% 持续 5 分钟:扩容或限流
    • 内存使用率 > 80%:检查缓存/进程泄漏,优化应用或加内存
    • 磁盘使用率 > 80%:清理日志/归档,扩容磁盘
    • Apache 平均响应时间 > 1s5xx 增多:排查慢查询与后端瓶颈
    • MySQL 连接数接近 max_connections:优化连接池与 SQL,必要时调大上限
    • 慢查询增多:开启并分析慢查询日志,建立索引与改写 SQL
  • 建议做法
    • 15 秒采集一次指标,保留 15 天;为关键指标设置 P95/P99 告警
    • 使用 Grafana 建立统一看板,按业务划分视图;Prometheus 配置 AlertmanagerZabbix 配置动作与通知渠道(邮件/企业微信/钉钉/Slack)

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


若转载请注明出处: Ubuntu LAMP怎样监控服务器状态
本文地址: https://pptw.com/jishu/757259.html
Ubuntu LAMP怎样优化网络设置 Ubuntu LAMP怎样配置虚拟主机

游客 回复需填写必要信息