파이프라인 태스크의 재시도 구성

태스크의 재시도를 구성하여 파이프라인 태스크가 실패할 경우 재실행해야 하는지 지정할 수 있습니다. 실패 시 태스크를 다시 실행하는 시도 횟수와 후속 재시도 사이의 지연 시간을 설정할 수 있습니다.

다음 코드 샘플을 사용하여 Kubeflow Pipelines SDK의 set_retry 메서드를 사용하여 train_op라는 파이프라인 작업의 실패 정책을 구성합니다.

from kfp import dsl

@dsl.pipeline(name='custom-container-pipeline')
def pipeline():
  generate = generate_op()
  train = (
    train_op(
      training_data=generate.outputs['training_data'],
      test_data=generate.outputs['test_data'],
      config_file=generate.outputs['config_file'])
    .set_retry(
      num_retries=NUMBER_OF_RETRIES,
      backoff_duration='BACKOFF_DURATION',
      backoff_factor=BACKOFF_FACTOR,
      backoff_maxk_duration='BACKOFF_MAX_DURATION'
    )

다음을 바꿉니다.

  • NUMBER_OF_RETRIES: 실패 시 태스크를 재시도할 횟수입니다.

  • BACKOFF_DURATION: 선택사항. 태스크가 실패한 후 다시 시도하기 전에 대기하는 시간입니다. 이 매개변수를 설정하지 않으면 기본적으로 기간이 0s로 설정됩니다.

  • BACKOFF_FACTOR: 선택사항. 후속 재시도마다 백오프 기간에 곱하는 계수입니다. 이 매개변수를 설정하지 않으면 기본적으로 백오프 계수가 2.0로 설정됩니다.

  • BACKOFF_MAX_DURATION: 선택사항. 후속 재시도 사이의 최대 백오프 시간입니다. 이 매개변수를 설정하지 않으면 최대 시간은 기본적으로 3600s로 설정됩니다.