1. 程式人生 > 其它 >k8s job控制器-執行一次性任務

k8s job控制器-執行一次性任務

1. job控制器-執行一次性任務

  • Job分為普通任務(Job)和定時任務(CronJob)

    • 一次性執行
  • 應用場景:離線資料處理,視訊解碼等業務

  • 示例程式碼:

    [root@k8s-master deployment]# vim job.yaml
    [root@k8s-master deployment]# cat job.yaml
    apiVersion: batch/v1
    kind: Job
    metadata:
      name: pi
    spec:
      template:
        spec:
          containers:
          - name: pi
            image: perl
            command: ["perl", "-Mbignum=bpi", "-wle", "print bpi(2000)"]
          restartPolicy: Never
      backoffLimit: 4 # 重試次數
    
    

2. 案例

  • 編寫程式碼

    [root@k8s-master deployment]# vim job.yaml
    [root@k8s-master deployment]# cat job.yaml
    apiVersion: batch/v1
    kind: Job
    metadata:
      name: pi
    spec:
      template:
        spec:
          containers:
          - name: pi
            image: perl
            command: ["perl", "-Mbignum=bpi", "-wle", "print bpi(2000)"]
          restartPolicy: Never
      backoffLimit: 4 # 重試次數
    
    
  • 執行程式碼

    [root@k8s-master deployment]# kubectl apply -f job.yaml 
    job.batch/pi created
    
  • 查詢狀態

    [root@k8s-master deployment]# kubectl get pods
    NAME       READY   STATUS      RESTARTS   AGE
    pi-7bbgz   0/1     Completed   0          5m49s
    
    
  • 日誌檢視

    [root@k8s-master deployment]# kubectl logs  pi-7bbgz
    3.1415926535897932384626433832795028841971693993751058209749445923078164062862089986280348253421170679821480865132823066470938446095505822317253594081284811174502841027019385211055596446229489549303819644288109756659334461284756482337867831652712019091456485669234603486104543266482133936072602491412737245870066063155881748815209209628292540917153643678925903600113305305488204665213841469519415116094330572703657595919530921861173819326117931051185480744623799627495673518857527248912279381830119491298336733624406566430860213949463952247371907021798609437027705392171762931767523846748184676694051320005681271452635608277857713427577896091736371787214684409012249534301465495853710507922796892589235420199561121290219608640344181598136297747713099605187072113499999983729780499510597317328160963185950244594553469083026425223082533446850352619311881710100031378387528865875332083814206171776691473035982534904287554687311595628638823537875937519577818577805321712268066130019278766111959092164201989380952572010654858632788659361533818279682303019520353018529689957736225994138912497217752834791315155748572424541506959508295331168617278558890750983817546374649393192550604009277016711390098488240128583616035637076601047101819429555961989467678374494482553797747268471040475346462080466842590694912933136770289891521047521620569660240580381501935112533824300355876402474964732639141992726042699227967823547816360093417216412199245863150302861829745557067498385054945885869269956909272107975093029553211653449872027559602364806654991198818347977535663698074265425278625518184175746728909777727938000816470600161452491921732172147723501414419735685481613611573525521334757418494684385233239073941433345477624168625189835694855620992192221842725502542568876717904946016534668049886272327917860857843838279679766814541009538837863609506800642251252051173929848960841284886269456042419652850222106611863067442786220391949450471237137869609563643719172874677646575739624138908658326459958133904780275901