k8s-第十一節-Job和CronJob

Job

Kubernetes jobs主要是針對短時和批量的工作負載。它是為了結束而運行的,而不是像deployment、replicasets、replication controllers和DaemonSets等其他對象那樣持續運行。

Kubernetes Jobs會一直運行到Job中指定的任務完成。也就是說,如果pods給出退出代碼0,那么Job就會退出。而在正常的Kubernetes中,無論退出代碼是什么,deployment對象在終止或出現錯誤時都會創建新的pod,以保持deployment的理想狀態。

CronJob

Job 和 CronJob 都是 Kubernetes 中的資源對象,用于定義需要執行的任務。它們的主要區別在于執行頻率和觸發條件。

Job 用于執行一次性任務,即僅執行一次的任務。Job 對象會創建一個或多個 Pod,并在它們完成任務后刪除它們。Job 的生命周期由 Kubernetes 自動管理,無需人工干預。

CronJob 用于執行周期性任務,即按照指定的時間間隔重復執行的任務。CronJob 對象會創建一個或多個 Job,并根據 Cron 表達式來確定任務的執行時間。CronJob 的生命周期由 Kubernetes 自動管理,無需人工干預。

時間周期是和Linux 一樣

schedule: "分 時 日 月 周"

適用場景

對于Kubernetes Jobs最好的用例實踐是:

批處理任務: 比如說你想每天運行一次批處理任務,或者在指定日程中運行。它可能是像從存儲庫或數據庫中讀取文件那樣,將它們分配給一個服務來處理文件。

運維/ad-hoc任務: 比如你想要運行一個腳本/代碼,該腳本/代碼會運行一個數據庫清理活動,甚至備份一個Kubernetes集群。

  • 一次性任務,例如數據導入、數據處理、批量任務等
  • 定時任務,例如定期備份數據、定期發送通知等
  • 批量任務,例如處理大量數據、發送大量通知等

如何在 Kubernetes 中使用 Job 和 CronJob 資源對象?

apiVersion: batch/v1
kind: Job
metadata:name: my-job
spec:template:spec:containers:- name: my-containerimage: my-imagecommand: ["echo", "Hello, World!"]restartPolicy: OnFailure

然后,你可以使用以下命令來創建和部署這個 Job 對象:

kubectl create -f job.yaml

如果你想要創建一個 CronJob 對象來執行一個周期性任務,你可以創建一個名為 cronjob.yaml 的文件,其中包含以下內容:

apiVersion: batch/v1beta1
kind: CronJob
metadata:name: my-cronjob
spec:schedule: "0 0 * * *"jobTemplate:spec:template:spec:containers:- name: my-containerimage: my-imagecommand: ["echo", "Hello, World!"]restartPolicy: OnFailure

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

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

相關文章

Pandas 學習筆記(四)--CSV文件

CSV文件 CSV(Comma-Separated Values,逗號分隔值,有時也稱為字符分隔值,因為分隔字符也可以不是逗號),其文件以純文本形式存儲表格數據(數字和文本)。 讀取與寫入 讀取csv文件 i…

可視化作品集(08):能源電力領域

能源電力領域的可視化大屏,有著巨大的用武之地,不要小看它。 監控能源生產和消耗情況: 通過可視化大屏,可以實時監控能源生產和消耗情況,包括發電量、能源供應情況、能源消耗情況等,幫助管理者及時了解能…

C語言 | Leetcode C語言題解之第218題天際線問題

