spark,MapReduce 또는 Flink 프로그램에서 환경 변수를 설정합니다.
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
예:
export
SPARK_YARN_USER_ENV=
"JAVA_HOME=/opt/jdk1.8.0_151"
2>: 지정spark.executorEnv.JAVA_HOME
및 spark.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 경로를 가리킨다
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
패키지 관리자 전환글쎄, 나는 다른 패키지 관리자를 사용하는 프로젝트에서 작업하고 있으며 잘못된 명령을 작성하거나 잘못된 플래그를 혼합하는 데 약간 지쳤습니다. 이 CLI 도구는 이를 프로젝트에서 사용되는 현재 패키지 관리자 형식으로...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.