如何在Google Cloud中获得更多磁盘性能



我们的一个(Ubuntu 16.04)谷歌云虚拟机的卷几乎一直处于100%的磁盘利用率-这里是从系统中随机抽取的10秒样本:

iostat -x 10
Device:         rrqm/s   wrqm/s     r/s     w/s    rkB/s    wkB/s avgrq-sz avgqu-sz   await r_await w_await  svctm  %util
sdd               0.60    17.20 5450.50 2468.00 148923.60 25490.00    44.05    11.81    1.49    1.13    2.29   0.13  99.60

目前这是一个2.5T的永久固态硬盘。

我的理解是,我无法通过添加虚拟"主轴"然后在它们之间分配工作负载来获得更好的性能。

这是一个数据库卷,所以我也不能真正使用易失性SSD。

我目前有XFS与这些装载选项:

type xfs (rw,noatime,nodiratime,attr2,nobarrier,inode64,noquota)

有什么建议吗?

GCE上所有持久类型的磁盘存储(包括HDD和SSD)都是基于网络的,数据复制到远程存储以获得更高的可用性。这一方面也是性能考虑因素背后的原因,因为可用网络带宽必须在同一物理机器上的多个租户之间公平共享。

GCE限制了IOPS和带宽的磁盘性能—您将受到第一次命中的限制。这是因为许多小型行动比一些大型行动成本更高。

IOPS和带宽都受到3个方面的限制:

  • 类型(HDD与SSD)
  • 磁盘大小(较大的磁盘具有更高的限制)
  • 核心计数(较大的实例占用机器的较大部分,因此限制更高)

此外,PD流量被计入每个核心网络的出口上限。

文档中有一篇深入的文章,介绍了所有这些方面。总之,一旦磁盘大小、类型和核心数量达到最大值,就无法进一步提高性能。

创建多个持久磁盘的RAID阵列不会提高性能,因为您仍将达到每个实例的限制和网络出口上限。

相关内容

  • 没有找到相关文章

最新更新