iowaitが高いと見なされるのはいつですか?
iostat -x
avg-cpu: %user %Nice %system %iowait %steal %idle
2,89 0,01 5,45 49,83 0,00 41,83
Device: rrqm/s wrqm/s r/s w/s rsec/s wsec/s avgrq-sz avgqu-sz await svctm %util
fd0 0,00 0,00 0,00 0,00 0,00 0,00 8,00 0,00 40,00 40,00 0,00
sda 0,18 0,86 2,82 0,60 181,20 21,92 59,35 0,03 10,22 5,02 1,72
sdb 3,96 39,67 6,27 20,94 2243,04 564,37 103,16 0,24 8,83 6,57 17,89
sdc 69,17 0,02 77,40 21,92 37365,20 1578,42 392,10 1,53 15,44 7,46 74,14
sdd 0,64 0,01 1,60 0,09 402,20 87,67 289,93 0,14 80,82 10,63 1,80
dm-0 0,00 0,00 0,85 0,14 28,07 1,09 29,54 0,01 8,18 2,27 0,22
dm-1 0,00 0,00 0,00 0,00 0,02 0,03 8,00 0,00 15,00 2,78 0,00
dm-2 0,00 0,00 2,24 0,10 402,20 87,67 209,87 0,15 65,29 7,69 1,80
dm-3 0,00 0,00 155,10 80,57 39493,87 2121,22 176,58 3,07 13,02 3,33 78,39
dm-4 0,00 0,00 0,34 0,06 34,97 0,47 89,11 0,01 25,57 10,23 0,41
dm-5 0,00 0,00 0,95 1,49 59,89 16,74 31,36 0,03 14,02 1,97 0,48
dm-6 0,00 0,00 0,42 0,43 19,50 4,36 28,10 0,01 16,69 5,00 0,42
dm-7 0,00 0,00 0,96 0,27 28,18 2,20 24,61 0,02 19,65 4,89 0,60
dm-8 0,00 0,00 0,83 0,71 66,32 10,89 50,17 0,02 16,16 4,50 0,69
dm-9 0,00 0,00 0,21 0,29 48,34 7,13 112,85 0,01 20,98 5,36 0,26
dm-10 0,00 0,00 0,06 0,01 2,08 0,12 29,66 0,00 16,39 7,85 0,06
dm-11 0,00 0,00 0,04 0,03 2,83 0,44 44,07 0,00 18,02 6,38 0,05
dm-12 0,00 0,00 0,00 0,00 0,01 0,00 2,40 0,00 46,53 4,53 0,00
dm-13 0,00 0,00 0,03 0,00 4,88 0,00 176,75 0,00 26,46 10,75 0,03
私があなたに与えることができる最良の答えは、「 iowait
が高すぎるパフォーマンスに影響しているとき」です。
データが書き込まれている限り、大量のI/Oがあり、他に行う作業がほとんどない場合、「CPU時間の50%がiowait
に費やされている」状況で問題ない場合があります「十分な速さ」でディスクに出力します。逆に、サーバーが大量のディスクI/Oを実行していて、ユーザーが「壁」を浪費しているところまで著しく遅い場合、それは壊滅的な可能性がありますクロック時間」は操作が完了するのを待っています。
パフォーマンスに影響を与えるものを特定するには、システムでいくつかのベンチマーク(ストレステスト)をスローし、システムが著しくダウンする前にシステムが処理できるI/Oスループットの種類を確認する必要があります。
(これらのベンチマークから取得する数値は、主に学術的なものです-チョークが発生する場所を知るのはいいことですが、いつそれ「解決策」は、I/O操作にかかる時間、またはキューで待機するそれらの数を減らすことです。これは、より高速なディスクに切り替え、より多くのキャッシュを備えたより良いコントローラーをインストールし、SSDを入れ、分割することで実現できます複数のサーバーへのワークロードなど)