노드 유형 이해: 마스터, 코어, 태스크 노드 - Amazon EMR

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

노드 유형 이해: 마스터, 코어, 태스크 노드

이 섹션을 통해 Amazon EMR이 이러한 각 노드 유형을 어떻게 사용하고 클러스터 용량 계획의 기반으로 사용하는지 이해하십시오.

Master

마스터 노드는 클러스터를 관리하며 일반적으로 분산 애플리케이션의 마스터 구성 요소를 실행합니다. 예를 들어, 마스터 노드는 YARN ResourceManager 서비스를 실행하여 애플리케이션의 리소스를 관리합니다. 또한 HDFS NameNode 서비스를 실행하고, 클러스터에 제출된 작업의 상태를 추적하고, 인스턴스 그룹의 상태를 모니터링합니다.

클러스터의 진행 상황을 모니터링하고 애플리케이션과 직접 상호 작용하려는 경우, SSH를 통해 하둡 사용자로 마스터 노드에 연결하면 됩니다. 자세한 내용은 SSH를.을 참조하세요. 마스터 노드에 연결하면 하둡 로그 파일과 같은 디렉터리 및 파일에 직접 액세스 할 수 있습니다. 자세한 내용은 로그 파일 보기을 참조하세요. 마스터 노드에서 실행 중인 웹 사이트로 애플리케이션이 게시하는 사용자 인터페이스를 확인할 수도 있습니다. 자세한 내용은 Amazon EMR 클러스터에서 호스팅되는 웹 인터페이스 보기을 참조하세요.

참고

Amazon EMR 5.23.0 이상에서는 3개의 마스터 노드로 구성된 클러스터를 시작하여 YARN 리소스 관리자, HDFS, Spark NameNode, Hive 및 Ganglia와 같은 애플리케이션의 고가용성을 지원할 수 있습니다. 이 기능을 사용하면 마스터 노드가 더 이상 잠재적 단일 장애 지점이 아닙니다. 마스터 노드 중 하나에 장애가 발생하면 Amazon EMR은 자동으로 대기 마스터 노드로 장애 조치하고 장애가 발생한 마스터 노드를 동일한 구성 및 부트스트랩 작업을 가진 새 노드로 교체합니다. 자세한 내용은 마스터 노드 계획 및 구성을 참조하십시오.

코어 노드

코어 노드는 마스터 노드에서 관리합니다. 코어 노드는 데이터 노드 데몬을 실행하여 데이터 스토리지를 하둡 분산 파일 시스템(HDFS)의 일부로서 조정합니다. 또한 코어 노드는 Task Tracker 데몬을 실행하고 설치된 애플리케이션에 필요한 데이터에 대해 다양한 병렬 계산 작업도 수행합니다. 예를 들어 코어 노드는 YARNNodeManager 데몬, 하둡 MapReduce 작업 및 Spark 실행기를 실행합니다.

클러스터당 코어 인스턴스 그룹 또는 인스턴스 플릿은 하나뿐이지만 인스턴스 그룹 또는 인스턴스 플릿의 여러 Amazon EC2 인스턴스에서 여러 노드가 실행될 수 있습니다. 인스턴스 그룹을 사용하면 클러스터가 실행되는 동안 Amazon EC2 인스턴스를 추가하고 제거할 수 있습니다. 지표 값에 따라 인스턴스를 추가하도록 자동 조정을 설정할 수도 있습니다. Amazon EC2Scaling.

인스턴스 플릿을 사용하면 온디맨드 및 스팟에 대한 인스턴스 플릿의 대상 용량을 적절히 수정하여 인스턴스를 효과적으로 추가 및 제거할 수 있습니다. 대상 용량에 대한 자세한 내용은 인스턴스 플릿 옵션 단원을 참조하십시오.

주의

실행 중인 코어 노드에서 HDFS 데몬을 제거하거나 코어 노드를 종료하면 데이터가 손실될 위험이 있습니다. 스팟 인스턴스를 사용하도록 코어 노드를 구성할 때는 각별히 주의하십시오. 자세한 내용은 스팟 인스턴스는 언제 사용해야 합니까?을 참조하세요.

태스크 노드

작업 노드를 사용하여 하둡 작업 및 Spark 실행기와 같은 데이터에 대한 parallel 계산 MapReduce 작업을 수행할 수 있는 기능을 추가할 수 있습니다. 작업 노드는 데이터 노드 데몬을 실행하지 않으며 HDFS에 데이터를 저장하지도 않습니다. 코어 노드와 마찬가지로 Amazon EC2 인스턴스를 기존의 통합 인스턴스 그룹에 추가하거나 작업 인스턴스 플릿의 대상 용량을 수정하여 클러스터에 작업 노드를 추가할 수 있습니다.

통합. 이러한 방식으로 인스턴스 그룹을 추가할 수 있으므로 Amazon EC2 인스턴스 유형과 요금 옵션 (예: 온디맨드 인스턴스 및 스팟 인스턴스) 을 혼합하여 사용할 수 있습니다. 따라서 워크로드 요구 사항에 비용 효율적으로 대처할 수 있는 유연성을 얻게 됩니다.

인스턴스 플릿 구성에는 인스턴스 유형과 구매 옵션을 함께 사용할 수 있는 기능이 내장되어 있으므로 태스크 인스턴스 플릿은 하나뿐입니다.

스팟 인스턴스는 작업 노드를 실행하는 데 자주 사용되므로 Amazon EMR에는 스팟 인스턴스에서 실행 중인 작업 노드가 종료될 때 실행 중인 작업이 실패하지 않도록 YARN 작업을 예약하는 기본 기능이 있습니다. Amazon EMR은 애플리케이션 마스터 프로세스가 코어 노드에서만 실행되게 함으로써 이를 지원합니다. 애플리케이션 마스터 프로세스는 실행 중인 작업을 제어하며, 작업 수명 동안 유지되어야 합니다.

Amazon EMR 릴리스 버전 5.19.0 이상에서는 기본 제공되는 YARN 노드 레이블 기능을 사용하여 이를 지원합니다. (이전 버전에서는 코드 패치를 사용했습니다.) yarn-sitecapacity-scheduler 구성 분류의 속성은 기본적으로 YARN 용량 스케줄러와 공정 스케줄러가 노드 레이블을 활용하도록 구성됩니다. Amazon EMR은 레이블로 코어 노드에 자동으로CORE 레이블을 지정하고 속성을 설정하여 애플리케이션 마스터가 CORE 레이블이 있는 노드에서만 예약되도록 합니다. yarn-site 및 capacity-scheduler 구성 분류에서 해당 속성을 수동으로 수정하거나, 연결된 XML 파일에서 직접 수정하면 이 기능이 작동하지 않거나 변경됩니다.

Amazon EMR 6.x 릴리스 시리즈부터 YARN 노드 레이블 기능은 기본적으로 비활성화되어 있습니다. 애플리케이션 마스터 프로세스는 기본적으로 코어 및 작업 노드 모두에서 실행할 수 있습니다. 다음과 같은 속성을 구성하여 YARN 노드 레이블 기능을 활성화할 수 있습니다.

  • yarn.node-labels.enabled: true

  • yarn.node-labels.am.default-node-label-expression: 'CORE'

특정 속성에 대한 자세한 내용은 작업 노드 스팟 인스턴스 종료로 인한 작업 실패를 방지하기 위한 Amazon EMR 설정 단원을 참조하십시오.