2016-04-26 41 views
0

我急切地等待6月中下旬發佈Kubernetes v1.3,以便我可以訪問cron作業調度。在此期間,我打算做的是以下幾點:關於如何更新kubernetes作業的困惑

  • 我Kubernetes羣集上部署工作
  • 使用詹金斯作爲一個cron工具以觸發定義的時間間隔的工作(例如1小時)。

我有兩個問題:

如何更新工作?對於複製控制器,我只是做滾動更新,但在作業API規範(http://kubernetes.io/docs/user-guide/jobs/)中沒有關於如何執行此操作的詳細信息。例如,可以說我想在我進行git commit時使用我的jenkins部署系統來更新作業。

是否可以使用kubernetes API來觸發作業?例如,我有一份工作正在運行,然後吊艙在完成時終止。然後,1小時後,我想用詹金斯再次觸發這項工作。

非常感謝!

+0

令人傷心的計劃任務(Cron)[已經遲到了1.3,並且只會在1.4版中](https://github.com/kubernetes/kubernetes/pull/11980) – puja

回答

1

我不確定是否有任何奇特的方式來觸發已完成的作業,但有一種方法可以刪除並重新創建作業。

Re:rolling-update:這是長時間運行的pod需要的,這是RC控制的。 對於作業:您可以更新jobSpec中的podTemplateSpec,並確保更新後作業創建的任何新Pod將具有更新的podTemplateSpec(注意:已經運行的Pod不會受到影響)。

希望這會有所幫助!

+0

我最終使用了一個爲cron設置的kubernetes守護進程,讓docker入口點啓動cron並拖拽日誌 – Zach