今天一台Centos服务器出了问题,客户端访问非常慢,电影播放间歇性卡壳,web访问也是很慢。首先看了服务器的流量,然后从网上找了一些方法查看服务器的IO读写负载,记录下来分享:

1. 用top命令查看:

top – 11:41:22 up 51 min, 2 users, load average: 0.01, 0.04, 0.01

Tasks: 130 total, 1 running, 129 sleeping, 0 stopped, 0 zombie

Cpu(s): 0.2%us, 0.1%sy, 0.0%ni, 99.2%id, 0.4%wa, 0.0%hi, 0.0%si, 0.0%st

Mem: 4151760k total, 2284628k used, 1867132k free, 47892k buffers

Swap: 4192956k total, 0k used, 4192956k free, 2145020k cached

分析:查看0.4%wa这里,IO等待所占用的CPU时间的百分比,高过30%时IO压力高

2. 用iostat查看

用iostat -x 1 10

如果 iostat 没有,要 yum install sysstat安装这个包

iostat -x 1 10

Linux 2.6.18-92.el5PAE (CZ-Jinglingmingdu.51mox.com) 2013年09月17日

avg-cpu: %user %nice %system %iowait %steal %idle

0.18 0.00 0.19 0.36 0.00 99.27

Device: rrqm/s wrqm/s r/s w/s rsec/s wsec/s avgrq-sz avgqu-sz await svctm %util

sda 8.38 7.25 8.07 3.17 1348.21 83.34 127.47 0.04 3.98 1.27 1.42

avg-cpu: %user %nice %system %iowait %steal %idle

0.00 0.00 0.25 0.00 0.00 99.75

Device: rrqm/s wrqm/s r/s w/s rsec/s wsec/s avgrq-sz avgqu-sz await svctm %util

sda 0.00 13.00 6.00 2.00 776.00 120.00 112.00 0.02 2.12 2.12 1.70

avg-cpu: %user %nice %system %iowait %steal %idle

0.25 0.00 0.25 0.00 0.00 99.50

Device: rrqm/s wrqm/s r/s w/s rsec/s wsec/s avgrq-sz avgqu-sz await svctm %util

sda 0.00 0.00 3.96 0.00 467.33 0.00 118.00 0.01 3.00 3.00 1.19

avg-cpu: %user %nice %system %iowait %steal %idle

0.00 0.00 0.25 0.00 0.00 99.75

Device: rrqm/s wrqm/s r/s w/s rsec/s wsec/s avgrq-sz avgqu-sz await svctm %util

sda 0.00 0.00 6.00 0.00 704.00 0.00 117.33 0.02 3.00 3.00 1.80

分析:

查看%util 1.42 %idle 99.27

如果 %util 接近 100%,说明产生的I/O请求太多,I/O系统已经满负荷,该磁盘可能存在瓶颈。

idle小于70% IO压力就较大了,一般读取速度有较多的wait.

同时可以结合vmstat 查看查看b参数(等待资源的进程数)

[root@CZ-Jinglingmingdu ~]# vmstat

procs ———–memory———- —swap– —–io—- –system– —–cpu——

r b swpd free buff cache si so bi bo in cs us sy id wa st

0 0 0 1785708 49772 2219820 0 0 155 10 301 134 0 0 99 0 0

如果你想对硬盘做一个IO负荷的压力测试可以用如下命令

time dd if=/dev/zero bs=1M count=2048 of=direct_2G

此命令为在当前目录下新建一个2G的文件

我们在新建文件夹的同时来测试IO的负荷情况

再通过如下脚本查看高峰的进程io情况

monitor_io_stats.sh

#!/bin/sh

/etc/init.d/syslog stop

echo 1 > /proc/sys/vm/block_dump

sleep 60

dmesg | awk ‘/(READ|WRITE|dirtied)/ {process[$1]++} END {for (x in process)

print process[x],x}’ |sort -nr |awk ‘{print $2 ” ” $1}’ |

head -n 10

echo 0 > /proc/sys/vm/block_dump

/etc/init.d/syslog start

或者用iodump.pl脚本

