CronJob にできないこと
CronJob は 1 つの Pod のスケジューラとしては良くできています。足りなさが出るのはバッチが 1 Pod を超えた瞬間で、どのチームも同じ 3 つにぶつかります。
- CronJob 同士に依存関係がありません。順序は時刻のずらしで表現することになり、ジョブが伸びた最初の日に静かに壊れます
- 履歴は既定で浅く、成功 3 件と失敗 1 件しか残りません。ログは Pod と一緒に消えるので、先週火曜の失敗を説明することはたいてい不可能です
- startingDeadlineSeconds を設定しないまま 100 回連続でスケジュールを逃すと、CronJob はスケジュール自体をやめ、人が気づくまで止まったままになります