【K8s】專題四(6):Kubernetes 控制器之 Job

以下內容均來自個人筆記并重新梳理,如有錯誤歡迎指正!如果對您有幫助,煩請點贊、關注、轉發!歡迎掃碼關注個人公眾號!

公眾號二維碼


目錄

一、基本介紹

二、工作原理

三、相關特性

四、資源清單(示例)

五、常用操作


一、基本介紹

Job 控制器是 Kubernetes 中用于運行一次性任務的 API 對象,它負責啟動指定數量的 Pod,通過跟蹤記錄達到 Completed 狀態的?Pod 個數,并判斷是否達到設定的閾值來確保這些 Pod 成功完既定任務。

Job 通常用于部署一次性任務或批處理任務。


二、工作原理
  • 定義對象:用戶定義一個 Job 對象,指定 Pod 模板和其他配置選項
  • 調度 Pod:Kubernetes 根據 Job 的定義創建 PodPod 被調度到節點后開始執行任務
  • 監控 Pod:Job 控制器會監控這些 Pod 的狀態,確保它們成功完成任務
  • 完成任務:當所有 Pod 都成功完成任務后,Job 狀態會被標記為 Completed
  • 清理資源:完成的 Job 及對應的 Pod 會在一定時間后被系統自動清理


三、相關特性
  • 并行執行:Job 可以指定并行運行的 Pod 數量,允許任務并行執行以提高效率
  • 成功計數:Job 控制器會跟蹤成功完成任務的 Pod 數量,直到達到用戶指定的完成數量
  • 失敗重試:Job 可以配置重試策略,當 Pod 失敗時可以重新啟動新的 Pod 來嘗試完成任務
  • 自動清理:Job 完成后,相關的資源(如 Pod)會被自動清理,減少資源浪費
  • 依賴管理:Job 可以設置依賴,確保任務按照特定的順序執行
  • 生命周期:Job 提供了一種機制來管理任務的生命周期,包括任務的啟動、監控、完成和清理
  • 彈性伸縮:可以根據任務的需求動態調整并行執行的 Pod 數量
  • 監控和日志:可以對 Job 的執行情況進行監控,并收集相關的日志信息,方便問題排查和性能分析


四、資源清單(示例)
# job.yaml
apiVersion: batch/v1
kind: Job
metadata:name: demo-job
spec:backoffLimit: 3completions: 1parallelism: 1ttlSecondsAfterFinished: 20template:metadata:labels:app: demo-jobspec:restartPolicy: Nevercontainers:- name: demo-containerimage: busyboxcommand:- sh- -c- for i in 1 2 3 4 5 6;do echo $i;done🔔 默認情況下,Job 任務運行失敗或異常結束時,Pod 狀態會變為Error,同時創建新的 Pod 繼續運行任務
🔔 backoffLimit:指定任務運行失敗時,嘗試重新運行任務的次數,默認為 6 次,0 表示不嘗試重新運行
🔔 completions: 指定任務需要完成的次數
🔔 parallelism: 指定并行運行的任務個數
🔔 ttlSecondsAfterFinished:任務完成后,自動清理 Pod 的時間(單位s)

上述 job.yaml 文件定義了一個名為 demo-job 的 Job?對象,每個 Pod 包含一個名為 demo-container 的容器,該容器使用 busybox 鏡像,啟動后執行一次性任務(打印數字 1 ~ 6)。

說明:可以通過以下命令查看 Job 資源清單支持定義的內容

kubectl explain job --recursive


五、常用操作

1、創建 Job

kubectl create -f job.yaml
或
kubectl apply -f job.yaml


2、查看 Job

# 查看實例列表
kubetcl get job# 查看詳細信息
kubectl describe job demo-job


3、刪除 Job

# 方式一:命令行
kubectl delete job demo-job# 方式二:資源清單
kubectl delete -f job.yaml

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/web/23072.shtml
繁體地址,請注明出處:http://hk.pswp.cn/web/23072.shtml
英文地址,請注明出處:http://en.pswp.cn/web/23072.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

C語言經典習題20

