🧟♀️
「kill -9 PID」で切れないゾンビプロセスのお話。
まえがき
CPU100%のこのプロセス...おかしいな、たった今切ったはずだが??
ゾンビは眠らない
kill -9 PIDでも切れないプロセスをゾンビプロセス言うらしいです。
10時間前に起きた現場のこと。オブジェクトストレージの調子が悪いなと思ってました。
でもこれは、外部サービスなので、一旦待とうと。
しかし数時間経っても解消しない。過去の事例でかなり長い間復旧しないことは幾度かあった。
どうしたものかと思ったが、topコマンドを打った時にふと目に留まった。
CPU100%のこのプロセス...httpd...経過時間が数百分になっている...?
プロセスを切ってみよう..あれ切れないぞ?障害中だhttpdを落とそう。
あれ?プロセス残ってるぞ?
9や他のオプションをつけてもダメ。知らなかった9つけても切れないプロセスがあるとは...。
ゾンビを寝かし方
で、これはもうシステム再起動しかないそうです。原因を調査する必要があるとのことですが、時間を逆算してその時にそのサーバでオブジェクトストレージに関する何かしらをやって、おそらく放置した人に違いありません!
再起動3、5分後自動起動で、無事復旧しましたというお話。
対策
- そもそも作業して帰るみたいな運用はやめましょう。週末は避け、日中に行う
- エラーだけでなく、負荷が徐々にあがるケースも監視する。
Discussion