All Products
Search
Document Center

E-MapReduce:Gunakan Spark 3 dengan JDK 11

Last Updated:Mar 27, 2026

Kluster EMR yang menjalankan EMR V3.45.0 atau versi minor yang lebih baru, atau EMR V5.11.0 atau versi minor yang lebih baru, mendukung JDK 11 untuk pekerjaan Spark 3. Secara default, Spark menggunakan JDK 8. Topik ini menjelaskan cara beralih dari Spark 3 ke JDK 11 dan sebaliknya.

Prasyarat

Sebelum memulai, pastikan kluster EMR Anda menjalankan EMR V3.45.0 atau versi minor yang lebih baru, atau EMR V5.11.0 atau versi minor yang lebih baru.

Catatan penggunaan

Ketidakcocokan EMR Doctor: EMR Doctor tidak mendukung JDK 11. Saat beralih ke JDK 11, hapus agen EMR Doctor dari tiga item konfigurasi berikut: spark.yarn.am.extraJavaOptions, spark.driver.extraJavaOptions, dan spark.executor.extraJavaOptions. Saat kembali ke JDK 8, pulihkan entri tersebut.

Beralih ke JDK 11

Pada tab Configure di halaman layanan Spark3, atur item konfigurasi berikut. Untuk petunjuk mengubah item konfigurasi, lihat Manage configuration items.

spark-env.sh

Parameter Nilai
spark_java_home /usr/lib/jvm/java-11

spark-defaults.conf

Parameter Nilai
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 Hapus -noverify -javaagent:/opt/apps/TAIHAODOCTOR/taihaodoctor-current/emr-agent/btrace-agent.jar=libs=spark-3.2
spark.driver.extraJavaOptions Hapus -noverify -javaagent:/opt/apps/TAIHAODOCTOR/taihaodoctor-current/emr-agent/btrace-agent.jar=libs=spark-3.2
spark.executor.extraJavaOptions Hapus -noverify -javaagent:/opt/apps/TAIHAODOCTOR/taihaodoctor-current/emr-agent/btrace-agent.jar=libs=spark-3.2

Jika Anda menggunakan Spark Thrift Server, atur juga item berikut di spark-thriftserver.conf:

Parameter Nilai
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

Beralih ke JDK 8

Pada tab Configure di halaman layanan Spark3, atur item konfigurasi berikut. Untuk petunjuk mengubah item konfigurasi, lihat Manage configuration items.

spark-env.sh

Parameter Nilai
spark_java_home /usr/lib/jvm/java-1.8.0

spark-defaults.conf

Parameter Nilai
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 Tambahkan -noverify -javaagent:/opt/apps/TAIHAODOCTOR/taihaodoctor-current/emr-agent/btrace-agent.jar=libs=spark-3.2
spark.driver.extraJavaOptions Tambahkan -noverify -javaagent:/opt/apps/TAIHAODOCTOR/taihaodoctor-current/emr-agent/btrace-agent.jar=libs=spark-3.2
spark.executor.extraJavaOptions Tambahkan -noverify -javaagent:/opt/apps/TAIHAODOCTOR/taihaodoctor-current/emr-agent/btrace-agent.jar=libs=spark-3.2

Jika Anda menggunakan Spark Thrift Server, atur ulang juga item berikut di spark-thriftserver.conf:

Parameter Nilai
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