linux服务器读写硬盘io,查看linux服务器硬盘IO读写负载相关推荐

  1. 怎么查看linux挂载的硬盘,如何查看Linux服务器已挂载的硬盘

    在本教程中,我将向您展示在Linux服务器上列出挂载硬盘的不同方法.我们可以使用mount.findmnt和df命令来列出任何Linux发行版(如Ubuntu或Centos)的挂载设备. 在Linux ...

  2. linux服务器进程不存在,查看 Linux 服务器的进程

    1)ps [主要选项]-a  显示系统中所有进程的信息 -e  显示所有进程的信息 -f  显示进行的所有信息 -l   以长格式显示进程信息 -r  只显示正在运行的进程 -u  显示面向用户的格式 ...

  3. 阿里云 Linux服务器 挂载硬盘

    公司最近几台云服务器硬盘资源紧张,着急扩容,于是买了块云硬盘,但是挂载硬盘之前都没实践过,还是比较担心操作失误,里面有一部涉及到格式化,听到格式化多少还是有点担心,于是找个台空闲机器实践了一番,将步骤 ...

  4. 高性能Linux服务器 第11章 构建高可用的LVS负载均衡集群

    高性能Linux服务器 第11章 构建高可用的LVS负载均衡集群 libnet软件包<-依赖-heartbeat(包含ldirectord插件(需要perl-MailTools的rpm包)) l ...

  5. 空服务器安装linux,debian服务器linux服务器web建站搭建linux服务器之Debian安装

    debian服务器linux服务器web建站搭建linux服务器之Debian安装 原文来自i火吧 大家都知道linux的发行版本很多,有centos啊,debian啊,ubuntu等,下面我就用de ...

  6. C/C++Linux服务器开发高级架构师/Linux后台开发架构师丨高级进阶学习

    01 课程介绍 [录播]课程介绍(66分钟) 免费试学 [录播]磁盘存储链式的B树与B+树(131分钟) 免费试学 免费学习视频链接点击:C/C++Linux服务器开发高级架构师/Linux后台架构师 ...

  7. 视频教程-Linux服务器运维/虚拟主机-Linux

    Linux服务器运维/虚拟主机 云知梦创始人,国际架构师,11年互联网培训和开发经验,曾在港电讯盈科.北大青鸟集团.远大教育.北京易第优教育等公司任职曾获得美国红帽RHCA构架师和RHCDS数据中心讲 ...

  8. linux服务器挂硬盘无法启动不了怎么办,解决IO错误导致Linux无法启动-挂载原有硬盘...

    之前一直使用vbox虚拟了很多系统,安装一些开发中常用的工具,不同的项目进行不同的划分.但最近突然因为物理磁盘IO异常导致虚拟硬盘无法正常读取,更不要说系统正常启动了.于是便想利用另外一个能启动的系统 ...

  9. linux服务器挂硬盘无法启动不了怎么办,Linux硬盘问题的八种解决技巧

    不能在Linux或者类UNIX系统的硬盘上写入数据?想解决服务器上磁盘损坏的问题吗?想知道你为什么总是在屏幕上看到"磁盘已满"的字眼吗?想学习处理这些问题的办法吗?试试一下这8个解 ...

  10. linux查看是否有用户在使用分区,在Linux服务器中有几种查看分区表的方法

    作为Linux服务器管理员,我们有时需要查看我们的硬盘分区表.它允许我们通过腾出空间进行更多分区来重新配置旧驱动器,如果需要,甚至可以为新驱动器创建空间.分区表位于您的硬盘扇区0中.系统中的设备在分区 ...

最新文章

  1. 忽悠神经网络指南:教你如何把深度学习模型骗得七荤八素
  2. CSS3支持box-flex弹性布局
  3. cuda-convnet2与caffe对比
  4. docker保存日志文件到本地
  5. 好书推荐!从事数据挖掘、数据分析必看的书!
  6. python自动化办公-python自动化办公?学这些就够用了
  7. Java 使用百度翻译-通用翻译API
  8. 2022新版UI云购H5系统源码+完美运行/功能强大
  9. aac怎么转化为mp3格式?
  10. 微信小程序getUserInfo返回拼音的解决办法
  11. vmwareshanch删除快照以及删除快照时卡住的解决办法
  12. python将多个表的数据合并到一个表
  13. URL Schemes备份
  14. 王者荣耀苹果游客服务器信号,王者荣耀游客号怎么转移 苹果游客号怎么转移到微信...
  15. Mac苹果电脑如何一键清理磁盘内存空间?
  16. 你以为有钱人不快乐?他们都是在骗你的
  17. Vue项目遇到的一些难点
  18. 刀光剑影下,恩怨情仇中的安卓
  19. 什么是Deeply Embedded Systems?
  20. Nuxt之目录结构与常用配置

热门文章

  1. 15岁天才创办4chan匿名网站,如今因股权分配不均,与谷歌不欢而散!
  2. 重磅!2020 中国高校毕业生月薪排名:清华第一,24所高校过万
  3. 硕士,博士太多了?看完这组数据你就不那么认为了!
  4. 教你3招,彻底搞定OCR数学公式识别难题!
  5. 重磅!GitHub 日收 7000 星, Windows 计算器项目开源即爆红!
  6. 基于PyGame的乒乓球和滑雪小游戏
  7. 美多商城之购物车(购物车管理3)
  8. C C++语言指针学习!(基础篇!) 指针的掌握真滴是分水岭呦~
  9. ACMNO.11 一个数如果恰好等于它的因子之和,这个数就称为“完数“。 例如,6的因子为1、2、3,而6=1+2+3,因此6是“完数“。 编程序找出N之内的所有完数,并按下面格式输出其因子
  10. C/C++指针使用常见的坑