全部產品
Search
文件中心

E-MapReduce:Spark3使用JDK 11

更新時間:Jul 01, 2024

EMR-3.45.0及後續版本、EMR-5.11.0及後續版本的Spark 3,支援使用JDK 11運行作業。本文為您介紹如何使用JDK 11,以及使用JDK 11後如何切換為預設的JDK 8。

注意事項

目前EMR Doctor不支援JDK 11,當Spark作業使用JDK 11時,需要同時修改EMR Doctor相關的配置項spark.yarn.am.extraJavaOptionsspark.driver.extraJavaOptionsspark.executor.extraJavaOptions,具體修改請參見使用JDK 11

使用JDK 11

在Spark服務的配置頁面,修改以下配置項。修改配置項的具體操作,請參見管理配置項

設定檔

配置項

配置值

spark-env.sh

spark_java_home

/usr/lib/jvm/java-11

spark-defaults.conf

spark.yarn.appMasterEnv.JAVA_HOME

/usr/lib/jvm/java-11

spark.driverEnv.JAVA_HOME

/usr/lib/jvm/java-11

spark.executorEnv.JAVA_HOME

/usr/lib/jvm/java-11

spark.yarn.am.extraJavaOptions

刪除-noverify -javaagent:/opt/apps/TAIHAODOCTOR/taihaodoctor-current/emr-agent/btrace-agent.jar=libs=spark-3.2

spark.driver.extraJavaOptions

刪除-noverify -javaagent:/opt/apps/TAIHAODOCTOR/taihaodoctor-current/emr-agent/btrace-agent.jar=libs=spark-3.2

spark.executor.extraJavaOptions

刪除-noverify -javaagent:/opt/apps/TAIHAODOCTOR/taihaodoctor-current/emr-agent/btrace-agent.jar=libs=spark-3.2

如果需要使用Spark Thrift Server,還需修改以下配置項。

設定檔

配置項

配置值

spark-thriftserver.conf

spark.yarn.appMasterEnv.JAVA_HOME

/usr/lib/jvm/java-11

spark-thriftserver.conf

spark.driverEnv.JAVA_HOME

/usr/lib/jvm/java-11

spark-thriftserver.conf

spark.executorEnv.JAVA_HOME

/usr/lib/jvm/java-11

JDK 11切換回JDK 8

如果您希望繼續使用EMR預設的JDK 8,則可以復原配置或者重新設定為JDK 8版本。

在Spark服務的配置頁面,修改以下配置項。修改配置項的具體操作,請參見管理配置項

設定檔

配置項

配置值

spark-env.sh

spark_java_home

/usr/lib/jvm/java-1.8.0

spark-defaults.conf

spark.yarn.appMasterEnv.JAVA_HOME

/usr/lib/jvm/java-1.8.0

spark.driverEnv.JAVA_HOME

/usr/lib/jvm/java-1.8.0

spark.executorEnv.JAVA_HOME

/usr/lib/jvm/java-1.8.0

spark.yarn.am.extraJavaOptions

添加-noverify -javaagent:/opt/apps/TAIHAODOCTOR/taihaodoctor-current/emr-agent/btrace-agent.jar=libs=spark-3.2

spark.driver.extraJavaOptions

添加-noverify -javaagent:/opt/apps/TAIHAODOCTOR/taihaodoctor-current/emr-agent/btrace-agent.jar=libs=spark-3.2

spark.executor.extraJavaOptions

添加-noverify -javaagent:/opt/apps/TAIHAODOCTOR/taihaodoctor-current/emr-agent/btrace-agent.jar=libs=spark-3.2

如果使用了Spark Thrift Server,還需復原配置或者重新設定以下配置項。

設定檔

配置項

配置值

spark-thriftserver.conf

spark.yarn.appMasterEnv.JAVA_HOME

/usr/lib/jvm/java-1.8.0

spark-thriftserver.conf

spark.driverEnv.JAVA_HOME

/usr/lib/jvm/java-1.8.0

spark-thriftserver.conf

spark.executorEnv.JAVA_HOME

/usr/lib/jvm/java-1.8.0