題目: 題解: struct pair {int first, second; };struct Heap {struct pair* heap;int heapSize;bool (*cmp)(struct pair*, struct pair*); };void init(struct Heap* obj, int n, bool (*cmp)(struct pair*, struct pair*)) {obj->heap malloc(si…

調制信號識別系列 (一):基準模型

調制信號識別系列 (一):基準模型 說明:本文包含對CNN和CNNLSTM基準模型的復現,模型架構參考下述兩篇文章 文章目錄 調制信號識別系列 (一):基準模型一、論文1、DL-PR: Generalized automatic modulation classification method b…

軟件架構之操作系統

第 2 章操作系統 本章主要介紹操作系統的基本概念及其形成、發展歷史和主要類型,并指出操作系統的5 大管理功能。掌握操作系統原理的關鍵在于深入理解“一個觀點、兩條線索”。一個觀點是以資源管理的觀點來定義操作系統;兩條線索是指操作系統如何管理計…

【計算機畢業設計】020基于weixin小程序訂餐系統

🙊作者簡介:擁有多年開發工作經驗,分享技術代碼幫助學生學習,獨立完成自己的項目或者畢業設計。 代碼可以私聊博主獲取。🌹贈送計算機畢業設計600個選題excel文件,幫助大學選題。贈送開題報告模板&#xff…

C語言獲取當前時間

一共有兩段代碼&#xff0c;一個是獲取當前時間&#xff0c;一個是獲取到現在的總毫秒數 求關注&#x1f604; 互粉必回 獲取當前時間 #include <stdio.h> #include <time.h> int main() { time_t rawtime; struct tm * timeinfo; char buffer[20]; // 獲取當前…

Linux內核編譯與調試menuos-linux-3.18.6-在ubuntu20.04環境

1 具體操作 下載 linux-3.18.6內核 wget https://www.kernel.org/pub/linux/kernel/v3.x/linux-3.18.6.tar.xz解壓進入linux-3.18.6文件夾 tar -xvf linux-3.18.6.tar.xz cd linux-3.18.6/編譯 #make x86_64_defconfig # 為x86_64生成配置 #make alldefconfig make i3…

每天一個數據分析題(四百零十)- 主成分

實際應用中&#xff0c;關于主成分數量K的取值&#xff0c;下列說法錯誤的是&#xff08; &#xff09; A. 可以基于碎石圖進行判斷 B. 特征根從大到小排序&#xff0c;通常要求前 K 個特征根都大于 1 C. 通常要求 K 個主成分的累積方差比超過 80% D. 各個主成分之間的方向…

什么是區塊鏈的“智能合約”

區塊鏈的“智能合約”是一種存儲在區塊鏈上的計算機協議&#xff0c;它能夠自動執行合約條款&#xff0c;并在滿足預設條件時自動執行相關操作。智能合約通過編程語言&#xff08;如Solidity&#xff09;編寫&#xff0c;可以在去中心化的環境中運行&#xff0c;無需人工干預。…

spdlog一個非常好用的C++日志庫(七): 源碼分析之異常類spdlog_ex

目錄 1.自定義異常類spdlog_ex 1.1.通用異常 1.2.系統調用異常 1.3.what()函數 2.異常的使用 2.1.拋出異常 2.2.控制異常使用 1.自定義異常類spdlog_ex 標準庫異常類&#xff08;std::exception&#xff09;系列&#xff0c;能滿足大多數使用異常的場景&#xff0c;但對…

100359.統計X和Y頻數相等的子矩陣數量

1.題目描述 給你一個二維字符矩陣 grid&#xff0c;其中 grid[i][j] 可能是 X、Y 或 .&#xff0c;返回滿足以下條件的子矩陣數量&#xff1a; 包含 grid[0][0]X 和 Y 的頻數相等。至少包含一個 X。 示例 1&#xff1a; 輸入&#xff1a; grid [["X","Y",…

Avalonia中的樣式

文章目錄 前言樣式定義代碼切換樣式樣式主題前言 Avalonia的樣式是Styles,與WPF類似。用于在控件之間共享屬性設置用于在控件之間共享屬性設置,樣式由 Selector和屬性組成。 樣式定義 下面定義一個最簡單的樣式 <Window.Styles><Style Selector="TextBlock…

雙 Token 無感刷新機制實現

?作者簡介&#xff1a;熱愛Java后端開發的一名學習者&#xff0c;大家可以跟我一起討論各種問題喔。 &#x1f34e;個人主頁&#xff1a;Hhzzy99 &#x1f34a;個人信條&#xff1a;堅持就是勝利&#xff01; &#x1f49e;當前專欄&#xff1a;項目實踐 &#x1f96d;本文內容…

微信小程序性能與體驗優化

1. 合理的設置可點擊元素的響應區域大小&#xff1b; 比較常見的是頁面的點擊按鈕太小&#xff0c;用戶點擊不到按鈕&#xff0c;這樣用戶體驗很不好。 2. 避免渲染頁面耗時過長&#xff1b; 當頁面渲染時間過長的話&#xff0c;會讓用戶感覺非常卡頓&#xff0c;當出現這種…

密室逃脫——收集版修改測試

一、原版修改 1、導入資源 Unity Learn | 3D Beginner: Complete Project | URP 2、設置Scene 刪除SampleScene&#xff0c;打開UnityTechnologies-3DBeginnerComplete下的MainScene 3、降低音量 (1) 打開Hierarchy面板上的Audio降低音量 (2) 打開Prefabs文件夾&#xf…

lnmp php7 安裝ssh2擴展

安裝ssh2擴展前必須安裝libssh2包 下載地址: wget http://www.libssh2.org/download/libssh2-1.11.0.tar.gzwget http://pecl.php.net/get/ssh2-1.4.tgz &#xff08;這里要換成最新的版本&#xff09; 先安裝 libssh2 再安裝 SSH2: tar -zxvf libssh2-1.11.0.tar.gzcd libss…

若依框架(RuoYi)中實現部門及子部門用戶查詢的SQL邏輯解析

前言 在基于若依框架&#xff08;RuoYi&#xff09;的項目開發中&#xff0c;經常會遇到需要根據部門ID查詢其下屬所有用戶的需求&#xff0c;包括直接隸屬于該部門的用戶以及屬于其子部門的所有用戶。這一需求在組織架構管理、權限分配等場景中尤為常見。本文將深入解析一段典…

【深入理解計算機系統——2信息的表示和處理】

計算機的本質就是二進制&#xff0c;0/1&#xff0c;稱之為bit&#xff08;位&#xff09;&#xff0c;一個位沒有什么意義&#xff0c;當同時擁有多個位&#xff0c;并且加上某種解釋&#xff0c;就可以表示任何有限集合的元素。&#xff08;為什么是有限&#xff1f;因為用bi…

【日志信息管理】管理日志信息的類

日志用于記錄程序的執行記錄包括程序的出錯記錄&#xff0c;程序致命退出原因&#xff0c;程序的正常執行記錄。這樣我們就可以很快的察覺程序的錯誤原因、執行狀況等等&#xff0c;因此管理日志信息是非常重要的。 日志一般由以下部分組合&#xff1a; 日志時間、日志等級、…