작업 자동 재시도
실패한 작업을 자동으로 작업을 재시도하도록 허용하는 재시도 전략을 작업 및 작업 정의에 적용할 수 있습니다. 작업이 실패하는 상황은 다음과 같습니다.
-
컨테이너 작업에서 0이 아닌 종료 코드 반환
-
Amazon EC2 인스턴스 실패 또는 종료
-
내부 AWS 서비스 오류 또는 중단
작업이 작업 대기열로 제출되어 RUNNING
상태가 되면 한 번의 시도로 간주됩니다. 기본적으로 각 작업에는 SUCCEEDED
또는 FAILED
작업 상태가 되기 위해 한 번의 시도가 주어집니다. 그러나 작업 정의와 작업 제출 워크플로를 통해 1회부터 10회까지 재시도 전략을 지정할 수 있습니다. evaluateOnExit를 지정하는 경우 최대 5개의 재시도 전략을 포함할 수 있습니다. evaluateOnExit를 지정했지만 일치하는 재시도 전략이 없는 경우 작업이 다시 시도됩니다. 종료와 일치하지 않는 작업의 경우 어떤 이유로든 종료되는 최종 항목을 추가하세요. 예를 들어, 이 evaluateOnExit
객체에는 RETRY
작업이 있는 두 개의 항목과 EXIT
작업이 있는 최종 항목이 있습니다.
"evaluateOnExit": [ { "action": "RETRY", "onReason": "AGENT" }, { "action": "RETRY", "onStatusReason": "Task failed to start" }, { "action": "EXIT", "onReason": "*" } ]
실행 시간 시 AWS_BATCH_JOB_ATTEMPT
환경 변수가 컨테이너의 해당 작업 시도 횟수에 설정됩니다. 첫 번째 시도에 1
(이)가 지정되고 이후 시도는 2, 3, 4 등과 같이 오름차순으로 횟수가 지정됩니다.
예를 들어, 어떤 이유로든 작업 시도가 실패하고 재시도 구성에 지정된 시도 횟수가 AWS_BATCH_JOB_ATTEMPT
수보다 크다고 가정해 보겠습니다. 그러면 작업이 다시 RUNNABLE
상태로 돌아옵니다. 자세한 내용은 작업 상태 단원을 참조하십시오.
참고
취소되거나 종료된 작업은 재시도되지 않습니다. 잘못된 작업 정의로 인해 실패한 작업도 재시도되지 않습니다.
자세한 내용은 재시도 전략, 단일 노드 작업 정의 생성 , 자습서: 작업 제출 및 중지된 태스크 오류 코드를 참조하세요.