

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

# EMR Studio에서 애플리케이션 및 작업 디버깅
<a name="emr-studio-debug"></a>

Amazon EMR Studio를 사용하면 데이터 애플리케이션 인터페이스를 시작하여 브라우저에서 애플리케이션 및 작업 실행을 분석할 수 있습니다.

또한 Amazon EMR 콘솔에서 EC2 클러스터에서 실행되는 Amazon EMR용 영구 클러스터 외부 사용자 인터페이스를 시작할 수도 있습니다. 자세한 내용은 [Amazon EMR에서 영구 애플리케이션 사용자 인터페이스 보기](app-history-spark-UI.md) 단원을 참조하십시오.

**참고**  
브라우저 설정에 따라 애플리케이션 UI를 열려면 팝업을 활성화해야 할 수 있습니다.

애플리케이션 인터페이스 구성 및 사용에 대한 자세한 내용은 [The YARN Timeline Server](https://hadoop.apache.org/docs/current/hadoop-yarn/hadoop-yarn-site/TimelineServer.html), [Monitoring and instrumentation](https://spark.apache.org/docs/latest/monitoring.html) 또는 [Tez UI overview](https://tez.apache.org/tez-ui.html)를 참조하세요.

## Amazon EC2 작업에서 실행되는 Amazon EMR 디버깅
<a name="emr-studio-debug-ec2"></a>

------
#### [ Workspace UI ]

**노트북 파일에서 클러스터 내 UI 실행**

Amazon EMR 릴리스 버전 5.33.0 이상을 사용하는 경우 Workspace의 노트북에서 Spark 웹 사용자 인터페이스(Spark UI 또는 Spark 기록 서버)를 시작할 수 있습니다.

클러스터 내 UI는 PySpark, Spark 또는 SparkR 커널과 함께 작동합니다. Spark 이벤트 로그 또는 컨테이너 로그에서 볼 수 있는 최대 파일 크기는 10MB입니다. 로그 파일이 10MB를 초과하는 경우 클러스터 내 Spark UI 대신 영구 Spark 기록 서버를 사용하여 작업을 디버깅하는 것이 좋습니다.
**중요**  
EMR Studio가 Workspace에서 클러스터 내 애플리케이션 사용자 인터페이스를 실행하려면 클러스터가 Amazon API Gateway와 통신할 수 있어야 합니다. Amazon API Gateway로의 발신 네트워크 트래픽을 허용하도록 EMR 클러스터를 구성하고 클러스터에서 Amazon API Gateway에 연결할 수 있는지 확인해야 합니다.  
Spark UI는 호스트 이름을 확인하여 컨테이너 로그에 액세스합니다. 사용자 지정 도메인 이름을 사용하는 경우 Amazon DNS 또는 사용자가 지정한 DNS 서버가 클러스터 노드의 호스트 이름을 확인할 수 있는지 확인해야 합니다. 이를 위해 클러스터와 연결된 Amazon Virtual Private Cloud(VPC)에 대한 Dynamic Host Configuration Protocol(DHCP) 옵션을 설정합니다. DHCP 옵션에 대한 자세한 내용은 *Amazon Virtual Private Cloud* *사용 설명서*에서 [DHCP 옵션 세트](https://docs.aws.amazon.com/vpc/latest/userguide/VPC_DHCP_Options.html)를 참조하세요.

1. EMR Studio에서 사용하려는 Workspace를 열고 EC2에서 실행되는 Amazon EMR 클러스터에 연결되어 있는지 확인합니다. 지침은 [EMR Studio Workspace에 컴퓨팅 연결](emr-studio-create-use-clusters.md) 섹션을 참조하세요.

1. 노트북 파일을 열고 PySpark, Spark 또는 SparkR 커널을 사용합니다. 커널을 선택하려면 노트북 도구 모음의 오른쪽 상단에서 커널 이름을 선택하여 **커널 선택** 대화 상자를 엽니다. 커널을 선택하지 않으면 이름은 **커널 없음\$1**으로 표시됩니다.

1. 노트북 코드를 실행합니다. Spark 컨텍스트를 시작하면 노트북에 다음과 같은 출력이 나타납니다. 표시하는 데 몇 초 정도 걸릴 수 있습니다. Spark 컨텍스트를 시작한 경우 언제든지 `%%info` 명령을 실행하여 Spark UI에 대한 링크에 액세스할 수 있습니다.
**참고**  
Spark UI 링크가 작동하지 않거나 몇 초 후에도 나타나지 않으면 새 노트북 셀을 생성하고 `%%info` 명령을 실행하여 링크를 다시 생성합니다.  
![\[Spark UI로 연결되는 링크가 포함된 Spark 애플리케이션 마스터 정보의 스크린샷. 링크는 Spark 애플리케이션을 실행할 때 노트북에 나타납니다.\]](http://docs.aws.amazon.com/ko_kr/emr/latest/ManagementGuide/images/spark-app-ui-link.jpg)

1. Spark UI를 시작하려면 **Spark UI**에서 **연결**을 선택합니다. Spark 애플리케이션이 실행 중인 경우 Spark UI가 새 탭에서 열립니다. 애플리케이션이 완료되면 Spark 기록 서버가 대신 열립니다.

   Spark UI를 시작한 후 브라우저에서 URL을 수정하여 YARN ResourceManager 또는 Yarn 타임라인 서버를 열 수 있습니다. `amazonaws.com` 뒤에 다음 경로 중 하나를 추가합니다.  
****    
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ko_kr/emr/latest/ManagementGuide/emr-studio-debug.html)

------
#### [ Studio UI ]

**EMR Studio UI에서 영구 YARN 타임라인 서버, Spark 기록 서버 또는 Tez UI 시작**

1. EMR Studio에서 페이지 왼쪽에 있는 **Amazon EMR on EC2**를 선택하여 **Amazon EMR on EC2** 클러스터 목록을 엽니다.

1. 검색 상자에 값을 입력하여 **이름**, **상태** 또는 **ID**별로 클러스터 목록을 필터링합니다. 생성 **시간 범위**를 기준으로 검색할 수도 있습니다.

1. 클러스터를 선택한 다음 **애플리케이션 UI 시작**을 선택하여 애플리케이션 사용자 인터페이스를 선택합니다. 새 브라우저 탭에서 애플리케이션 UI가 열리고 로드하는 데 시간이 걸릴 수 있습니다.

------

## EMR Serverless에서 실행되는 EMR Studio 디버깅
<a name="emr-studio-debug-serverless"></a>

Amazon EC2에서 실행되는 Amazon EMR과 마찬가지로, Workspace 사용자 인터페이스를 사용하여 EMR Serverless 애플리케이션을 분석할 수 있습니다. Amazon EMR 릴리스 6.14.0 이상을 사용하는 경우 Workspace UI를 통해 Workspace의 노트북에서 Spark 웹 사용자 인터페이스(Spark UI 또는 Spark 기록 서버)를 시작할 수 있습니다. 편의를 위해 Spark 드라이버 로그에 빠르게 액세스할 수 있는 드라이버 로그 링크도 제공합니다.

## Spark 기록 서버를 사용하여 Amazon EMR on EKS 작업 실행 디버깅
<a name="emr-studio-debug-eks"></a>

Amazon EMR on EKS 클러스터에 작업 실행을 제출하는 경우 Spark 기록 서버를 사용하여 해당 작업 실행의 로그에 액세스할 수 있습니다. Spark 기록 서버는 스케줄러 스테이지 및 작업 목록, RDD 크기 및 메모리 사용량 요약, 환경 정보와 같은 Spark 애플리케이션을 모니터링하기 위한 도구를 제공합니다. 다음과 같은 방법으로 Amazon EMR on EKS 작업 실행을 위한 Spark 기록 서버를 시작할 수 있습니다.
+ Amazon EMR on EKS 관리형 엔드포인트에서 EMR Studio를 사용하여 작업 실행을 제출하면 Workspace의 노트북 파일에서 Spark 기록 서버를 시작할 수 있습니다.
+  AWS CLI 또는 AWS SDK for Amazon EMR on EKS를 사용하여 작업 실행을 제출하면 EMR Studio UI에서 Spark 기록 서버를 시작할 수 있습니다.

Spark 기록 서버를 사용하는 방법에 대한 자세한 내용은 Apache Spark 설명서에서 [Monitoring and Instrumentation](https://spark.apache.org/docs/latest/monitoring.html)을 참조하세요. 작업 실행에 대한 자세한 내용은 *Amazon EMR on EKS 개발 안내서*에서 [개념 및 구성 요소](https://docs.aws.amazon.com/emr/latest/EMR-on-EKS-DevelopmentGuide/emr-eks-concepts.html)를 참조하세요.

**EMR Studio Workspace의 노트북 파일에서 Spark 기록 서버를 시작하는 방법**

1. Amazon EMR on EKS 클러스터에 연결된 Workspace를 엽니다.

1. Workspace에서 노트북 파일을 선택하고 엽니다.

1. 노트북 파일 상단에서 **Spark UI**를 선택하여 새 탭에서 영구 Spark 기록 서버를 엽니다.

**EMR Studio UI에서 Spark 기록 서버를 시작하는 방법**
**참고**  
EMR Studio UI의 **작업** 목록에는 AWS CLI 또는 AWS SDK for Amazon EMR on EKS를 사용하여 제출한 작업 실행만 표시됩니다.

1. EMR Studio에서 페이지 왼쪽에 있는 **Amazon EMR on EKS**를 선택합니다.

1. 작업 실행을 제출하는 데 사용한 Amazon EMR on EKS 가상 클러스터를 검색합니다. 검색 상자에 값을 입력하여 **상태** 또는 **ID**별로 클러스터 목록을 필터링할 수 있습니다.

1. 클러스터를 선택하여 세부 정보 페이지를 엽니다. 세부 정보 페이지에는 ID, 네임스페이스 및 상태와 같은 클러스터에 대한 정보가 표시됩니다. 이 페이지에는 해당 클러스터에 제출된 모든 작업 실행 목록도 표시됩니다.

1. 클러스터 세부 정보 페이지에서 디버깅할 작업 실행을 선택합니다.

1. **작업** 목록의 오른쪽 상단에서 **Spark 기록 서버 시작**을 선택하여 새 브라우저 탭에서 애플리케이션 인터페이스를 엽니다.