Spark 히스토리 서버

IBM Analytics Engine 인스턴스에서 제출된 Spark 애플리케이션은 인스턴스 홈으로 정의된 Object Storage 버킷으로 Spark 이벤트를 전달합니다. Spark 히스토리 서버는 이러한 Spark 이벤트를 보기 위한 Web UI 를 제공합니다. Web UI 는 다음과 같은 유용한 정보를 표시하여 Spark 애플리케이션이 실행되는 방법을 분석하는 데 도움을 줍니다.

  • 애플리케이션이 실행될 때 거치는 스테이지 목록
  • 각 스테이지의 작업 수
  • 실행 중인 실행 프로그램 및 메모리 사용량과 같은 구성 세부사항

자세한 정보는 Spark 히스토리 서버 문서 를 참조하십시오.

Spark 애플리케이션 구성에서 spark.eventLog.enabled 특성을 false 로 설정하여 Spark 애플리케이션에서 Spark 이벤트 전달을 사용 안함으로 설정할 수 있습니다.

Spark 히스토리 서버 시작 및 중지

Spark 히스토리 서버에 액세스하기 전에 서버를 시작해야 합니다. 더 이상 필요하지 않으면 서버를 중지해야 합니다. Spark 히스토리 서버가 실행 중인 동안 사용하는 CPU 코어 및 메모리에 대해 비용이 청구됩니다.

다음을 사용하여 Spark 히스토리 서버를 시작하고 중지할 수 있습니다.

Analytics Engine REST API

Analytics Engine REST API를 사용할 수 있습니다.

  1. Spark 히스토리 서버의 상태를 보려면 다음을 수행하십시오.

    curl "https://api.us-south.ae.cloud.ibm.com/v3/analytics_engines/<instance_id>/spark_history_server" --header "Authorization: bearer <iam token>"
    
  2. Spark 히스토리 서버를 시작하려면 다음을 수행하십시오.

    curl --location --request POST "https://api.us-south.ae.cloud.ibm.com/v3/analytics_engines/<instance_id>/spark_history_server" --header "Authorization: bearer <iam token>"
    
  3. Spark 히스토리 서버를 중지하려면 다음을 수행하십시오.

    curl --location --request DELETE "https://api.us-south.ae.cloud.ibm.com/v3/analytics_engines/<instance_id>/spark_history_server" --header "Authorization: bearer <iam token>"
    

Analytics Engine 인스턴스 UI

Analytics Engine 인스턴스 UI를 사용할 수 있습니다. ​

  1. Spark 히스토리 서버 상태를 보려면 다음을 수행하십시오.

    1. IBM Cloud에서 리소스 목록을 여십시오.
    2. 서비스 및 소프트웨어 를 클릭하고 인스턴스를 선택하여 세부사항 페이지를 여십시오.
    3. Spark 히스토리 탭을 선택하십시오. 서버의 현재 상태가 이 페이지에 표시됩니다.

    Spark 히스토리 서버의 상태가 Started 로 설정된 경우 Spark 히스토리 보기 를 클릭하여 새 브라우저 탭에서 Spark 히스토리 서버의 Web UI 를 실행할 수도 있습니다.

  2. Spark 히스토리 서버를 시작하려면 다음을 수행하십시오.

    1. Spark history 페이지에서 히스토리 서버 시작을 클릭하십시오.
    2. 서버 구성을 선택하고 시작 을 클릭하여 Spark 히스토리 서버를 시작하십시오.
  3. Spark 히스토리 서버를 중지하려면 다음을 수행하십시오.

    1. Spark history 페이지에서 히스토리 서버 중지를 클릭하십시오.

Spark 히스토리 서버 Web UI 열기

Analytics Engine 서비스 인스턴스의 인스턴스 세부사항 페이지를 열고 Spark 히스토리 탭으로 전환한 후 Spark 히스토리 보기를 클릭하여 Spark 히스토리 Web UI 를 열 수 있습니다.

