AWS 服务器的 I/O 问题

AWS 服务器的 I/O 问题

目前我们有许多 Amazon AWS c3.large 设置,我正在尝试找出瓶颈。在高峰期,大多数设置上的负载都非常高。

看起来磁盘利用率很高,因为 iostat 相对于 %util(最后一列)大部分时间都为 100:

iostat -x 1 Device:         rrqm/s   wrqm/s     r/s     w/s   rsec/s   wsec/s avgrq-sz avgqu-sz   await  svctm  %util xvdap1            0.00 
0.00    0.00   68.00     0.00 16712.00   245.76   137.40 1924.29  14.71 100.00

avg-cpu:  %user   %nice %system %iowait  %steal   %idle
           0.51    0.00    6.06   93.43    0.00    0.00

Device:         rrqm/s   wrqm/s     r/s     w/s   rsec/s   wsec/s avgrq-sz avgqu-sz   await  svctm  %util xvdap1            0.00    
0.00    0.00   69.00     0.00 16560.00   240.00   136.34 1895.94  14.49 100.00

想法可能是 64 GB 通用 SSD 使用的 IOPS 可能不够(192 IOPS)。

虽然观察 tps (IOPS) 似乎平均约为 70-80。所以这似乎足够了。但我确实注意到偶尔会出现远高于此的突发高峰。我相信这也不成问题,因为突发高峰高达 3000。

sar -b 1
Linux 3.14.35-28.38.amzn1.x86_64 (ip-10-167-69-88)      03/04/2016      _x86_64_        (2 CPU)

09:08:35 PM       tps      rtps      wtps   bread/s   bwrtn/s
09:08:36 PM     78.12      1.04     77.08      8.33  16700.00
09:08:37 PM     73.74      0.00     73.74      0.00  16880.81
09:08:38 PM     76.77      1.01     75.76      8.08  16452.53
09:08:39 PM     68.69      0.00     68.69      0.00  16678.79
09:08:40 PM     72.92      0.00     72.92      0.00  17250.00
09:08:41 PM     72.04      0.00     72.04      0.00  17677.42
09:08:42 PM    144.68      0.00    144.68      0.00   9480.85
09:08:43 PM    141.05      0.00    141.05      0.00   9574.74
09:08:44 PM     97.98      0.00     97.98      0.00  13664.65
09:08:45 PM    185.26      0.00    185.26      0.00   4244.21
09:08:46 PM     96.91      0.00     96.91      0.00  14564.95
09:08:47 PM     68.32      0.00     68.32      0.00  16324.75
09:08:48 PM     66.67      0.00     66.67      0.00  16703.03

您认为问题在于分配的 IOPS 数量还是我应该考虑其他问题?

答案1

你的 IO 子系统(又名磁盘)就是问题所在。你的系统正在消耗巨大的等待 IO 请求完成的时间。每当我的系统达到 ~5% iowait 时,我就会开始考虑升级。不用说,你远远超出了这个范围。

您需要增加系统可用的 IOPS 数量。如果您尚未使用 PIOPS(预配置 IOPS)EBS 卷,则第一个选择是迁移到该卷。完成此操作后,增加 IOPS 设置,直到获得所需的性能。

相关内容