AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / server / 问题 / 620727
Accepted
dotancohen
dotancohen
Asked: 2014-08-16 07:01:33 +0800 CST2014-08-16 07:01:33 +0800 CST 2014-08-16 07:01:33 +0800 CST

iostat 在特定磁盘的第一行报告低 r/s,在同一磁盘的所有后续行上报告预期 r/s

  • 772

将数据从硬盘复制sdc到 时sda,我注意到每秒完成的读取请求数异常低:

$ iostat -x 1 1
Linux 3.13.0-32-generic (melancholy)    2014-08-15      _x86_64_        (4 CPU)

avg-cpu:  %user   %nice %system %iowait  %steal   %idle
           3.15    0.00    0.94    1.91    0.00   94.00

Device:         rrqm/s   wrqm/s     r/s     w/s    rkB/s    wkB/s avgrq-sz avgqu-sz   await r_await w_await  svctm  %util
sda               0.15     6.43    0.37    4.85    14.17  2154.46   829.68     1.35  258.80   26.50  276.74   2.89   1.51
sdb               0.02     1.08    0.63    1.91    10.48    86.95    76.56     0.13   50.08    4.89   65.06   2.98   0.76
sdc               0.35     1.10   29.15    0.18  2140.15     5.11   146.32     0.29    9.98    9.39  107.21   2.12   6.22

进一步挖掘,似乎每次我开始iostat第一行报告很多r / s:

$ sudo iostat -x 1 3
Linux 3.13.0-32-generic (melancholy)    2014-08-15      _x86_64_        (4 CPU)

avg-cpu:  %user   %nice %system %iowait  %steal   %idle
           3.15    0.00    0.94    1.95    0.00   93.96

Device:         rrqm/s   wrqm/s     r/s     w/s    rkB/s    wkB/s avgrq-sz avgqu-sz   await r_await w_await  svctm  %util
sda               0.15     6.43    0.38    4.98    14.29  2219.15   832.86     1.39  259.93   25.96  277.93   2.89   1.55
sdb               0.02     1.08    0.63    1.91    10.47    86.84    76.55     0.13   50.06    4.89   65.02   2.98   0.76
sdc               0.35     1.10   29.91    0.18  2206.09     5.11   146.98     0.30   10.00    9.43  107.21   2.12   6.37

avg-cpu:  %user   %nice %system %iowait  %steal   %idle
           1.00    0.00    2.01   24.56    0.00   72.43

Device:         rrqm/s   wrqm/s     r/s     w/s    rkB/s    wkB/s avgrq-sz avgqu-sz   await r_await w_await  svctm  %util
sda               0.00     5.00    0.00    2.00     0.00    28.00    28.00     0.03   14.00    0.00   14.00  14.00   2.80
sdb               0.00     0.00    0.00    0.00     0.00     0.00     0.00     0.00    0.00    0.00    0.00   0.00   0.00
sdc               0.00     0.00  498.00    0.00 42496.00     0.00   170.67     5.35   10.74   10.74    0.00   2.01 100.00

avg-cpu:  %user   %nice %system %iowait  %steal   %idle
           0.50    0.00    2.75   40.75    0.00   56.00

Device:         rrqm/s   wrqm/s     r/s     w/s    rkB/s    wkB/s avgrq-sz avgqu-sz   await r_await w_await  svctm  %util
sda               0.00     0.00    0.00  274.00     0.00 139648.00  1019.33   114.82  304.88    0.00  304.88   2.93  80.40
sdb               0.00     0.00    0.00    0.00     0.00     0.00     0.00     0.00    0.00    0.00    0.00   0.00   0.00
sdc               0.00     0.00  500.00    0.00 42632.00     0.00   170.53     5.34   10.70   10.70    0.00   2.00 100.00

$ sudo iostat -x 1 3
Linux 3.13.0-32-generic (melancholy)    2014-08-15      _x86_64_        (4 CPU)

avg-cpu:  %user   %nice %system %iowait  %steal   %idle
           3.15    0.00    0.94    1.95    0.00   93.96

Device:         rrqm/s   wrqm/s     r/s     w/s    rkB/s    wkB/s avgrq-sz avgqu-sz   await r_await w_await  svctm  %util
sda               0.15     6.43    0.38    4.99    14.29  2223.10   833.13     1.40  260.11   26.00  278.09   2.89   1.55
sdb               0.02     1.08    0.63    1.91    10.46    86.84    76.55     0.13   50.06    4.89   65.02   2.98   0.76
sdc               0.35     1.10   29.94    0.18  2208.18     5.11   147.00     0.30   10.00    9.43  107.21   2.12   6.37

avg-cpu:  %user   %nice %system %iowait  %steal   %idle
           1.00    0.00    2.00   24.50    0.00   72.50

Device:         rrqm/s   wrqm/s     r/s     w/s    rkB/s    wkB/s avgrq-sz avgqu-sz   await r_await w_await  svctm  %util
sda               0.00     7.00    0.00    2.00     0.00    36.00    36.00     0.02   10.00    0.00   10.00  10.00   2.00
sdb               0.00     0.00    0.00    0.00     0.00     0.00     0.00     0.00    0.00    0.00    0.00   0.00   0.00
sdc               0.00     0.00  496.00    0.00 42360.00     0.00   170.81     5.27   10.60   10.60    0.00   2.02 100.00

avg-cpu:  %user   %nice %system %iowait  %steal   %idle
           0.50    0.00    2.26   23.81    0.00   73.43

