为什么负载增加,ssd iops 增加,但 cpu iowait 减少?

为什么负载增加,ssd iops 增加,但 cpu iowait 减少?

我的服务器上有一个奇怪的事情,上面运行着一个mysql。QPS超过4000,但TPS不到20。服务器负载超过80,cpu usr超过86%,但iowait不到8%。磁盘iops超过16000,磁盘利用率超过99%。当QPS降低时,负载降低,cpu iowait增加。我无法捕捉到这个!

root@mypc # dmidecode | grep "Product Name"
        Product Name: PowerEdge R510
        Product Name: 084YMW

root@mypc # megacli -PDList -aALL |grep "Inquiry Data"
Inquiry Data: SEAGATE ST3600057SS     ES656SL316PT            
Inquiry Data: SEAGATE ST3600057SS     ES656SL30THV            
Inquiry Data: ATA     INTEL SSDSA2CW300362CVPR201602A6300EGN  
Inquiry Data: ATA     INTEL SSDSA2CW300362CVPR2044037K300EGN  
Inquiry Data: ATA     INTEL SSDSA2CW300362CVPR204402PX300EGN  
Inquiry Data: ATA     INTEL SSDSA2CW300362CVPR204403WN300EGN  
Inquiry Data: ATA     INTEL SSDSA2CW300362CVPR202000HU300EGN  
Inquiry Data: ATA     INTEL SSDSA2CW300362CVPR202001E7300EGN  
Inquiry Data: ATA     INTEL SSDSA2CW300362CVPR204402WE300EGN  
Inquiry Data: ATA     INTEL SSDSA2CW300362CVPR204404E5300EGN  
Inquiry Data: ATA     INTEL SSDSA2CW300362CVPR204401QF300EGN  
Inquiry Data: ATA     INTEL SSDSA2CW300362CVPR20450001300EGN

mysql 数据文件位于使用 RAID 10 组织的 SSD 磁盘上。

root@mypc # megacli -LDInfo -L1 -a0


Adapter 0 -- Virtual Drive Information:
Virtual Disk: 1 (Target Id: 1)
Name:
RAID Level: Primary-1, Secondary-0, RAID Level Qualifier-0
Size:1427840MB
State: Optimal
Stripe Size: 64kB
Number Of Drives:2
Span Depth:5
Default Cache Policy: WriteThrough, ReadAheadNone, Direct, No Write Cache if Bad BBU
Current Cache Policy: WriteThrough, ReadAheadNone, Direct, No Write Cache if Bad BBU
Access Policy: Read/Write
Disk Cache Policy: Disk's Default

Exit Code: 0x00

-------- -----load-avg---- ---cpu-usage--- ---swap--- -------------------------io-usage-----------------------                     -QPS- -TPS-         -Hit%- 
  time  |  1m    5m   15m |usr sys idl iow|   si   so|   r/s    w/s    rkB/s    wkB/s  queue await svctm %util|  ins   upd   del    sel   iud|     lor    hit|
09:05:29|79.80 64.49 42.00| 82   7   6   5|    0    0|16421.1   10.6262705.9     85.2   8.3    0.5   0.1  99.5|    0     0     0   3968     0|  495482  96.58|
09:05:30|79.80 64.49 42.00| 79   7   8   6|    0    0|15907.4  230.6254409.7   6357.5   8.4    0.5   0.1  98.5|    0     0     0   4195     0|  496434  96.68|
09:05:31|81.34 65.07 42.31| 81   7   7   5|    0    0|16198.7    8.6259029.2     99.8   8.1    0.5   0.1  99.3|    0     0     0   4220     0|  508983  96.70|
09:05:32|81.34 65.07 42.31| 82   7   5   5|    0    0|16746.6    8.7267853.3     92.4   8.5    0.5   0.1  99.4|    0     0     0   4084     0|  503834  96.54|
09:05:33|81.34 65.07 42.31| 81   7   6   5|    0    0|16498.7    9.6263856.8     92.3   8.0    0.5   0.1  99.3|    0     0     0   4030     0|  507051  96.60|
09:05:34|81.34 65.07 42.31| 80   8   7   6|    0    0|16328.4   11.5261101.6     95.8   8.1    0.5   0.1  98.3|    0     0     0   4119     0|  504409  96.63|
09:05:35|81.31 65.33 42.52| 82   7   6   5|    0    0|16374.0    8.7261921.9     92.5   8.1    0.5   0.1  99.7|    0     0     0   4127     0|  507279  96.66|
09:05:36|81.31 65.33 42.52| 81   8   6   5|    0    0|16496.2    8.6263832.0     84.5   8.5    0.5   0.1  99.2|    0     0     0   4100     0|  505054  96.59|
09:05:37|81.31 65.33 42.52| 82   8   6   4|    0    0|16239.4    9.6259768.8     84.3   8.0    0.5   0.1  99.1|    0     0     0   4273     0|  510621  96.72|
09:05:38|81.31 65.33 42.52| 81   7   6   5|    0    0|16349.6    8.7261439.2     81.4   8.2    0.5   0.1  98.9|    0     0     0   4171     0|  510145  96.67|
09:05:39|81.31 65.33 42.52| 82   7   6   5|    0    0|16116.8    8.7257667.6     96.5   8.0    0.5   0.1  99.1|    0     0     0   4348     0|  513093  96.74|
09:05:40|79.60 65.24 42.61| 79   7   7   7|    0    0|16154.2  242.9258390.4   6388.4   8.5    0.5   0.1  99.0|    0     0     0   4033     0|  507244  96.70|
09:05:41|79.60 65.24 42.61| 79   7   8   6|    0    0|16583.1   21.2265129.6    173.5   8.2    0.5   0.1  99.1|    0     0     0   3995     0|  501474  96.57|
09:05:42|79.60 65.24 42.61| 81   8   6   5|    0    0|16281.0    9.7260372.2     69.5   8.3    0.5   0.1  98.7|    0     0     0   4221     0|  509322  96.70|
09:05:43|79.60 65.24 42.61| 80   7   7   6|    0    0|16355.3    8.7261515.5    104.3   8.2    0.5   0.1  99.6|    0     0     0   4087     0|  502052  96.62|
-------- -----load-avg---- ---cpu-usage--- ---swap--- -------------------------io-usage-----------------------                     -QPS- -TPS-         -Hit%- 
  time  |  1m    5m   15m |usr sys idl iow|   si   so|   r/s    w/s    rkB/s    wkB/s  queue await svctm %util|  ins   upd   del    sel   iud|     lor    hit|
