AWS Glue 워크플로가 트리거되지 않는 이유는 무엇입니까?

2분 분량
0

AWS Glue 워크플로를 만들었지만 시작되지 않습니다. -또는- AWS Glue 워크플로의 구성 작업/크롤러 중 일부가 실행되고 있지 않습니다.

간략한 설명

AWS Glue 워크플로 또는 해당 구성 요소가 트리거되지 않으면 다음을 확인합니다.

  • 예약된 트리거가 소스 트리거로 사용되는 경우 활성화되었는지 확인합니다. 일정이 UTC 기준으로 언급되어 있고 cron 표현식에 모든 필수 필드가 포함되어 있는지 확인합니다.
  • 외부 구성 요소가 소스 트리거를 트리거하는 경우 외부 구성 요소가 오작동하지 않았는지 확인합니다.
  • 구성 요소를 트리거하는 데 사용되는 술어 조건이 워크플로 외부의 에이전트에 의해 충족되지 않았는지 확인합니다.
  • 구성 요소가 종속성 체인의 일부인 경우 업스트림 작업/크롤러가 단일 소스 트리거에 의해 동일한 워크플로의 일부로 시작되었는지 확인합니다.

해결 방법

워크플로가 시간 기반 트리거로 시작되지 않음

워크플로의 소스 트리거가 예약되어 있는 경우 다음을 확인합니다.

  • 트리거가 CREATED 상태가 아니라 ACTIVATED 상태인지 확인합니다. 트리거가 ACTIVATED 상태가 아닌 경우 트리거를 수동으로 활성화합니다.
  • 예약된 트리거에 대한 일정에 사용된 cron 표현식이 협정 세계시(UTC)로 표현되어 있는지 확인합니다. cron 표현식의 필드가 현지 시간대를 UTC로 변환한 것과 일치하는지 확인합니다. 또한 cron 표현식에 모든 필수 필드가 올바른 형식으로 포함되어 있는지 확인합니다. 자세한 내용은 작업 및 크롤러에 대한 시간 기반 일정을 참조하세요.

온디맨드 트리거로 시작되지 않는 워크플로

소스 트리거가 온디맨드이고 StartWorkflowRun API 호출을 사용하여 트리거하는 업스트림 엔터티가 있는 경우, 호출 엔터티가 올바르게 작동하는지 확인합니다.

조건부 트리거로 시작하지 않는 워크플로

트리거에 있는 술어 조건이 워크플로 외부의 에이전트에 의해 충족되지 않았는지 확인합니다. 외부 에이전트가 조건을 충족하면 트리거가 실행되지 않습니다. 조건부 트리거는 감시된 이벤트가 트리거에 의해 시작된 경우에만 시작됩니다.

예를 들어 다음 조건이 충족된다고 가정해 보겠습니다.

  • 트리거 TEST_TR에 의해 트리거되는 JOB_MAIN 작업이 있는 워크플로가 있습니다.
  • 트리거 TEST_TR은 현재 워크플로의 일부가 아닌 다른 작업 JOB_DEP 완료에 종속되어 있습니다.

이 경우 JOB_DEP가 성공적으로 완료되고 TEST_TR의 술어 로직 트리거가 충족되더라도 작업 JOB_MAIN이 실행되지 않습니다. 이는 술어 조건이 동일한 워크플로에 속하지 않는 에이전트에 의해 충족되기 때문입니다.

종속성 체인의 일부인 구성 요소 작업/크롤러에서 워크플로가 시작되지 않음

구성 작업/크롤러가 트리거에 의해 시작되는 업스트림 작업/크롤러의 완료에 종속되는지 확인합니다. 종속 작업/크롤러는 완료된 작업/크롤러가 트리거에 의해 시작된 경우에만 시작됩니다. 종속성 체인의 모든 작업/크롤러가 단일 예약된 트리거나 온디맨드 트리거의 하위 항목인지 확인합니다.

예를 들어 조건이 충족된다고 가정해 보겠습니다.

  • 워크플로가 작업 JOB_1을 시작하는 트리거 TEST_TR1로 시작됩니다.
  • 또 다른 트리거 TEST_TR2가 작업 JOB_2를 시작하려면 JOB_1의 완료에 종속됩니다.

이 경우 TEST_TR2TEST_TR2에 대한 술어 조건이 충족되어야 JOB_2를 시작합니다.

그러나 JOB_1이 온디맨드로 실행되고 TEST_TR1에 의해 시작되지 않으면 TEST_TR2에 대한 술어 조건이 충족되더라도 TEST_TR2JOB_2를 시작하지 않습니다.


관련 정보

AWS Glue 트리거

AWS Glue에서의 워크플로 제한

AWS 공식
AWS 공식업데이트됨 3년 전