私はKubernetesとGCPのドッカーコンテナでセロリを実行しています。その従業員は最近kill -9
を取得し始めました - これはOOMKillerと関係があるようです。 kubectl get events
にOOMイベントはありません。これは、ポッドがresources.limits.memory
の値を侵入したときにのみ表示されるイベントです。GCPコンテナ内のOOMの可能性 - デバッグ方法
だから、私の理論は殺さセロリのプロセスは、Linux自身OOMKillerの仕事であるということです。しかし、これは理にかなっていません.OOMKillerがステージに入るほど多くのメモリが消費された場合、このポッドは最初にスケジュールされていた可能性はありますか? (Kubernetesがresources.limits.memory
の合計がシステムで使用可能なメモリの量を超えた場合、新しいポッドのスケジューリングを許可しないと仮定します)。
しかし、私はOOMKillerよりこれらSIGKILLsするための他の任意のもっともらしい理由を知りません。
セロリエラーの例は、(すべての労働者のための1つが存在する)
[2017-08-12 07:00:12,124: ERROR/MainProcess] Process 'ForkPoolWorker-7' pid:16 exited with 'signal 9 (SIGKILL)'
[2017-08-12 07:00:12,208: ERROR/MainProcess] Task handler raised error: WorkerLostError('Worker exited prematurely: signal 9 (SIGKILL).',)
これは、コンテナ内およびノード自体上の任意の光 'はgrep -i"殺さプロセスのは/ var/log/messages' –
@TarunLalwaniそのようなパスを投げないん。 –
あなたはどのホストOSを使用していますか? –