共計 618 個字符,預計需要花費 2 分鐘才能閱讀完成。
怎么用 k8s 運行一次性任務,相信很多沒有經驗的人對此束手無策,為此本文總結了問題出現的原因和解決方法,通過這篇文章希望你能解決這個問題。
容器按照持續運行的時間可分為兩類:服務類容器和工作類容器。
服務類容器通常持續提供服務,需要一直運行,比如 http server,daemon 等。工作類容器則是一次性任務,比如批處理程序,完成后容器就退出。
Kubernetes 的 Deployment、ReplicaSet 和 DaemonSet 都用于管理服務類容器;對于工作類容器,我們用 Job。
先看一個簡單的 Job 配置文件 myjob.yml:
① batch/v1 是當前 Job 的 apiVersion。
② 指明當前資源的類型為 Job。
③ restartPolicy 指定什么情況下需要重啟容器。對于 Job,只能設置為 Never 或者 OnFailure。對于其他 controller(比如 Deployment)可以設置為 Always 。
通過 kubectl apply -f myjob.yml 啟動 Job。
DESIRED 和 SUCCESSFUL 都為 1,表示按照預期啟動了一個 Pod,并且已經成功執行。kubectl get pod 查看 Pod 的狀態:
以上是 Pod 成功執行的情況,如果 Pod 失敗了會怎么樣呢?
看完上述內容,你們掌握怎么用 k8s 運行一次性任務的方法了嗎?如果還想學到更多技能或想了解更多相關內容,歡迎關注丸趣 TV 行業資訊頻道,感謝各位的閱讀!