3
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

[Kubernetes]Jobの動作を確認する 1

Posted at

はじめに

これまでDeploymentの動作を確認してきましたが、これからはJobの動作を確認したいと思います。

JobとはReplicaSetと同様にPodを管理する上位リソースですが、ReplicaSetと違って何かしらのジョブを実行したら、そのPodは削除されます。
なので、定常的な業務を動かすのではなく、バッチ処理的な業務での活用が考えられます。代表的なところだと、バックアップ、データ連携などでしょうか。

Jobの作成

以下のマニフェスト(yamlファイル)を作成しました。

sampleJob.yaml
apiVersion: batch/v1
kind: Job
metadata:
  name: sample-job1
spec:
  template:
    spec:
      containers:
      - name: sample-job1
        image: centos:latest
        command: ["echo"]
        args: ["hoge"]
      restartPolicy: Never

Cent OSのコンテナをデプロイして、そこでechoで"hoge"と表示させるだけのJobです。

applyします。

$ kubectl apply -f sampleJob.yaml
job.batch/sample-job1 created

確認

作成したJobを確認します。

$ kubectl get jobs -o wide
NAME          COMPLETIONS   DURATION   AGE   CONTAINERS    IMAGES          SELECTOR
sample-job1   0/1           21s        21s   sample-job1   centos:latest   controller-uid=7fc0d5b6-663e-4a7a-b78d-0290faa3729d
$ kubectl get pod -o wide
NAME                READY   STATUS      RESTARTS   AGE   IP              NODE           NOMINATED NODE   READINESS GATES
sample-job1-m85pt   0/1     Completed   0          64s   192.168.79.78   k8s-worker01   <none>           <none>

STATUSがReplicaSetとと違って、「Completed」となってますね。Jobがもう終わって、Podは削除されているようです。

Jobがちゃんと実行されたのか、logを確認してみます。

$ kubectl logs sample-job1-m85pt
hoge

ちゃんと実行されてますね。

まとめ

一つのJobの実行が終わったらすぐにその環境を削除するなんて、まさにマイクロサービスって感じがしますね。
Jobをうまく利用できるとHWリソースの節約にもなりますので、これからこのJobの動作を確認したいと思います。

3
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?