システムは応答しないが、CPU 負荷はない

システムは応答しないが、CPU 負荷はない

サーバーの 1 つが完全に応答しません。

top - 06:16:53 up  2:14,  1 user,  load average: 30.95, 29.96, 22.92
Tasks: 168 total,   2 running, 166 sleeping,   0 stopped,   0 zombie
%Cpu(s):  0.0 us, 12.6 sy,  0.0 ni,  0.0 id, 86.4 wa,  0.0 hi,  0.0 si,  1.1 st
KiB Mem :  1014524 total,    61368 free,   877028 used,    76128 buff/cache
KiB Swap:        0 total,        0 free,        0 used.     4196 avail Mem 
  scroll coordinates: y = 1/168 (tasks), x = 1/12 (fields)
  PID USER      PR  NI    VIRT    RES    SHR S %CPU %MEM     TIME+ COMMAND                                                                                                                                         
   30 root      20   0       0      0      0 S 11.1  0.0   4:04.70 kswapd0                                                                                                                                         
 1116 root      20   0  791548  44900      0 S  0.4  4.4   0:14.91 dockerd                                                                                                                                         
    1 root      20   0   37752   2664    864 D  0.2  0.3   0:06.00 systemd          

実際に多くの情報を得ることができないため(非常に応答がない)、何が起こっているのかを言うのは難しいですが、これが私が見ているものです:

  • 負荷平均が非常に高い
  • CPU負荷は約20%~30%です
  • IO/ネットワーク使用率が高くない
  • 実行キューにどのプロセスがあるかがわかりません

高い負荷平均と低い CPU 使用率を実現するにはどうすればよいでしょうか?

答え1

メモリが不足し、システムがスラッシング状態になっています。メモリに必要なプロセス ページをすべて保持するのに十分な空きメモリがないため、OS は必要なページをディスクからロードできるようにいくつかのページを解放する必要があります。スワップがないため、解放するページをスワップ領域に書き込むことはできません。そのため、唯一の代替手段は、読み取り専用コード ページを破棄するか、バッファー キャッシュを縮小することです。破棄されたページに実行が進むと、他のページを犠牲にして、そのページを再び RAM に読み込む必要があります。ある時点で、問題が悪化し、ほとんどの時間がディスクからページがロードされるのを待つことに費やされ、有用な作業に使用できる CPU サイクルがごくわずかになります。

スワップを追加してみてください。ただし、プロセスの負荷パターンによっては、役立つ場合と役立たない場合があります。

答え2

おそらくマウントポイントの問題です。システムがその時点で利用できないマウントポイントをマウントしようとすると、CPU を占有するプロセスが発生していないにもかかわらず、システム負荷が増加し始めます。

試す:

  1. 実行してmount、その時点でアクセスできないマウントポイントがあるかどうかを確認します。
  2. 開始時に定義されたすべてのマウントポイントをチェックし/etc/fstab、その時点でアクセスできないマウントポイントがあるかどうかを確認します。

関連情報