09:05:44|79.60 65.24 42.61| 83   7   5   4|    0    0|16469.4   11.6263387.0    138.8   8.2    0.5   0.1  98.7|    0     0     0   4292     0|  509979  96.65|
09:05:45|79.07 65.37 42.77| 80   7   6   6|    0    0|16659.5    9.7266478.7     85.0   8.4    0.5   0.1  98.5|    0     0     0   3899     0|  496234  96.54|
09:05:46|79.07 65.37 42.77| 78   7   7   8|    0    0|16752.9    8.7267921.8     97.1   8.4    0.5   0.1  98.9|    0     0     0   4126     0|  508300  96.57|
09:05:47|79.07 65.37 42.77| 82   7   6   5|    0    0|16657.2    9.6266439.3     84.3   8.3    0.5   0.1  98.9|    0     0     0   4086     0|  502171  96.57|
09:05:48|79.07 65.37 42.77| 79   8   6   6|    0    0|16814.5    8.7268924.1     77.6   8.5    0.5   0.1  99.0|    0     0     0   4059     0|  499645  96.52|
09:05:49|79.07 65.37 42.77| 81   7   6   5|    0    0|16553.0    6.8264708.6     42.5   8.3    0.5   0.1  99.4|    0     0     0   4249     0|  501623  96.60|
09:05:50|79.63 65.71 43.01| 79   7   7   7|    0    0|16295.1  246.9260475.0   6442.4   8.7    0.5   0.1  99.1|    0     0     0   4231     0|  511032  96.70|
09:05:51|79.63 65.71 43.01| 80   7   6   6|    0    0|16568.9    8.7264919.7    104.7   8.3    0.5   0.1  99.7|    0     0     0   4272     0|  517177  96.68|
09:05:53|79.63 65.71 43.01| 79   7   7   6|    0    0|16539.0    8.6264502.9     87.6   8.4    0.5   0.1  98.9|    0     0     0   3992     0|  496728  96.52|
09:05:54|79.63 65.71 43.01| 79   7   7   7|    0    0|16527.5   11.6264363.6     92.6   8.5    0.5   0.1  98.8|    0     0     0   4045     0|  502944  96.59|
09:05:55|79.63 65.71 43.01| 80   7   7   6|    0    0|16374.7   12.5261687.2    134.9   8.6    0.5   0.1  99.2|    0     0     0   4143     0|  507006  96.66|
09:05:56|76.05 65.20 42.96| 77   8   8   8|    0    0|16464.9    9.6263314.3    111.9   8.5    0.5   0.1  98.9|    0     0     0   4250     0|  505417  96.64|
09:05:57|76.05 65.20 42.96| 79   7   6   7|    0    0|16460.1    8.8263283.2     93.4   8.3    0.5   0.1  98.8|    0     0     0   4294     0|  508168  96.66|
09:05:58|76.05 65.20 42.96| 80   7   7   7|    0    0|16176.5    9.6258762.1    127.3   8.3    0.5   0.1  98.9|    0     0     0   4160     0|  509349  96.72|
09:05:59|76.05 65.20 42.96| 75   7   9  10|    0    0|16522.0   10.7264274.6     93.1   8.6    0.5   0.1  97.5|    0     0     0   4034     0|  492623  96.51|
-------- -----load-avg---- ---cpu-usage--- ---swap--- -------------------------io-usage-----------------------                     -QPS- -TPS-         -Hit%- 
  time  |  1m    5m   15m |usr sys idl iow|   si   so|   r/s    w/s    rkB/s    wkB/s  queue await svctm %util|  ins   upd   del    sel   iud|     lor    hit|
