Kubernetes - Pekerjaan

Fungsi utama sebuah pekerjaan adalah untuk membuat satu atau lebih pod dan melacak keberhasilan dari sebuah pod. Mereka memastikan bahwa jumlah pod yang ditentukan berhasil diselesaikan. Jika sejumlah pod berhasil yang berhasil diselesaikan, tugas tersebut dianggap selesai.

Membuat Pekerjaan

Gunakan perintah berikut untuk membuat pekerjaan -

apiVersion: v1
kind: Job ------------------------> 1
metadata:
   name: py
   spec:
   template:
      metadata
      name: py -------> 2
      spec:
         containers:
            - name: py ------------------------> 3
            image: python----------> 4
            command: ["python", "SUCCESS"]
            restartPocliy: Never --------> 5

Dalam kode di atas, kami telah mendefinisikan -

  • kind: Job → Kami telah mendefinisikan jenisnya sebagai Ayub yang akan memberi tahu kubectl bahwa yaml file yang digunakan adalah untuk membuat pod jenis pekerjaan.

  • Name:py → Ini adalah nama template yang kita gunakan dan spesifikasi mendefinisikan template.

  • name: py → kami telah memberi nama sebagai py di bawah spesifikasi container yang membantu mengidentifikasi Pod yang akan dibuat darinya.

  • Image: python → gambar yang akan kita tarik untuk membuat wadah yang akan berjalan di dalam pod.

  • restartPolicy: Never →Kondisi image restart ini diberikan sebagai never yang artinya jika container dimatikan atau jika salah maka tidak akan restart sendiri.

Kami akan membuat pekerjaan menggunakan perintah berikut dengan yaml yang disimpan dengan nama py.yaml.

$ kubectl create –f py.yaml

Perintah di atas akan membuat pekerjaan. Jika Anda ingin memeriksa status pekerjaan, gunakan perintah berikut.

$ kubectl describe jobs/py

Perintah di atas akan membuat pekerjaan. Jika Anda ingin memeriksa status pekerjaan, gunakan perintah berikut.

Pekerjaan Terjadwal

Pekerjaan terjadwal di Kubernetes menggunakan Cronetes, yang mengambil tugas Kubernetes dan meluncurkannya di cluster Kubernetes.

  • Menjadwalkan pekerjaan akan menjalankan pod pada titik waktu tertentu.
  • Pekerjaan parodi dibuat untuknya yang memanggil dirinya sendiri secara otomatis.

Note - Fitur pekerjaan terjadwal didukung oleh versi 1.4 dan API betch / v2alpha 1 dihidupkan dengan melewatkan –runtime-config=batch/v2alpha1 saat membuka server API.

Kami akan menggunakan yaml yang sama yang kami gunakan untuk membuat pekerjaan dan menjadikannya pekerjaan terjadwal.

apiVersion: v1
kind: Job
metadata:
   name: py
spec:
   schedule: h/30 * * * * ? -------------------> 1
   template:
      metadata
         name: py
      spec:
         containers:
         - name: py
         image: python
         args:
/bin/sh -------> 2
-c
ps –eaf ------------> 3
restartPocliy: OnFailure

Dalam kode di atas, kami telah mendefinisikan -

  • schedule: h/30 * * * * ? → Untuk menjadwalkan pekerjaan agar dijalankan setiap 30 menit.

  • /bin/sh: Ini akan masuk ke dalam wadah dengan / bin / sh

  • ps –eaf → Akan menjalankan perintah ps -eaf pada mesin dan mencantumkan semua proses yang berjalan di dalam wadah.

Konsep pekerjaan terjadwal ini berguna saat kita mencoba membangun dan menjalankan serangkaian tugas pada titik waktu tertentu dan kemudian menyelesaikan prosesnya.