또는 Spark 히스토리 서버 Web UI URL은 서비스 키 (서비스 신임 정보라고도 함) 로 사용할 수 있는 서비스 엔드포인트를 통해 얻을 수 있습니다. 서비스 엔드포인트 검색을 참조하십시오.

Web UI를 열기 전에 Spark 히스토리 서버가 실행 중인지 확인하십시오.

Spark 히스토리 서버 UI의 스테이지 및 실행기 탭 아래에 있는 로그 링크는 로그가 Spark 이벤트와 함께 유지되지 않으므로 작동하지 않습니다. 태스크 및 실행 프로그램 로그를 검토하려면 플랫폼 로깅을 사용으로 설정하십시오. 세부사항은 로그 구성 및 보기를 참조하십시오.

Spark 히스토리 서버 UI에서 이전 애플리케이션을 보려면 다음 명령을 사용하여 이전 경로에서 새 경로로 spark-events를 복사하십시오. ibmcloud cos object-copy -- bucket < destination_bucket> -- 키 /spark-events/<eventlog_app-1>-- copy-source /spark-events/<eventlog_app-1>

Spark 히스토리 서버 REST API에 액세스

웹 UI외에도 Spark 히스토리 서버는 Spark 애플리케이션에서 생성된 Spark 이벤트를 보기 위해 조회할 수 있는 REST API도 제공합니다. Spark 히스토리 서버 REST API는 서비스 키 (서비스 신임 정보라고도 함) 에서 서비스 엔드포인트로 사용 가능합니다. 서비스 엔드포인트 검색을 참조하십시오.

Spark 히스토리 서버 REST API를 호출할 때 권한 헤더에서 IAM 토큰을 베어러 토큰으로 지정해야 합니다. E.g.

curl --location --request GET 'https://spark-console.us-south.ae.cloud.ibm.com/v3/analytics_engines/<instance id>/spark_history_api/v1/applications?status=completed' \
--header 'Authorization: Bearer <iam token>'

자세한 정보는 Spark 히스토리 서버 REST API 문서 를 참조하십시오.

Spark 히스토리 서버 사용자 정의

기본적으로 Spark 히스토리 서버는 실행 중에 1개의 CPU 코어와 4개의 GiB 메모리를 사용합니다. Spark 히스토리 서버가 더 많은 자원을 사용하도록 하려는 경우 Analytics Engine 인스턴스 기본 구성에서 다음 특성을 설정할 수 있습니다.

  • CPU 코어 수의 경우 ae.spark.history-server.cores
  • ae.spark.history-server.memory-메모리 양

REST API를 사용하여 CPU 코어 및 메모리 설정 업데이트

다음과 같이 Analytics Engine REST API를 사용하여 CPU 코어 및 메모리 설정을 업데이트할 수 있습니다.

curl --location --request PATCH "https://api.us-south.ae.cloud.ibm.com/v3/analytics_engines/<instance_id>/default_configs" \
--header "Authorization: bearer <iam_token>" \
--header 'Content-Type: application/json' \
--data-raw '{
        "ae.spark.history-server.cores": "2",
        "ae.spark.history-server.memory": "8G"
}'

Spark 드라이버 및 실행 프로그램 vCPU의 사전 정의된 목록과 메모리 크기 조합만 지원됩니다. 지원되는 Spark 드라이버 및 실행 프로그램 vCPU 및 메모리 조합 을 참조하십시오.

추가 사용자 정의

Analytics Engine 인스턴스의 기본 Spark 구성에 특성을 추가하여 Spark 히스토리 서버를 추가로 사용자 정의할 수 있습니다. 표준 Spark 히스토리 구성 옵션을 참조하십시오.

이 오퍼링은 관리 오퍼링이므로 모든 표준 Spark 구성 옵션을 사용자 정의할 수 없습니다.

설정에 대해 지원되는 구성 및 기본값 목록은 기본 Spark 구성 을 참조하십시오.

우수 사례

더 이상 사용할 필요가 없으면 항상 Spark 히스토리 서버를 중지하십시오. Spark 히스토리 서버는 상태가 Started 인 동안 계속해서 CPU및 메모리 자원을 사용합니다.