09:06:00|76.05 65.20 42.96| 79   7   7   7|    0    0|16369.6   21.2261867.3    262.5   8.4    0.5   0.1  98.9|    0     0     0   4305     0|  494509  96.59|
09:06:01|75.33 65.23 43.09| 73   6   9  12|    0    0|15864.0  209.3253685.4   6238.0  10.0    0.6   0.1  98.7|    0     0     0   3913     0|  483480  96.62|
09:06:02|75.33 65.23 43.09| 73   7   8  12|    0    0|15854.7   12.7253613.2     93.6  11.0    0.7   0.1  99.0|    0     0     0   4271     0|  483771  96.64|
09:06:03|75.33 65.23 43.09| 75   7   9   9|    0    0|16074.8    8.7257104.3     81.7   8.1    0.5   0.1  98.5|    0     0     0   4060     0|  480701  96.55|
09:06:04|75.33 65.23 43.09| 76   7   8   9|    0    0|16221.7    9.7259500.1    139.4   8.1    0.5   0.1  97.6|    0     0     0   3953     0|  486774  96.56|
09:06:05|74.98 65.33 43.24| 78   7   8   8|    0    0|16330.7    8.7261166.5     85.3   8.2    0.5   0.1  98.5|    0     0     0   3957     0|  481775  96.53|
09:06:06|74.98 65.33 43.24| 75   7   9   9|    0    0|16093.7   11.7257436.1     93.7   8.2    0.5   0.1  99.2|    0     0     0   3938     0|  489251  96.60|
09:06:07|74.98 65.33 43.24| 75   7   5  13|    0    0|15758.9   19.2251989.4    188.2  14.7    0.9   0.1  99.7|    0     0     0   4140     0|  494738  96.70|
09:06:08|74.98 65.33 43.24| 69   7  10  15|    0    0|16166.3    8.7258474.9     81.2   8.9    0.5   0.1  98.7|    0     0     0   3993     0|  487162  96.58|
09:06:09|74.98 65.33 43.24| 74   7   9  10|    0    0|16071.0    8.7257010.9     93.3   8.2    0.5   0.1  99.2|    0     0     0   4098     0|  491557  96.61|
09:06:10|70.98 64.66 43.14| 71   7   9  12|    0    0|15549.6  216.1248701.1   6188.7   8.3    0.5   0.1  97.8|    0     0     0   3879     0|  480832  96.66|
09:06:11|70.98 64.66 43.14| 71   7  10  13|    0    0|16233.7   22.4259568.1    257.1   8.2    0.5   0.1  99.2|    0     0     0   4088     0|  493200  96.62|
09:06:12|70.98 64.66 43.14| 78   7   8   7|    0    0|15932.4   10.6254779.5    108.1   8.1    0.5   0.1  98.6|    0     0     0   4168     0|  489838  96.63|
09:06:13|70.98 64.66 43.14| 71   8   9  12|    0    0|16255.9   11.5259902.3    103.9   8.3    0.5   0.1  98.0|    0     0     0   3874     0|  481246  96.52|
09:06:14|70.98 64.66 43.14| 60   6  16  18|    0    0|15621.0    9.7249826.1     81.9   8.0    0.5   0.1  99.3|    0     0     0   3956     0|  480278  96.65|

答案1

看起来您对所看到的数字的含义有些困惑,所以让我们仔细看看它们。

您应该知道,Linux 系统上的“负载”概念只是任意时刻处于“D”或“R”/“R+”状态的进程数或平均值 (loadavg) 的同义词。它是一个指标,但不是系统负载或响应能力的真正衡量标准。

MySQL每秒查询数每秒交易次数统计数据针对的是完全不同的东西 - “事务”是指 InnoDB、NDB 和 IBMDB2I 引擎提供的 ACID 样式事务。如果您使用的是 MyISAM 表,则可能永远不会看到事务。此外,事务的定义是数据操作。由于您对数据库所做的一切都是发出 SELECT,因此不计算任何事务。

此外,您的 SELECT 查询的 I/O 似乎具有相当高的缓存命中率,但每秒会产生大约 16,000 个读取请求,平均每个请求 16 KB。I/O 队列长度平均约为 8,可能留有一些余量,因为您的 RAID 10 中有 10 个驱动器。RAID 环境中的高 %util 数字并不一定表示存在瓶颈 - 您还应该查看队列长度和平均等待时间。不过,您的时间安排看起来相当高效。

总而言之,你的系统确实接近其处理能力,但从您提供的数据来看没有明显的瓶颈。

答案2

等待是 CPU 等待(阻塞)I/O 操作所花费时间的百分比;由于 CPU 无法继续阻塞 I/O 事务,因此必须等待这些事务完成。

因此,如果您的 CPU 使用率为 86%,而 IOWAIT 为 8%,则意味着 CPU 仍有 6% 处于空闲状态。

IOWAIT 是不是,其本身就表明了磁盘利用率。

相关内容