温馨提示×

Ubuntu服务器如何监控性能

小樊
39
2025-12-08 00:54:28
栏目: 云计算

Ubuntu服务器性能监控实用指南

一 快速上手的内置与常用命令

  • 实时进程与资源总览:使用top(交互式,按P按CPU、M按内存排序),或安装更易用的htopsudo apt install htop)。
  • 系统级资源:用vmstat 1(间隔1秒)查看CPU、内存、IO与进程;用iostat -x 2查看磁盘设备的详细IO(需sysstatsudo apt install sysstat);用free -h查看内存与交换分区;用nmon综合查看CPU、内存、磁盘、网络。
  • 进程级IO与文件:用iotop -oPa定位占用磁盘的进程;用pidstat -d 1按进程统计磁盘IO;用lsof /dev/sdX查看某设备被哪些进程打开。
  • 网络:用iftop实时看接口带宽,用nethogs按进程看带宽,用ss -tulnnetstat -tuln查看连接与监听端口。
  • 历史与趋势:用sar(来自sysstat)查看历史CPU、内存、IO报表,便于回溯分析。
    以上工具覆盖日常排障所需的关键维度,适合无侵入、即开即用的场景。

二 进阶与远程可视化

  • 一体化终端监控:用Glancessudo apt install glances)在一个页面集中展示CPU、内存、交换、磁盘IO、网络、进程与温度;支持阈值配置、颜色分级,以及C/S模式远程监控(glances -s启动服务端,glances -c <IP>连接)。
  • 图形与桌面:桌面环境可用GNOME 系统监视器(活动 → 搜索“系统监视器”)查看CPU、内存、磁盘与网络。
  • 企业级监控:部署Prometheus + Grafana做时序数据采集与可视化,或用Nagios、Zabbix做服务可用性、资源阈值与告警。
    这些方案便于团队协作、长期可视化与统一告警治理。

三 关键指标与瓶颈判断

  • CPU:关注us(用户态)、sy(内核态)、id(空闲)。经验上us+sy > 80%常被视为过载;若sy偏高,多与系统调用、驱动或内核路径相关。
  • 内存:当Mem used接近满载且Swap used持续增长,说明物理内存不足,性能会显著下降。
  • 磁盘:用iostat关注**%utilawait**。常用经验阈值是:%util > 70% 且 await > 10ms时,往往意味着存储子系统出现瓶颈风险。
  • 进程:结合top/htop按CPU或内存排序,快速定位异常进程PID,再结合日志与追踪工具深入分析。
    以上阈值用于快速筛查,需结合业务特性与基线综合判断。

四 五分钟排障流程与常用命令清单

  • 步骤1 先看整体负载:运行top/htop,确认是否有进程长期占用**>70% CPU>30% 内存**;按P/M排序定位元凶。
  • 步骤2 看系统级资源:vmstat 1观察r(运行队列)、si/so(换入/换出)、wa(IO等待)是否异常。
  • 步骤3 聚焦磁盘:iostat -x 2检查**%util/await**;用iotop -oPa找出具体进程;必要时用lsof /dev/sdX核对文件与进程关系。
  • 步骤4 排查网络:iftop看接口占用,nethogs定位按进程的带宽消耗;用ss -tulpen核对连接与状态。
  • 步骤5 回溯历史:用sar查看过往CPU、内存、IO报表,辅助定位间歇性波动。
  • 常用命令清单(按需选用):
    • 进程与系统:top/htopvmstat 1free -h
    • 磁盘与IO:iostat -x 2iotop -oPapidstat -d 1lsof /dev/sdX
    • 网络:iftopnethogsss -tuln
    • 历史趋势:sar
    • 可视化/远程:glances -s/-c Prometheus + Grafana
      该流程覆盖从“发现异常 → 定位根因 → 验证修复”的最短路径,适合线上快速处置。

0