YARN에서 애플리케이션이 완료되었는데도 Amazon EMR 단계가 실행되는 이유는 무엇인가요?

2분 분량
0

해당 Apache Spark 또는 YARN 애플리케이션이 완료되었는데도 Amazon EMR 단계가 여전히 실행 상태입니다.

해결 방법

이 오류를 해결하려면 다음 방법 중 하나를 사용합니다.

  • 각 YARN 애플리케이션의 상태를 확인한 다음 단계를 종료합니다.
  • AWS Command Line Interface(AWS CLI)를 사용하여 수동으로 단계 ID를 취소합니다.

YARN 애플리케이션의 상태를 확인한 다음 단계를 종료합니다.

1.    단계 로그 stderr 파일에서 YARN applicationId를 확인합니다. 자세한 내용은 Amazon EMR에서 실패한 단계의 문제를 해결하려면 어떻게 해야 하나요?를 참조하세요.

2.    SSH를 사용하여 프라이머리 노드에 연결합니다.

3.    다음 YARN 명령을 사용하여 YARN 애플리케이션의 상태를 확인할 수 있습니다. 다음 예제 명령에서 application_id를 자신의 애플리케이션 ID로 바꿉니다. 애플리케이션 ID 예: application_1234567891011_001

yarn application -status application_id

또는 다음 YARN 명령을 사용하여 모든 애플리케이션을 나열합니다.

yarn application -list -appStates ALL

4.    애플리케이션 상태에 대한 이전 명령의 출력을 확인합니다.

Application-States: [NEW, NEW_SAVING, SUBMITTED, ACCEPTED, RUNNING, FINISHED, FAILED, KILLED]

다음은 완료된 애플리케이션의 예제 출력입니다.

Progress : 100%
State : FINISHED
Final-State : SUCCEEDED

위 명령의 출력 상태가 FINISHED, FAILED 또는 KILLED인 경우 YARN 애플리케이션이 완료된 것입니다.

애플리케이션 상태가 NEW, NEW_SAVING, SUMBITTED, ACCEPTED 또는 RUNNING인 경우 YARN 애플리케이션이 계속 실행되고 있는 것입니다. 애플리케이션이 완료될 때까지 기다리거나 애플리케이션을 종료하여 단계를 취소하세요.

7.    다음 명령을 실행하여 애플리케이션을 종료합니다. 다음 예제 명령에서 application_id를 자신의 애플리케이션 ID로 바꿉니다. 애플리케이션 ID 예: application_1234567891011_001

yarn application -kill application_id

8.    애플리케이션을 종료한 후 Amazon EMR 단계의 상태를 다시 확인합니다.

AWS CLI를 사용하여 Amazon EMR 단계를 수동으로 취소

참고: AWS CLI 명령을 실행할 때 오류가 발생하는 경우, 최신 버전의 AWS CLI를 사용하고 있는지 확인합니다.

1.    describe-step 명령을 사용하면 단계의 상태를 볼 수 있습니다. 다음 명령에서 cluster-idstep-id를 사용 사례에 맞는 올바른 값으로 바꾸세요.

aws emr describe-step --cluster-id j-xxxxxxxxxxxxx --step-ids s-xxxxxxxx

2.    cancel-steps 명령을 사용하여 단계를 취소합니다. 다음 명령에서 cluster-idstep-id를 사용 사례에 맞는 올바른 값으로 바꾸세요.

aws emr cancel-steps --cluster-id j-xxxxxxxxxxxxx \
--step-ids s-3M8DXXXXXXXXX \
--step-cancellation-option SEND_INTERRUPT

자세한 내용은 단계 취소를 참조하세요.


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