Amazon EMR 클러스터를 시작하지 못할 때 발생하는 "부트스트랩 작업에서 0이 아닌 반환 코드를 반환함" 오류를 해결하고 싶습니다.
간략한 설명
Amazon EMR이 Amazon Elastic Compute Cloud(Amazon EC2) 클러스터 인스턴스를 프로비저닝한 후 Amazon EMR은 해당 인스턴스에서 부트스트랩 작업을 실행합니다. 부트스트랩 작업에서 0이 아닌 오류 코드를 반환하면 Amazon EMR은 영향을 받는 인스턴스를 종료합니다. 부트스트랩 작업에 실패한 인스턴스가 너무 많으면 Amazon EMR이 클러스터를 삭제합니다.
해결 방법
오류의 원인을 확인하려면 stderr 로그를 확인하십시오. stderr 로그에서 문제를 파악하지 못하면 디버깅 정보로 스크립트를 수정하십시오. 예를 들어 부트스트랩 작업 로그 파일 내에서 스크립트의 흐름을 추적하려면 Bash 스크립트에서 -ex 파라미터를 설정하십시오.
#!/bin/bash
set -x -e
부트스트랩 작업이 실패한 경우 클러스터를 생성할 때 지정한 LogUri에 저장된 로그를 확인하십시오. 예를 들어 **s3://example-log-location/example-cluster-id/node/example-instance-id/bootstrap-actions/**입니다.
관련 정보
사용자 지정 부트스트랩 작업 사용
Amazon EMR 클러스터가 "애플리케이션 프로비저닝 실패" 오류와 함께 종료되는 이유는 무엇입니까?