Kubernetes - İşler
Bir işin ana işlevi, kapsüllerin başarısı hakkında bir veya daha fazla bölme ve parça oluşturmaktır. Belirtilen sayıda kapsülün başarıyla tamamlanmasını sağlarlar. Belirtilen sayıda başarılı bölme çalıştırması tamamlandığında, iş tamamlanmış sayılır.
Bir İş Oluşturmak
Bir iş oluşturmak için aşağıdaki komutu kullanın -
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
Yukarıdaki kodda, -
kind: Job → Türünü anlatacak olan iş olarak tanımladık kubectl bu yaml kullanılan dosya bir iş türü bölmesi oluşturmaktır.
Name:py → Bu, kullandığımız şablonun adıdır ve özellik, şablonu tanımlar.
name: py → olarak bir isim verdik py bundan oluşturulacak Kapsülü tanımlamaya yardımcı olan kapsayıcı spesifikasyonu altında.
Image: python → bölmenin içinde çalışacak kabı oluşturmak için çekeceğimiz görüntü.
restartPolicy: Never →Bu görüntü yeniden başlatma koşulu hiçbir zaman olarak verilir; bu, kap öldürülürse veya yanlışsa, kendini yeniden başlatmayacağı anlamına gelir.
İsmi ile kaydedilmiş yaml ile aşağıdaki komutu kullanarak job oluşturacağız. py.yaml.
$ kubectl create –f py.yaml
Yukarıdaki komut bir iş yaratacaktır. Bir işin durumunu kontrol etmek istiyorsanız, aşağıdaki komutu kullanın.
$ kubectl describe jobs/py
Yukarıdaki komut bir iş yaratacaktır. Bir işin durumunu kontrol etmek istiyorsanız, aşağıdaki komutu kullanın.
Planlanmış İş
Kubernetes'te planlanmış iş kullanımları Cronetes, Kubernetes işini alır ve bunları Kubernetes kümesinde başlatır.
- Bir işin planlanması, belirli bir zamanda bir bölmeyi çalıştırır.
- Kendini otomatik olarak çağıran parodik bir iş yaratılır.
Note - Planlanmış bir işin özelliği sürüm 1.4 tarafından desteklenir ve betch / v2alpha 1 API, –runtime-config=batch/v2alpha1 API sunucusunu getirirken.
İşi oluşturmak için kullandığımız yaml'ı kullanacağız ve onu planlanmış bir iş yapacağız.
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
Yukarıdaki kodda, -
schedule: h/30 * * * * ? → İşi her 30 dakikada bir çalışacak şekilde programlamak.
/bin/sh: Bu, / bin / sh ile konteynere girecek
ps –eaf → Makinede ps -eaf komutunu çalıştıracak ve bir kap içinde çalışan tüm işlemleri listeleyecektir.
Bu planlanmış iş kavramı, belirli bir zamanda bir dizi görevi oluşturmaya ve çalıştırmaya ve ardından işlemi tamamlamaya çalıştığımızda kullanışlıdır.