Exercise 4.2: Designing Applications With Duration: Create a Job

  1. Job 생성

    cat <<EOF | kubectl create -f -
    apiVersion: batch/v1
    kind: Job
    metadata:
      name: sleepy
    spec:
      template:
        spec:
          containers:
          - name: resting
            image: busybox
            command: ["/bin/sleep"]
            args: ["3"]
          restartPolicy: Never
    EOF
  2. 생성된 Job 상태 확인

    kubectl get job sleepy
  3. Job의 상세 내용 확인

    kubectl describe job sleepy
  4. 생성된 Job에 명시된 설정값 확인

    kubectl get job sleepy -o yaml | grep -A 5 ^spec
  5. completions이 무엇을 의미하는지 확인

    kubectl explain job.spec.completions
  6. Job 삭제

    kubectl delete job sleepy
  7. Job 생성

    cat <<EOF | kubectl create -f -
    apiVersion: batch/v1
    kind: Job
    metadata:
      name: sleepy
    spec:
      completions: 5
      template:
        spec:
          containers:
          - name: resting
            image: busybox
            command: ["/bin/sleep"]
            args: ["3"]
          restartPolicy: Never
    EOF
  8. 생성된 Job 및 Pod 상태 확인

    kubectl get job,pod -l job-name=sleepy
  9. Job 삭제

    kubectl delete job sleepy
  10. Job 생성

    cat <<EOF | kubectl create -f -
    apiVersion: batch/v1
    kind: Job
    metadata:
      name: sleepy
    spec:
      completions: 5
      parallelism: 2
      template:
        spec:
          containers:
          - name: resting
            image: busybox
            command: ["/bin/sleep"]
            args: ["3"]
          restartPolicy: Never
    EOF
  11. 생성된 Job 및 Pod 상태 확인

    kubectl get job,pod -l job-name=sleepy
  12. Job 삭제

    kubectl delete job sleepy
  13. Job 생성

    cat <<EOF | kubectl create -f -
    apiVersion: batch/v1
    kind: Job
    metadata:
      name: sleepy
    spec:
      completions: 5
      parallelism: 2
      activeDeadlineSeconds: 15
      template:
        spec:
          containers:
          - name: resting
            image: busybox
            command: ["/bin/sleep"]
            args: ["5"]
          restartPolicy: Never
    EOF
  14. 생성된 Job 상태 확인

    kubectl get job sleepy
  15. 생성된 Job의 상태값 확인

    kubectl get job sleepy -ojsonpath='{.status.conditions}' | jq
  16. Job 삭제

    kubectl delete job sleepy

Last updated