如何定位磁盘 I/O 瓶颈和进行分析?

想向各位专家请教一下:

最近我们的 AIX 服务器经常会发现磁盘 I/O 高,用 topas 命令看经常持续在 90% 以上,甚至 100%,针对这种情况需要如何或者分析那些日志,来定位磁盘 I/O 高的原因?

另外,针对磁盘 I/O 高的情况,通常有哪些改善的方案?(除了换用 SSD 外)


谢谢。

参与40
  • 1、 需要确定是哪个盘的IO高 2、如果是本地盘,基本上是你应用访问量很高,可以迁移到存储上(存储上性能会高些) 3、 使用filemon命令,查看是哪个LV或者FS读写频繁,此命令可以精确的文件
    2016-01-13

6同行回答

zp_ccczp_ccc高级技术主管国内某金融科技公司
busy的数值是一个主要的参考指标,但是90%,或者100%不一定就能判断I繁忙,还需要通过其他参数结合来分析,例如结合通过iostat来看磁盘的响应时间,来分析磁盘I/O是否繁忙。闪存阵列是一种提高磁盘I/O性能的一种解决方案。...显示全部

busy的数值是一个主要的参考指标,但是90%,或者100%不一定就能判断I繁忙,还需要通过其他参数结合来分析,例如结合通过iostat来看磁盘的响应时间,来分析磁盘I/O是否繁忙。

闪存阵列是一种提高磁盘I/O性能的一种解决方案。

收起
互联网服务 · 2016-01-13
浏览4418
cuizengshuncuizengshun系统运维工程师民生银行
磁盘I/O高是一个比较典型的性能问题。可以从以下层面进行考虑。1、先通过iostat -D hdiskX 1来看一下磁盘的响应时间,以及SQfull的数值,如果这两个数据值高,说明磁盘已经有瓶颈。但此时也应该再看一下磁盘吞吐量,如果吞吐量不高,但磁盘很忙,则有问题。2、下一步要分析是哪个进...显示全部

磁盘I/O高是一个比较典型的性能问题。可以从以下层面进行考虑。

1、先通过iostat -D hdiskX 1来看一下磁盘的响应时间,以及SQfull的数值,如果这两个数据值高,说明磁盘已经有瓶颈。但此时也应该再看一下磁盘吞吐量,如果吞吐量不高,但磁盘很忙,则有问题。

2、下一步要分析是哪个进程导致磁盘繁忙。这可以收集操作系统的trace,然后把trace转换出来,看一下jfs2文件系统write排名,看看有没有特殊之处,例如,我之前就遇到过patrol进程导致磁盘I/O很高的情况。

3、也可以收集filemon

4、如果第2、3两种场景都没有问题,则可以考虑调整磁盘的queue_depth

5、如果还不行,则考虑存储本身的问题。

收起
银行 · 2016-01-13
浏览3631
haizdlhaizdl技术经理大连
首先,我认为光从IO的繁忙程度来看,不能说明问题。第一,如果你的磁盘繁忙程度总是90%,那么看看IO队列是否有等待,平均的读写程度如何?如果IO队列没有等待,平均读写很高,那就要看看业务这几天是否有频繁的IO。第二,如果你的磁盘IO队列也总会有等待,业务确认也没有突发的IO读写,那么下...显示全部

首先,我认为光从IO的繁忙程度来看,不能说明问题。

第一,如果你的磁盘繁忙程度总是90%,那么看看IO队列是否有等待,平均的读写程度如何?如果IO队列没有等待,平均读写很高,那就要看看业务这几天是否有频繁的IO。

第二,如果你的磁盘IO队列也总会有等待,业务确认也没有突发的IO读写,那么下一步要看的是存储的IO队列是否也有等待,如果没有,那么问题出在操作系统层面或者是光纤交换这个层面,看看链路,端口,操作系统日志是否有异常?

第三,如果存储IO同样存在等待,那么基本可以认定存储肯定有瓶颈了。先排除硬件故障,比如缓存,存储端的链路端口状态,是否有抖动,有没有坏盘。然后再看软件层面,系统后台有没有类似migration的操作,RAID,卷的划分方式是否有问题等等。

收起
银行 · 2016-01-13
浏览3617
青山松青山松系统运维工程师传媒
增加缓存机制,可以采用SQUID\MEMCACHE\REDIS之类,具体应当根据业务来确定显示全部

增加缓存机制,可以采用SQUID\MEMCACHE\REDIS之类,具体应当根据业务来确定

收起
媒体出版 · 2016-01-13
浏览3493
singlesingle系统运维工程师cmbc.ccc
备份软件也请考虑。。。遇到过patrol cv造成的本地磁盘IO高.. 但是间歇性的。显示全部

备份软件也请考虑。。。遇到过patrol cv造成的本地磁盘IO高.. 但是间歇性的。

收起
银行 · 2016-01-27
浏览3462
陈宇陈宇系统工程师某银行
是数据库服务器吗?显示全部

是数据库服务器吗?

收起
银行 · 2016-01-13
浏览3484
  • 如果是数据库服务器,io高可能是因为没进行过调优。调优以后可降低io。后端存储性能也要好。如果后端存储性能实在比较差,那么可优化的空间也不是很大。
    2016-01-13
  • 是中间件服务器,上面有消息队列
    2016-01-13

提问者

quietywind
副总工北京合众思壮时空物联科技有限公司
擅长领域: 云计算存储需求分析

问题来自

相关问题

相关资料

相关文章

问题状态

  • 发布时间:2016-01-13
  • 关注会员:8 人
  • 问题浏览:13187
  • 最近回答:2016-01-27
  • X社区推广