Microsoft Azure 的 SSD 太慢了

Microsoft Azure 的 SSD 太慢了

我们在 Centos7 上的几个 Azure D12v2 实例上运行 ElasticSearch。

在索引数据时,机器的 IO 似乎相当差,每秒在 3MB 到 15MB 之间波动,这对于 SSD 存储来说明显很慢。

                               -- Taken from IOTOP --
Total DISK READ :       0.00 B/s | Total DISK WRITE :       3.01 M/s
Actual DISK READ:       0.00 B/s | Actual DISK WRITE:       2.68 M/s

                               -- Taken from IOTOP --
Total DISK READ :       0.00 B/s | Total DISK WRITE :       6.93 M/s
Actual DISK READ:       0.00 B/s | Actual DISK WRITE:       8.54 M/s

运行此类虚拟机的人是否也面临同样的问题?如果是这样,如何解决?我是否遗漏了什么,这些读写速度是“普通的“?

在物理机上进行同样的测试机械驱动取得更好的效果。

=====编辑=====

我将实例更改为 DS12v2,但性能仍然相似(在 30 到 50 MB/s 之间有一些随机峰值)

答案1

您可能需要向 Azure 支持部门咨询。但是,您也可以检查是否使用了合适的调度程序。对于这样的平台,您应该使用“noop”或“deadline”调度程序。要查看您使用的是什么调度程序,请尝试以下命令:

cat /sys/block/sda/queue/scheduler(您的磁盘可能不是 sda,因此请根据需要进行更改)

这将输出几个调度程序选项,括号中的选项是您当前正在使用的。您可以通过以下方式发出所需的调度程序来临时更改此设置echo

echo noop > /sys/block/sda/queue/scheduler

scheduler=noop如果需要在测试之外进行更改,您还可以将其指定为启动时内核参数。这可以通过编辑/etc/sysconfig/grub.cfg并附加到scheduler=noop内核参数来完成。

相关内容