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 / 问题 / 713530
Accepted
sa289
sa289
Asked: 2015-08-12 21:41:16 +0800 CST2015-08-12 21:41:16 +0800 CST 2015-08-12 21:41:16 +0800 CST

RAID1 - mdadm 镜像 - 未按预期执行并行读取?

  • 772

我们有一个由 mdadm 提供支持的三向 RAID 1 镜像。我想我读到 mdadm 应该同时接受多个读取请求并将它们分布在镜像中的不同驱动器上(并行读取)以提高读取性能,但在我们的测试和观察输出中iostat -xm 1,它似乎只 /dev/sda即使该设备的 I/O 已从 5 个不同的 md 设备中饱和,仍在使用。

我是不是误会了什么?mdadm 是否需要进行不同的配置?我们的版本(CentOS 6.7)不支持这个吗?我不确定它为什么会这样。

基准设置 - 同时运行以下命令:

dd if=/dev/md2 bs=1048576 of=/dev/null count=25000
dd if=/dev/md3 bs=1048576 of=/dev/null count=25000
dd if=/dev/md4 bs=1048576 of=/dev/null count=25000
dd if=/dev/md5 bs=1048576 of=/dev/null count=25000
dd if=/dev/md6 bs=1048576 of=/dev/null count=25000

虽然这些人正在观看iostat -xm 1(下面包含的示例输出 - 镜像由 sda、sdb 和 sdc 组成)的输出。

Device:         rrqm/s   wrqm/s     r/s     w/s    rMB/s    wMB/s avgrq-sz avgqu-sz   await  svctm  %util
sda           100669.00     0.00 10710.00    0.00   435.01     0.00    83.18    33.28    3.11   0.09 100.00
sdb               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    0.00    0.00     0.00     0.00     0.00     0.00    0.00   0.00   0.00
sdd               0.00     0.00    0.00    0.00     0.00     0.00     0.00     0.00    0.00   0.00   0.00
md1               0.00     0.00 19872.00    0.00    77.62     0.00     8.00     0.00    0.00   0.00   0.00
md2               0.00     0.00 18272.00    0.00    71.38     0.00     8.00     0.00    0.00   0.00   0.00
md5               0.00     0.00 18272.00    0.00    71.38     0.00     8.00     0.00    0.00   0.00   0.00
md7               0.00     0.00    0.00    0.00     0.00     0.00     0.00     0.00    0.00   0.00   0.00
md6               0.00     0.00 18240.00    0.00    71.25     0.00     8.00     0.00    0.00   0.00   0.00
md4               0.00     0.00 18208.00    0.00    71.12     0.00     8.00     0.00    0.00   0.00   0.00
md3               0.00     0.00 18528.00    0.00    72.38     0.00     8.00     0.00    0.00   0.00   0.00
md0               0.00     0.00    0.00    0.00     0.00     0.00     0.00     0.00    0.00   0.00   0.00
raid
  • 1 1 个回答
  • 1353 Views

1 个回答

  • Voted
  1. Best Answer
    Gene
    2015-08-12T22:06:43+08:002015-08-12T22:06:43+08:00

    再次执行测试,但更改它,以便您在同一个 MD 设备(例如 /dev/md2)上执行所有五个读取,并且您应该看到它们正在分发。

    单个读取操作将仅从镜像中的一个驱动器读取。它将从分配给镜像的第一个磁盘开始,在这种情况下看起来是 /dev/sda。由于您配置了 5 个以上的 MD 设备,并且正在从每个设备执行单个读取操作,因此它们都从 /dev/sda 中提取。

    我建议不要配置多个 MD 设备,而只使用一个跨越整个 SSD 的设备。

    或者,更改您的测试方法以强制它执行多个不同的驱动器。看看bonnie++,它非常漂亮。

    • 4

相关问题

  • Windows 文件服务器性能调优

  • SSD TRIM 的硬件 RAID 控制器支持

  • 了解磁盘队列长度

  • 使用混合磁盘突袭 0?

  • Windows Server 2008 Hyper-V 虚拟化服务器的最佳 RAID 配置?

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