关于存储性能的问题

关于存储性能的问题

我很高兴,如果你们能回答我一些关于我们存储性能的问题。设置

  • 带有 2GB 缓存的 HP P2000 SAS
  • 8x 1TB SATA 7200 RPM 存储
  • RAID6
  • 3 个带有 SAS HBA 适配器的主机
  • VMWare vSphere 4.1

基本上,我必须查看存储的主要原因是将监控虚拟机从其中一个主机的本地磁盘转移到存储。因此,在进行任何迁移之前,我使用 iometer 设置了一个新的虚拟机,并在晚上运行测试,此时集群中没有运行任何重要作业。此虚拟机中只有 1 个 dynamo 工作线程。

Access Specification Name   IOps    Read IOps   Write IOps  MBps    Read MBps Write MBps    Transactions per Second Average Response Time   Average Read Response Time
512B; 100% Read; 0% random  5617.191059 5617.191059 0.000000    2.742769    2.742769    0.000000    5617.191059 0.176979    0.176979
512B; 75% Read; 0% random   3190.524306 2369.761725 820.762581  1.557873    1.157110    0.400763    3190.524306 0.312244    0.321925
512B; 50% Read; 0% random   1055.807449 524.819993  530.987456  0.515531    0.256260    0.259271    1055.807449 0.946000    0.421600
512B; 25% Read; 0% random   1006.956966 239.414257  767.542709  0.491678    0.116901    0.374777    1006.956966 0.853556    0.687116
512B; 0% Read; 0% random    35.123065   0.000000    35.123065   0.017150    0.000000    0.017150    35.123065   28.349538   0.000000
4K; 75% Read; 0% random 3034.296095 2247.847150 786.448945  11.852719   8.780653    3.072066    3034.296095 0.328614    0.333793
4K; 25% Read; 0% random 2237.793260 587.671309  1650.121951 8.741380    2.295591    6.445789    2237.793260 0.445755    0.636275
16K; 75% Read; 0% random    627.852712  474.796322  153.056389  9.810199    7.418693    2.391506    627.852712  1.591288    1.840213
16K; 25% Read; 0% random    478.619741  116.666329  361.953412  7.478433    1.822911    5.655522    478.619741  2.086953    1.281547
32K; 75% Read; 0% random    848.266506  649.372846  198.893660  26.508328   20.292901   6.215427    848.266506  1.176316    1.334378
32K; 25% Read; 0% random    443.441341  117.275291  326.166050  13.857542   3.664853    10.192689   443.441341  2.253707    7.158792

hdparm 读取测试(使用 hdparm -t /dev/sda)得出 300MB/s。

我们的监控系统从 40 台虚拟机和 30 台设备获取信息,每台主机至少有 10 个服务,但实际上 cacti 产生了大部分 IOPS。它每分钟同时大量更新 RRD 数据。尽管如此,我还是决定将虚拟机迁移到存储。迁移后,我测量了监控产生的 IOPS - 平均值为 800,但每个虚拟机上任何读取操作后的响应时间都很糟糕 -5-10秒,由于内核在某些 IO 操作上超时,监控实际上杀死了一些虚拟机。hdparm 给出 1.4MB/秒。我关闭了 cacti RRD 处理,它运行良好,但我们没有图表。

我的问题:

1)您觉得此设置下的 iometer 性能如何?应该更好,还可以,还是我应该查找一些错误配置?

2)您是否建议使用带有监控软件的单独物理主机,并且不要用这种 IOPS “打扰”存储?

3)这个问题比较笼统。存储测试后,我们可以得到不同块大小的 IOPS/mbps。但我如何评估应用程序最常使用的块大小?例如,数据库系统通常使用 75% 的读取操作,但块大小是多少,以便我可以将其与我的结果进行比较?如果不知道这些信息,我的 iometer 测试就只是数字而已。

更新 1: 谢谢您的回答。

因此,我们所做的是,我们创建了用于 rrd 处理的 ramdisk,并且所有 rrd 每小时都会同步到监控磁盘。一切都运行得相当快,但我们会考虑为这种需要良好写入性能的 IOPS 创建另一个 RAID 组,即 RAID 10。

答案1

所描述的设置并不像它本来应该的那样快。这是一种受支持的安排,因为您最多可以将四台主机连接到该设置(如果您放弃 SAS 多路径)。

对于你的观点:

  • 性能不太好,但适合您的配置。我将参考服务器故障规范 RAID 帖子,这基本上表明 RAID 6 不适合随机写入工作负载。虚拟机和监控系统因这种访问模式而臭名昭著。如果可能的话,RAID 1+0 是更好的选择。

  • 虚拟化我的监控主机,但构建存储以适应这一点(偏向于更大的写入缓存,在 VM 中设置适当的 I/O 提升选项)。这适用于其他基于 RRD 的工具(虎鲸开放网络管理系统),但绝对适用于 Cacti。

  • 就测试而言,我认为跟踪平均事务/块大小并不那么重要,因为更大的架构问题可以带来更大的整体收益。不过,您可以跟踪应用程序。此外,还可以考虑通过 vCenter 或 esxtop/resxtop 检查虚拟机存储性能。

答案2

说实话,虽然我很确定这种设置是受支持的,但我以前从未见过超过 2 个主机的直接连接 SAS VMWare 集群。我知道它在 2 个主机上工作得很好,但使用这种方法在 3 个或更多主机上工作超出了我的专业范围。

也就是说,您的统计数据对我来说看起来还不错,最终您在 R6 阵列中有一些非常慢的磁盘,因此其速度是有限的 - 而 443 IOPS 大约是我所期望的那种性能。

至于您的第二个问题,如果负载真的很糟糕,那么您可以考虑在 P2000 上创建另一个逻辑磁盘,并在 R1 中使用一对专用磁盘,然后将虚拟机放在该逻辑磁盘上,或者如果您可以忍受没有 vMotion/DRS/HA 功能,则可以将其移动到本地 DAS。

第三个问题——也许是iotop?

相关内容