관리형 스케일링이 켜져 있거나 크기 조정 지표가 충족되었지만 EMR 클러스터의 크기가 조정되지 않는 이유는 무엇인가요?

3분 분량
0

Amazon EMR 클러스터에서 관리형 스케일링이 켜져 있거나 크기 조정 지표가 충족되었지만 클러스터 크기가 조정되지 않습니다.

해결 방법

관리형 스케일링이 켜져 있거나 크기 조정 지표가 충족되었는데도 EMR 클러스터의 크기가 조정되지 않는 일반적인 이유는 다음과 같습니다.

Amazon CloudWatch 지표에 설정된 크기 조정 임계값이 충족되지 않음

자동 스케일링은 CloudWatch 지표에 따라 달라집니다. 스케일 업 또는 스케일 다운에 대한 지표 임계값이 충족되지 않으면 크기 조정이 수행되지 않습니다.

Amazon CloudWatch의 Amazon EMR 지표를 확인하여 크기 조정 규칙에 설정된 지표가 채워지고 있는지 확인하세요. 예를 들어 ContainerPendingRatio, YARNMemoryAvailablePercentage 등이 크기 조정 규칙에 정의된 대로 채워져 있는지 확인합니다.

다음은 CloudWatch에서 Amazon EMR 지표가 예상대로 채워지지 않는 일반적인 이유입니다.

  • /etc/hadoop/conf/hadoop-metrics2.properties 파일이 존재하지 않거나 손상되었습니다. 예를 들어, 사용자 지정 부트스트랩 작업이 파일을 덮어썼을 수 있습니다.
  • Hadoop, YARN 등과 같은 지표 관련 구성 요소에 문제가 있을 수 있습니다. 해당 애플리케이션 로그를 검토하여 오류가 있는지 확인합니다.
  • 관리형 스케일링의 경우 프라이머리 노드에서 sudo systemctl status MetricsCollector 명령을 실행하여 MetricsCollector 대몬(daemon)이 실행 중인지 확인합니다.

YARN을 기반으로 하지 않는 애플리케이션을 사용 중입니다.

YARN을 기반으로 하지 않는 Presto와 같은 애플리케이션은 YARN에서 생성한 지표를 기반으로 하는 크기 조정 방법을 사용합니다. 따라서 Presto 쿼리 사용률이 높더라도 클러스터가 확장되지 않습니다. YARN을 기반으로 하지 않는 애플리케이션을 사용하는 경우 수동 크기 조정을 사용하세요. 예를 들어, 사용자 지정 Presto 지표를 사용하도록 Amazon EMR 크기 조정 API를 설정할 수 있습니다.

코어 또는 태스크 인스턴스 그룹이 일시 중지 또는 정지된 상태입니다.

일시 중지 또는 정지 상태의 코어 또는 태스크 인스턴스 그룹은 크기가 조정될 때 멈춥니다. 문제 해결 단계는 일시 중지 상태를 참조하세요.

재구성으로 인해 인스턴스 그룹이 정지 상태가 됩니다. 자세한 내용은 인스턴스 그룹 재구성 문제 해결을 참조하세요.

EMR에 HDFS 애플리케이션 문제가 있어 코어 노드의 크기를 조정할 때 문제가 발생합니다.

다음과 같은 경우 코어 노드를 고정된 상태로 유지하는 것이 가장 좋습니다.

  • Amazon Simple Storage Service(S3) 버킷에 데이터를 저장 중이고
  • HDFS 사용률이 최소 수준입니다.

HDFS 문제가 발생하지 않도록 태스크 노드만 크기를 조정하세요.

코어 노드 크기 조정은 태스크 노드 크기 조정보다 시간이 오래 걸립니다. 이는 코어 노드에 HDFS 데이터를 저장하는 데 사용되는 추가 서비스(Datanode)가 있기 때문입니다. HDFS 데이터 폐기에는 시간이 걸립니다. 사용 사례에 코어 노드 크기 조정이 필요한데 크기 조정이 중단되는 경우 HDFS 폐기에 문제가 있는 것일 수 있습니다. HDFS 폐기로 인해 중단된 크기 조정 문제를 해결하려면 다음 항목을 확인하세요.

  • HDFS 서비스 상태(Namenode 및 Datanode)를 확인합니다.
  • hdfs dfsadmin -report 명령을 실행하여 누락되거나, 손상되었거나, 충분히 복제되지 않은 블록이 있는지 확인합니다.
  • 디스크, 메모리 또는 CPU 문제로 인해 비정상 상태인 코어 노드가 있는지 확인합니다.
  • HDFS 복제 계수가 더 높은 숫자(예: 3 또는 2)로 설정되어 있는지 확인합니다. 복제 계수가 3 또는 2로 설정된 상태에서 코어 노드를 1로 스케일 다운하려고 하면 크기 조정이 중단됩니다. 최소한의 복제본을 유지해야 하기 때문입니다.

요청한 용량을 Amazon EMR에서 사용할 수 없습니다.

요청한 Amazon Elastic Compute Cloud(Amazon EC2) 용량을 Amazon EMR에서 사용할 수 없는 경우 제한 시간이 경과하면 크기 조정이 실패합니다. 크기 조정이 장시간 중단되고 AWS CloudTrail 이벤트에서 용량 부족 오류가 발생하는 경우 수동 크기 조정을 수행하세요. 크기 조정이 장시간 멈춘 것으로 간주되는 것은 2~3시간입니다.


관련 정보

인스턴스 그룹에 대한 사용자 지정 정책을 통해 자동 스케일링 사용

실행 중인 클러스터의 크기를 수동으로 조정

Amazon EMR에서 관리형 스케일링 사용

Amazon EMR 기반 PrestoDB의 성능 튜닝을 위한 9가지 팁

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