YARN에서 움직이는 Spark에서 GC 로그를 얻는 방법
1558 단어 스파크sparkstreaming
다만 분산 처리 환경의 yarn에서는 실행 환경이 분산되어 있는 관계상 설정 방법에 조금 버릇이 있습니다.
이번에는 YARN에서 실행되는 Spark에서 구체적인 GC 로그를 얻는 방법에 대해 설명합니다.
스파크가 GC 로그를 출력하도록
spark-submit을 할 때 쓰기 옵션을 전달하여 executor의 JVM이 GC 로그를 출력하도록 할 수 있습니다.
driver의 경우도 비슷한 느낌으로 전달할 수 있습니다.
spark2-submit \
--conf "spark.executor.extraJavaOptions=-verbose:gc -XX:+PrintGCDetails -XX:+PrintGCTimeStamps" \
--class ExampleSparkMain \
ExampleSpark.jar
Spark executor의 표준 출력 얻기
GC 로그는 executor의 표준 출력으로 출력됩니다.yarn.log-aggregation-enable
가 활성화되면
Spark를 실행하는 노드의 로컬로 출력됩니다 (Spark Web UI에서 액세스 할 수도 있음).
로컬로의 출력 디렉토리입니다만 yarn 의 yarn.nodemanager.log-dirs
라고 하는 값으로 설정이 행해지고 있으므로 이하의 방법으로 확인을 실시합니다.
spark2-submit \
--conf "spark.executor.extraJavaOptions=-verbose:gc -XX:+PrintGCDetails -XX:+PrintGCTimeStamps" \
--class ExampleSparkMain \
ExampleSpark.jar
GC 로그는 executor의 표준 출력으로 출력됩니다.
yarn.log-aggregation-enable
가 활성화되면Spark를 실행하는 노드의 로컬로 출력됩니다 (Spark Web UI에서 액세스 할 수도 있음).
로컬로의 출력 디렉토리입니다만 yarn 의
yarn.nodemanager.log-dirs
라고 하는 값으로 설정이 행해지고 있으므로 이하의 방법으로 확인을 실시합니다.yarn-site.yml
보기 hdfs getconf -confKey yarn.nodemanager.log-dirs
에서 매개 변수 얻기 자신이 시도한 환경은 CDH5 이었지만,
/etc/hadoop
아래의 yarn-site.yml
에는 기재가 없고, CDH가 인스톨 되고 있는 디렉토리의 yarn-site.yml
를 읽는 것으로 디렉토리가 판명되었습니다.디렉토리 부하의 stdout이라는 파일에 gc 로그가 출력되고 있으므로 이것을 gc viewer등으로 읽어들입니다.
Reference
이 문제에 관하여(YARN에서 움직이는 Spark에서 GC 로그를 얻는 방법), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/apollo_program/items/42dbbf55328082eecd64텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)