UGA Boxxx

つぶやきの延長のつもりで、知ったこと思ったこと書いてます

【GCE】OOMキラーが発生した

あるとき商用のElasticsearchが急に落ちる障害が起きた

「OOMキラー」が発生していたとの報告を受けたが、OOMキラーをよくわかってなかったので調べた

OOMキラー

OOMはOut of Memoryの略で、OOMキラーはLinuxがメモリ不足でシステムが停止する恐れがある際、プロセスを強制的にKILLして物理メモリを空ける仕組み

復旧時には立ち会ってないのでどういうログが出ていたかは確認できていないが、おそらく以下のコマンドで確認できる

インスタンスssh

$ gcloud compute ssh my-account@my-instance-abcde --zone xxxxxx

ログを確認

$ sudo cat /var/log/messages | grep Killed

原因調査

おそらくVMインスタンスが13G、ESのヒープサイズが8Gなので優先的にOOMキルされた可能性がある

対策

CPUは使ってないのでGCは起きておらず、実際はそんなに使っていないことがわかったのでESのヒープサイズを6Gに

そもそものマシンサイズを下げても良いかも

殺される優先度は設定できるらしいが、vmインスタンスではdstatコマンドが使えなかった

Linux OOM Killerについて - Qiita

そもそも下手にシステムを生き延びさせるよりも、即座にシステムをpanicさせる手もあるらしい

LinuxにおけるOOM発生時の挙動