Device:         rrqm/s   wrqm/s     r/s     w/s    rkB/s    wkB/s avgrq-sz avgqu-sz   await r_await w_await  svctm  %util
sda               0.00     0.00    0.00    0.00     0.00     0.00     0.00     0.00    0.00    0.00    0.00   0.00   0.00
sdb               0.00     0.00    0.00    0.00     0.00     0.00     0.00     0.00    0.00    0.00    0.00   0.00   0.00
sdc               0.00     0.00  499.00    0.00 42616.00     0.00   170.81     5.29   10.61   10.61    0.00   2.00 100.00

$ sudo iostat -x 1 3
Linux 3.13.0-32-generic (melancholy)    2014-08-15      _x86_64_        (4 CPU)

avg-cpu:  %user   %nice %system %iowait  %steal   %idle
           3.15    0.00    0.94    1.96    0.00   93.96

Device:         rrqm/s   wrqm/s     r/s     w/s    rkB/s    wkB/s avgrq-sz avgqu-sz   await r_await w_await  svctm  %util
sda               0.15     6.43    0.38    4.99    14.29  2223.99   833.18     1.40  260.12   26.00  278.10   2.89   1.55
sdb               0.02     1.08    0.63    1.91    10.46    86.83    76.55     0.13   50.06    4.89   65.02   2.98   0.76
sdc               0.35     1.10   29.97    0.18  2210.82     5.11   147.03     0.30   10.00    9.43  107.21   2.12   6.38

avg-cpu:  %user   %nice %system %iowait  %steal   %idle
           1.25    0.00    2.01   26.07    0.00   70.68

Device:         rrqm/s   wrqm/s     r/s     w/s    rkB/s    wkB/s avgrq-sz avgqu-sz   await r_await w_await  svctm  %util
sda               0.00     5.00    0.00    3.00     0.00    32.00    21.33     0.10   34.67    0.00   34.67  34.67  10.40
sdb               0.00     0.00    0.00    0.00     0.00     0.00     0.00     0.00    0.00    0.00    0.00   0.00   0.00
sdc               0.00     0.00  499.00    0.00 42616.00     0.00   170.81     5.38   10.77   10.77    0.00   2.00 100.00

avg-cpu:  %user   %nice %system %iowait  %steal   %idle
           0.50    0.00    2.49   25.44    0.00   71.57

Device:         rrqm/s   wrqm/s     r/s     w/s    rkB/s    wkB/s avgrq-sz avgqu-sz   await r_await w_await  svctm  %util
sda               0.00     0.00    0.00  175.00     0.00 86040.00   983.31    40.06  228.89    0.00  228.89   2.77  48.40
sdb               0.00     0.00    0.00    0.00     0.00     0.00     0.00     0.00    0.00    0.00    0.00   0.00   0.00
sdc               0.00     0.00  500.00    0.00 42632.00     0.00   170.53     5.41   10.82   10.82    0.00   2.00 100.00

这是有问题的,因为这意味着我无法自动监控,iostat因为初始读数是错误的。我可以通过运行监控脚本iostat -x 1 2并忽略第一个输出来解决它,但我真的很想了解为什么这是必要的。为什么每次运行的第一份报告都显示如此低的活动?

为了澄清,我指的是 的r/s值sdc,当数据(数百 GiB)从该磁盘复制到sda. 在 的每次运行中, foriostat的第一个值约为 29,而for的每个后续值都接近 500。这是为什么呢?r/ssdcr/ssdc

linux
  • 2 2 个回答
  • 1154 Views

2 个回答

  • Voted
  1. Best Answer
    Sven
    2014-08-16T07:05:13+08:002014-08-16T07:05:13+08:00

    引用手册iostat页:

    iostat 命令生成的第一个报告提供有关自系统启动以来的时间的统计信息,除非使用了 -y 选项,而忽略了第一个报告。每个后续报告都涵盖自上次报告以来的时间。

    这意味着第一次读取将显示一个较低的值,因为它是自启动以来的平均值,可能较低。使用-y将删除此初始读取。

    • 2
  2. Navern
    2014-08-16T07:10:52+08:002014-08-16T07:10:52+08:00

    尝试使用cat /proc/diskstats它更可预测。如果您使用 zabbix 或 nagios 自动监控,您始终可以计算先前值与新值之间的差异。

    如果我没记错的话,iostat 也使用 /proc/diskstats。

    • 0

相关问题

  • Linux 主机到主机迁移

  • 如何在 Linux 机器上找到有关硬件的详细信息?

  • 如何在 Linux 下监控每个进程的网络 I/O 使用情况?

  • 在 RHEL4 上修改 CUPS 中的现有打印机设置

  • 为本地网络中的名称解析添加自定义 dns 条目

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    新安装后 postgres 的默认超级用户用户名/密码是什么?

    • 5 个回答
  • Marko Smith

    SFTP 使用什么端口?

    • 6 个回答
  • Marko Smith

    命令行列出 Windows Active Directory 组中的用户?

    • 9 个回答
  • Marko Smith

    什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同?

    • 3 个回答
  • Marko Smith

    如何确定bash变量是否为空?

    • 15 个回答
  • Martin Hope
    Tom Feiner 如何按大小对 du -h 输出进行排序 2009-02-26 05:42:42 +0800 CST
  • Martin Hope
    Noah Goodrich 什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同? 2009-05-19 18:24:42 +0800 CST
  • Martin Hope
    Brent 如何确定bash变量是否为空? 2009-05-13 09:54:48 +0800 CST
  • Martin Hope
    cletus 您如何找到在 Windows 中打开文件的进程? 2009-05-01 16:47:16 +0800 CST

热门标签

linux nginx windows networking ubuntu domain-name-system amazon-web-services active-directory apache-2.4 ssh

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve