spark,MapReduce 또는 Flink 프로그램에서 환경 변수를 설정합니다.

1835 단어 yarnflinkspark
jdk를 예로 들면, 더 높은 버전의 jdk가 필요할 때, 기본적인 환경은 낮은 버전의 jdk를 인용하여 다음과 같은 오류를 일으킬 수 있습니다.Exception in thread "main" java.lang.UnsupportedClassVersionError: com/iteblog/mobile/UserMobileInfo : Unsupported major.minor version 52.0
일부 원인으로 인해 우리는 그룹 jdk의 업그레이드를 진행하기가 쉽지 않다. 이때 우리는 프로그램에서 환경을 정해야 한다. 그러나 전제는 YARN 그룹의 모든 노드에 해당하는 JDK 버전을 설치해야 한다는 것이다.
1:spark 지정 방법
1>: SPARK를 지정하여YARN_USER_ENV
예: exportSPARK_YARN_USER_ENV="JAVA_HOME=/opt/jdk1.8.0_151"2>: 지정spark.executorEnv.JAVA_HOMEspark.yarn.appMasterEnv.JAVA_HOME$SPARK_HOME/bin/spark-submit --master yarn-cluster  \          --executor-memory 5g \          --num-executors 10 \          --queue ia \          --conf "spark.yarn.appMasterEnv.JAVA_HOME=/opt/jdk1.8.0_151" \          --conf "spark.executorEnv.JAVA_HOME=/home/opt/jdk1.8.0_151" \          --executor-cores 1 \
이 인자를 $SPARK_HOME/conf/spark_default.conf 파일에 쓸 수도 있습니다
2: MapReduce
프로그램에서 관련 env 파라미터를 직접 설정하여 디버깅할 수 있습니다conf.set( "mapred.child.env" , "JAVA_HOME=/opt/jdk1.8.0_151"); conf.set( "yarn.app.mapreduce.am.env" , "JAVA_HOME=/opt/jdk1.8.0_151");
3:flink
지원$FLINK_HOME/conf/flink-conf.yaml  env.java.home: /opt/jdk1.8.0_151" 위에서 말한 JDK 경로는 모두 YARN 집단의 JDK 경로를 가리킨다

좋은 웹페이지 즐겨찾기