利用`vmstat`、`iostat`和`sar`监控系统性能的详细指南

打印 上一主题 下一主题

主题 856|帖子 856|积分 2568

一、性能监控工具利用指南

1. vmstat - 假造内存统计工具

  1. # 基础用法(单位:MB)
  2. vmstat -S m 1 5  # 每秒采样1次,共5次
复制代码
输出字段分析

种别关键字段正常范围性能问题指示CPUus< 70%用户空间CPU过载sy< 20%内核态CPU消耗过高wa< 5%磁盘I/O瓶颈内存free>10%总量内存不足(团结swap观察)si/so持续数值>0频繁swap互换(内存不足)
2. iostat - 磁盘I/O统计工具

  1. # 显示扩展统计(危险值标红)
  2. iostat -xz 1 | egrep --color -w "%util|Device"
复制代码
核心指标分析

  1. 1. **%util**:
  2.    - 单个磁盘利用率 >80% → 磁盘过载
  3.    - SSD正常范围可放宽至95%
  4.    
  5. 2. **await**:
  6.    - >20ms(HDD) 或 >2ms(SSD) → 可能存在硬件瓶颈
  7. 3. **svctm**:
  8.    - 实践参考价值较低(Linux 4.18+已弃用)
复制代码

3. sar - 系统活动报告工具

  1. # 查看23日历史数据(UTC时间)
  2. sar -f /var/log/sa/sa23 -q
复制代码
CPU-Mem综合分析

  1. # CPU+内存联合监控(每秒刷新)
  2. sar -ur 1
  3. # 输出关键项:
  4. - **CPU**:%user >80% → 应用计算密集型
  5. - **Memory**: %commit > RAM总量 → 存在OOM风险
复制代码

二、性能指标深度分析

CPU性能三阶分析法

     
内存压力矩阵分析

指标组内存不足缓存利用差vmstatfree↓ + si/so↑ + buff↓cache↓ + swap频繁sar -r%memused >85% + kbcached↓kbcached稳定但应用性能差/proc/memAvailable < 10%总内存Inact(ive)内存占比低
磁盘I/O瓶颈定位

  1. # 组合诊断命令
  2. iostat -dxm 1 | tee /tmp/io.log &  
  3. pidstat -dl 2
复制代码
混合云特别关注


  • 阿里云云盘:观察 iowait + %util关联性
  • AWS EBS:burst balance指标与IOPS关联分析

三、企业级监控案例

线上事故诊断流程

  1. 1. **现象**: Web响应>5s
  2. 2. **检测**:
  3.    - vmstat 1: wa=35%
  4.    - iostat: nvme0n1 %util=98%
  5. 3. **分析**:
  6.    - 检查慢查询日志 → 未发现
  7.    - filetop显示大量tmp文件读写
  8. 4. **解决**:
  9.    - 优化临时文件存储路径至SSD
  10.    - 调整ext4挂载参数: `noatime,data=writeback`
复制代码

四、高级配置指南

sar数据收罗优化

  1. # 修改配置文件(CentOS)
  2. vim /etc/sysconfig/sysstat
复制代码
配置项推荐值作用HISTORY30生存30天历史数据COMPRESSAFTER1515天后压缩历史文件SADC_OPTIONS“-S DISK”收罗所有磁盘统计
五、故障排查速查表

问题征象首选工具辅助工具关键指标应用卡顿vmstatpidstatr列>CPU核心数磁盘响应慢iostatiotopawait>svctm, %util>95%内存走漏sar -rsmemkbmemused持续增长 实际利用请团结详细环境参数调整阈值判定标准。如遇复杂场景,建议团结perf和ebpf工具进行深度分析。

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

耶耶耶耶耶

金牌会员
这个人很懒什么都没写!

标签云

快速回复 返回顶部 返回列表