一編寫一個函數用于計算高于平均分的人數 編寫一個函數int fun(float s[],int n),用于計算高于平均分的人數,并作為函數值返回,其中數組s中存放n位學生的成績。再編寫一個主函數,從鍵盤輸入一批分數(用-1來結束輸入&a…

電路分析答疑 1

三要素法求解的時候, 電容先求U,再利用求導求I 電感先求I,再利用求導求U 若I的頭上沒有點點,那就是求有效值 疊加定理,不要忘記 若電流值或者電壓值已經給出來了,那就說明這一定是直流電。 在畫畫圈的時候…

數據庫(25)——多表關系介紹

在項目開發中,進行數據庫表結構設計時,會根據業務需求及業務模塊之間的關系,分析并設計表結構,各個表之間的結構基本上分為三種:一對多,多對多,一對一。 一對多 例如,一個學校可以有…

Mac修改Mysql8.0密碼

轉載請標明出處:http://blog.csdn.net/donkor_/article/details/139392605 文章目錄 前言修改密碼Step1:修改my.conf文件Step2:添加配置skip-grant-tablesStep3:重啟mysql服務Step4:進入mysqlStep5:刷新權限Step6:修改密碼Step7:再次刷新權限Step8:刪除/注釋 skip-…

DNS域名

DNS域名 DNS是域名系統的簡稱 域名和ip地址之間的映射關系 互聯網中,ip地址是通信的唯一標識 訪問網站,域名,ip地址不好記,域名朗朗上口,好記。 域名解析的目的就是為了實現,訪問域名就等于訪問ip地址…

【Python】 獲取當前日期的Python代碼解析與應用

標題:Python中獲取當前日期的簡單指南 基本原理 在Python中,獲取當前日期是一個常見的需求,尤其是在處理日志、數據記錄和時間相關的任務時。Python提供了多種方式來獲取和處理日期和時間,其中最常用的模塊是datetime。datetime…

多客陪玩系統-開源陪玩系統平臺源碼-支持游戲線上陪玩家政線下預約等多場景應用支持H5+小程序+APP

多客陪玩系統-開源陪玩系統平臺源碼-支持游戲線上陪玩家政按摩線下預約等多場景應用支持H5小程序APP 軟件架構 前端:Uniapp-vue2.0 后端:Thinkphp6 前后端分離 前端支持: H5小程序雙端APP(安卓蘋果) 安裝教程 【商業…

學習VUE3——組件(一)

組件注冊 分為全局注冊和局部注冊兩種。 全局注冊: 在main.js或main.ts中,使用 Vue 應用實例的 .component() 方法,讓組件在當前 Vue 應用中全局可用。 import { createApp } from vue import MyComponent from ./App.vueconst app crea…

11、“十四五”大數據產業發展規劃

數據是新時代重要的生產要素, 是國家基礎性戰略資源。 大數據是數據的集合, 以容量大、 類型多、 速度快、 精度準、 價值高為主要特征, 是推動經濟轉型發展的新動力,是提升政府治理能力的新途徑, 是重塑國家競爭優勢的新機遇。 大數據產業是以數據生成、 采集、 存儲、 加…

QT C++ QTableWidget 表格合并 setSpan 簡單例子

這里說的合并指的是單元格,不是表頭。span的意思是跨度、寬度、范圍。 setSpan函數需要設定行、列、行跨幾格,列跨幾格。 //函數原型如下 void QTableView::setSpan(int row, i nt column, 、 int rowSpanCount,/*行跨過的格數*/ int columnSpanCount…

【算法無用系列】電影推薦——余弦相似度計算用戶相似度原理

【算法無用系列】通過余弦相似度計算電影、用戶相似度 話不多說,本文通過電影推薦系統中,基于余弦相似度算法計算出用戶相似和電影相似原理。希望可以幫助一些代碼不懂的同學一些思路。 記錄用戶電影評分數據 一般情況來說,會根據用戶的行為…

什么是數字化轉型?

作者: 峽山老曹 數字神化 ”企業如何實現數字化轉型“是擺在現代企業面前一個無法回避的問題,數字化轉型的重要性不容忽視,它不僅是企業適應數字化時代的必然要求,更是提升競爭力、實現可持續發展的關鍵。隨著科技的飛速發展和市場…

學會spring boot 的這些技巧,編程瞬間變得簡單了,效率也提高了!

在Spring Boot應用中,斷言主要用于測試環境中驗證代碼行為是否符合預期。雖然Spring Boot自身不直接包含斷言庫,但通常我們會使用JUnit(一個廣泛應用于Java的單元測試框架)來進行測試,其中包含了豐富的斷言方法來幫助我們進行各種條件驗證。下面通過一些具體的示例來詳細說…

二叉樹的層序遍歷-力扣

本題是二叉樹的層序遍歷,通過一個隊列來控制遍歷的節點,二叉樹每層的節點和上一層入隊的節點個數是相同的,根據這一點編寫循環條件。 /*** Definition for a binary tree node.* struct TreeNode {* int val;* TreeNode *left;* …

八、C語言:操作符詳解

一、移位操作符 1.1左移操作 左邊丟棄,右邊補0 1.2右移操作 算數右移:右邊丟棄,左邊補原符號位 邏輯右移:右邊丟棄,左邊補0 int main() {int a -1;int b a >> 1;printf("b%d\n",b);return 0; } 原碼…

【Linux進程篇】Linux進程管理應用——虛假的shell腳本

W...Y的主頁 😊 代碼倉庫分享💕 前言:我們已經了解了進程的工作原理,并且學習了進程創建、進程終止、進程等待以及進程程序替換。為了更好的鞏固這些知識,我們可以創建一個簡易的shell命令行。 目錄 做一個簡易的s…

GAT1399協議分析(六)--校時

一、官方消息定義 DeviceIDType :GA/T1400.1,采集設備、 卡口點位、 采集系統、分析系統、視圖庫、應用平臺等設備編碼規則 TimeCorrectModeType: dateTime時間格式: TimeZone:時區,GAT1400里面沒有找到具體內容&…

臥式攪拌機:一鍵自動稱重輕松搞定

在現代化工業生產中,G效、精準的設備是提高生產效率、降低生產成本。近年來,臥式攪拌機一鍵自動稱重包裝機的出現,無疑為眾多行業帶來了變革。這種集攪拌、稱重、包裝于一體的智能化設備,以其G效、便捷、精準的特點,迅…

六軸機器手臂運動控制——直流伺服反饋系統設計(比賽項目計劃書+設計總結+硬件+源代碼+上位機等)

TW的硬件一直很強,這是難得的硬件創新比賽的優秀作品,資料非常完整理。 硬件設計,源碼,項目計劃書,甚至包含了事后的復盤總結文檔。 是不可多得的好資料。 項目系統框架圖 1. 硬件系統框架圖 (請以方塊圖形式呈現) …

C#.net MassTransit和DotNetCore.CAP區別

MassTransit和DotNetCore.CAP對比 https://github.com/MassTransit/MassTransit https://github.com/dotnetcore/CAP MassTransit和DotNetCore.CAP是兩種不同的.NET庫,它們在核心概念、設計目的和技術實現等方面存在差異。具體分析如下: 核心概念 Mas…