2017-06-26 6 views
0

私はKubernetesの展開でコンテナの準備と生存のプローブを定義しました。これらが失敗すると、ポッドのイベントにその出力が含まれることが期待されます。しかし、私はそのような出来事を見ません。私は同じポッドの他の出来事を見る。失敗したKubernetesプローブに関するイベントが表示されないのはなぜですか?

私はKubernetes v1.6.4でGKEを実行しています。

イベントを生成するコードは、https://github.com/kubernetes/kubernetes/blob/v1.6.4/pkg/kubelet/prober/prober.go#L94です。

代わりに、コンテナの「ref」が取得できなかったことを示すログが表示されます。コンテナ関連のイベントを記録しようとするコードの他の場所にも同様のログが表示されます。

これはバグですか?これらのイベントは潜在的に非常に有用です。特に、故障したプローブの出力を見ることができる唯一の方法であり、予期せず故障したプローブを診断することができます。

[これがStackOverflowの適切な問題であるかどうかはわかりません。

+0

また、GKE 1.6.4クラスタもあります。 Kubernetesのドキュメントから[この例](https://kubernetes.io/docs/tasks/configure-pod-container/configure-liveness-readiness-probes/#define-a-live-command)をたどり、約40秒、私はポッドが生存プローブに失敗して殺された時でさえも見ました。それは次のようになります: '' 'liveness-exec_kube-system(4339b96a-5b7e-11e7-956e-42010a8a0fdc)"コンテナ "liveness"は不健全で、殺されて再作成されます。 '' ' –

+0

できれば、ポッドが実行されているノードにSSHし、'!hasRef'条件がヒットしているかどうか確認してください。あなたはkubeletのログに "No ref for container"をgrepします。 –

+0

@EricTuneありがとうございます。私はそれが確かに "コンテナの参照がない"問題であることを確認しました。 –

答えて

0

これはKubernetes 1.6.7で修正されたバグでした。

関連する問題