首页主机资讯centos lamp怎样进行系统监控

centos lamp怎样进行系统监控

时间2026-01-19 18:09:04发布访客分类主机资讯浏览494
导读:CentOS LAMP 系统监控实操指南 一 系统级实时监控 基础命令 进程与负载:top/htop(按 CPU/内存 排序,htop 更直观) 内存与磁盘:free -h、df -h 综合资源:vmstat 1 5(进程/内存/IO/...

CentOS LAMP 系统监控实操指南

一 系统级实时监控

  • 基础命令
    • 进程与负载:top/htop(按 CPU/内存 排序,htop 更直观)
    • 内存与磁盘:free -hdf -h
    • 综合资源:vmstat 1 5(进程/内存/IO/CPU)、iostat -x 1(磁盘 IO)、dstat -ta(CPU/内存/磁盘/网络)
    • 网络与连接:ss -tulpn(套接字与进程)、iftop(按主机实时带宽)
  • 历史与可视化
    • 性能历史:sar -u/-r/-d/-n DEV 1(需安装 sysstat
    • 终端全景:nmon
    • Web 管理:Cockpit(CentOS 7/8 可用,浏览器查看资源、服务、日志)
  • 安装要点
    • 启用 EPEL 源后安装常用工具:yum install -y epel-release htop dstat nmon iftop sysstat cockpit
    • 启动 Cockpit:systemctl enable --now cockpit.socket,浏览器访问 https://服务器IP:9090

二 LAMP 各组件监控要点

  • Apache
    • 启用状态页:在 /etc/httpd/conf/httpd.conf/etc/httpd/conf.modules.d/00-base.conf 中确保 LoadModule status_module modules/mod_status.so,并在虚拟主机或目录配置中加入:
      • 示例:
        • < Location /server-status>
        • SetHandler server-status
        • Require local
      • 访问 http://服务器IP/server-status?auto 查看 Total Accesses、Idle Workers、Scoreboard 等关键指标
    • 命令行与日志:httpd -M(已加载模块)、tail -f /var/log/httpd/access_log /var/log/httpd/error_log
  • MySQL/MariaDB
    • 运行状态:mysqladmin statusmysqladmin --relative --sleep 5 extended-status(间隔采样)
    • 会话与慢查询:SHOW PROCESSLIST; 、开启慢查询日志(slow_query_log、long_query_time)
    • 高级分析:pt-query-digest(分析慢查询日志,定位最耗时的 SQL)
  • PHP
    • 配置与扩展:phpinfo.php(临时排查 php.ini 配置与扩展)
    • 性能剖析:XdebugBlackfireTideways(应用级性能瓶颈定位与调用追踪)

三 集中式监控与告警方案

  • Zabbix
    • 适用场景:企业级、分布式监控与灵活告警
    • 快速落地:在 LAMP 主机上部署 Zabbix Server + Web 前端 + Agent,通过 Web 向导添加主机、模板(如 Linux、Apache、MySQL)、设置触发器与通知媒介(邮件/企业微信/钉钉等)
  • Prometheus + Grafana
    • 适用场景:云原生/容器化、指标丰富、强大可视化
    • 快速落地:以 Node Exporter 采集主机指标,配置 Prometheus 抓取任务,使用 Grafana 导入 Node Exporter/Apache/MySQL 仪表盘并配置告警规则
  • 其他可选
    • Nagios(服务可用性/插件生态)、Cacti(基于 SNMP/RRDtool 的流量与性能图形)、Netdata(轻量实时 Web 仪表盘)

四 日志与告警实践

  • 日志集中与轮转
    • Web/数据库日志:tail -f /var/log/httpd/access_log /var/log/httpd/error_log /var/log/mysqld.log
    • 系统日志:journalctl -xe -u httpd -u mysqld(按服务过滤)
    • 日志轮转:确保 logrotate/var/log/httpd/var/log/mysqld 正确配置,避免磁盘被占满
  • 安全与异常拦截
    • fail2ban:基于日志自动封禁暴力破解 IP(SSH、HTTP 等)
    • Logwatch:定期汇总与邮件报告系统与安全日志
  • 告警建议
    • 关键阈值示例:CPU 持续 > 80% 5 分钟可用内存 < 10%磁盘使用率 > 85%Apache 5xx 错误率突增MySQL 连接数接近 max_connections慢查询数异常
    • 建议将 Zabbix/Prometheus 的告警与工单/IM 机器人打通,做到可观测 + 可响应

五 快速排障命令清单

  • 资源瓶颈定位
    • CPU/内存/IO:top/htop → vmstat 1 5 → iostat -x 1 → dstat -ta
    • 网络与连接:ss -tulpniftop、必要时 tcpdump -i eth0 -nn port 80/443
  • 组件健康
    • Apache:httpd -t(配置语法)、systemctl status httpdcurl -I http://localhost/
    • MySQL:mysqladmin pingmysqladmin statusSHOW PROCESSLIST;
  • 磁盘与空间
    • df -hdu -sh /var/www /var/log,结合 iotop 查进程级 IO
  • 历史回看
    • sar -u/-r/-d/-n DEV 1(需 sysstat

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


若转载请注明出处: centos lamp怎样进行系统监控
本文地址: https://pptw.com/jishu/786039.html
centos lamp怎样实现高可用性 centos lamp怎样实现自动备份

游客 回复需填写必要信息