Menu Close

4.2.2. 작업 생성

작업 오브젝트를 생성하여 OpenShift Container Platform에서 작업을 생성합니다.

프로세스

작업을 생성하려면 다음을 수행합니다.

  1. 다음과 유사한 YAML 파일을 생성합니다.

    apiVersion: batch/v1
    kind: Job
    metadata:
      name: pi
    spec:
      parallelism: 1    1
      completions: 1    2
      activeDeadlineSeconds: 1800 3
      backoffLimit: 6   4
      template:         5
        metadata:
          name: pi
        spec:
          containers:
          - name: pi
            image: perl
            command: ["perl",  "-Mbignum=bpi", "-wle", "print bpi(2000)"]
          restartPolicy: OnFailure    6
    1. 필요한 경우 작업에서 병렬로 실행해야 하는 Pod 복제본 수를 지정합니다. 기본값은 1입니다.

      • 비병렬 작업의 경우 설정되지 않은 상태로 둡니다. 설정되지 않은 경우 기본값은 1입니다.
    2. 필요한 경우 작업이 완료된 것으로 표시하는 데 필요한 성공적인 Pod 완료 횟수를 지정합니다.

      • 비병렬 작업의 경우 설정되지 않은 상태로 둡니다. 설정되지 않은 경우 기본값은 1입니다.
      • 완료 횟수가 고정된 병렬 작업의 경우 완료 횟수를 지정합니다.
      • 작업 큐가 있는 병렬 작업의 경우 설정되지 않은 상태로 둡니다. 값을 설정하지 않는 경우 기본값은 parallelism입니다.
    3. 필요한 경우 작업을 실행할 수 있는 최대 기간을 지정합니다.
    4. 필요한 경우 작업 재시도 횟수를 지정합니다. 이 필드의 기본값은 6입니다.
    5. 컨트롤러에서 생성하는 Pod에 사용할 템플릿을 지정합니다.
    6. Pod 재시작 정책을 지정합니다.

      • Never. 작업을 재시작하지 않습니다.
      • OnFailure. 실패하는 경우에만 작업을 재시작합니다.
      • Always 작업을 항상 재시작합니다.

        OpenShift Container Platform에서 실패한 컨테이너에 재시작 정책을 사용하는 방법에 대한 자세한 내용은 Kubernetes 설명서의 예제 상태를 참조하십시오.

  2. 작업을 생성합니다.

    $ oc create -f <file-name>.yaml
참고

oc create job을 사용하여 단일 명령으로 작업을 생성하고 시작할 수도 있습니다. 다음 명령에서는 이전 예제에서 지정한 것과 유사한 작업을 생성하고 시작합니다.

$ oc create job pi --image=perl -- perl -Mbignum=bpi -wle 'print bpi(2000)'