当前位置:首页 > 行业动态 > 正文

服务器状态监控命令

常用服务器状态监控命令包括:top/htop查看实时资源占用,vmstat/iostat分析系统性能,df/du监控磁盘空间,netstat/ss检查网络连接,nmon和sar可提供综合性能数据,帮助管理员快速定位CPU、内存、磁盘及网络异常。

服务器状态监控是运维工作的核心任务之一,以下整理常用命令及工具,涵盖CPU、内存、磁盘、网络等关键指标的实时监控与分析,适用于Linux系统运维人员。


CPU性能监控

  1. top命令
    输入 top 可动态查看CPU使用率、进程资源占用等核心数据。

    • 关键指标
      • %Cpu(s):用户态(us)、系统态(sy)、空闲(id)占比。
      • Load Average:1/5/15分钟内的系统负载(建议值:≤CPU核心数×0.7)。
    • 示例输出
      Tasks: 120 total,   1 running, 119 sleeping,   0 stopped,   0 zombie
      %Cpu(s): 15.3 us,  5.1 sy,  0.0 ni, 79.4 id,  0.2 wa,  0.0 hi,  0.0 si
      Mem:   7.8Gi total,  6.2Gi used,  1.6Gi free
  2. htop命令(需安装)
    top更直观,支持颜色高亮和鼠标操作,可排序进程、查看线程级负载。
    安装:sudo apt install htop(Debian/Ubuntu)或 sudo yum install htop(CentOS/RHEL)。


内存与交换空间监控

  1. free命令
    free -h 以易读单位(GB/MB)显示内存和Swap使用情况。

    服务器状态监控命令

    • 输出字段
      • available:系统可用内存(包含缓存和缓冲)。
      • Swap:交换分区使用量(长期占满可能需扩容内存)。
  2. vmstat命令
    vmstat 2 5 每2秒采样一次,共5次,分析内存、进程、磁盘和CPU。

    • 关键列
      • si(swap-in)、so(swap-out):若长期>0,表明内存不足。

磁盘空间与IO监控

  1. df命令
    df -Th 显示磁盘分区类型、总空间、使用率及挂载点。

    • 重点关注Use%超过80%的分区需清理或扩容。
  2. iostat命令(需安装sysstat包)
    iostat -x 1 监控磁盘IO性能,查看读写延迟与吞吐量。

    服务器状态监控命令

    • 关键指标
      • %util:设备利用率(接近100%表示磁盘过载)。
      • await:IO请求平均等待时间(单位:毫秒)。

网络流量与连接监控

  1. iftop命令(需安装)
    实时监控网卡流量,按IP和端口排序。
    安装:sudo apt install iftopsudo yum install iftop

  2. netstat/ss命令

    • netstat -tuln:查看监听中的TCP/UDP端口。
    • ss -s:统计当前连接状态(比netstat更快)。

安全与异常进程排查

  1. ps命令
    ps aux --sort=-%cpu 按CPU占用率降序显示进程。

    服务器状态监控命令

    • 过滤僵尸进程ps aux | grep 'Z'
  2. lsof命令
    lsof -i :80 查看占用80端口的进程,排查非规服务。


自动化监控工具推荐

  • Prometheus + Grafana:开源监控系统,支持自定义仪表盘和告警。
  • Nagios:企业级监控工具,支持插件扩展。
  • nmon:生成服务器性能报告,适合离线分析。

最佳实践建议

  1. 定期巡检:通过crontab定时运行监控脚本,记录日志。
  2. 阈值告警:对CPU负载、内存使用率等设置告警(如Zabbix)。
  3. 日志分析:结合journalctldmesg排查内核级错误。

引用说明

  • Linux man手册(官方命令文档)
  • Red Hat性能调优指南
  • Sysstat工具集官方文档(iostat/sar)
  • Prometheus官方部署指南