Amazon EMR release 7.1.0 - Amazon EMR
Services or capabilities described in Amazon Web Services documentation might vary by Region. To see the differences applicable to the China Regions, see Getting Started with Amazon Web Services in China (PDF).

Amazon EMR release 7.1.0

7.1.0 application versions

The following applications are supported in this release: AmazonCloudWatchAgent, Delta, Flink, HBase, HCatalog, Hadoop, Hive, Hudi, Hue, Iceberg, JupyterEnterpriseGateway, JupyterHub, Livy, MXNet, Oozie, Phoenix, Pig, Presto, Spark, Sqoop, TensorFlow, Tez, Trino, Zeppelin, and ZooKeeper.

The table below lists the application versions available in this release of Amazon EMR and the application versions in the preceding three Amazon EMR releases (when applicable).

For a comprehensive history of application versions for each release of Amazon EMR, see the following topics:

Application version information
emr-7.1.0 emr-7.0.0
Amazon SDK for Java 2.23.18, 1.12.6562.20.160-amzn-0, 1.12.569
Python 3.93.9
Scala 2.12.172.12.17
AmazonCloudWatchAgent1.300032.21.300031.1
Delta3.0.03.0.0
Flink1.18.11.18.0
Ganglia - -
HBase2.4.172.4.17
HCatalog3.1.33.1.3
Hadoop3.3.63.3.6
Hive3.1.33.1.3
Hudi0.14.1-amzn-00.14.0-amzn-1
Hue4.11.04.11.0
Iceberg1.4.3-amzn-01.4.2-amzn-0
JupyterEnterpriseGateway2.6.02.6.0
JupyterHub1.5.01.5.0
Livy0.8.00.7.1
MXNet1.9.11.9.1
Mahout - -
Oozie5.2.15.2.1
Phoenix5.1.35.1.3
Pig0.17.00.17.0
Presto0.2840.283
Spark3.5.03.5.0
Sqoop1.4.71.4.7
TensorFlow2.11.02.11.0
Tez0.10.20.10.2
Trino (PrestoSQL)435426
Zeppelin0.10.10.10.1
ZooKeeper3.9.13.5.10

7.1.0 release notes

The following release notes include information for Amazon EMR release 7.1.0. Changes are relative to 7.1.0.

New features
  • Application upgrades – Amazon EMR 7.1.0 application upgrades include Livy 0.8.0, Trino 435, and ZooKeeper 3.9.1.

  • Unhealthy node replacement – With Amazon EMR 7.1.0 and higher, unhealthy node replacement is enabled by default, so Amazon EMR will gracefully replace your unhealthy nodes. To avoid affecting your existing workflows on Amazon EMR releases 7.0.0 and lower, unhealthy node replacement is disabled if you enabled termination protection in your cluster.

  • CloudWatch Agent – Configure the CloudWatch agent to use additional system metrics, add application metrics, and change metrics destination with the Amazon EMR configuration API.

Known issues
  • Python 3.11 isn't supported with EMR Studio.

Changes, enhancements, and resolved issues
  • While Amazon EMR 7.1.0 supports Python 3.9 by default, Livy 0.8.0 and Spark in Amazon EMR 7.1.0 support Python 3.11.

  • This release fixes the issue of needing to run each line one at a time when using PySpark with Python version 3.11.

  • Zeppelin upgrade – Amazon EMR 7.1.0 includes an upgrade of Zeppelin to the Amazon SDK for Java v2. This upgrade enables a Zeppelin S3 Notebook to accept a custom encryption materials provider. The Amazon SDK for Java v2 removes the EncryptionMaterialsProvider interface. When you upgrade to Amazon EMR 7.1.0, you must implement the Keyring interface if you want to use custom encryption. For an example of how to implement the Keyring interface, see KmsKeyring.java.

  • When upgrading to Amazon EMR release 7.1.0, change your custom key provider for local disk encryption to generate keys using the AES algorithm of AES/GCM/NoPadding. If you don't update the algorithm, cluster creation might fail with the error Local disk encryption failed on master instance (i-123456789) due to internal error. For more information about creating a custom key provider, see Creating a custom key provider.

  • Amazon EMR 7.1.0 improves the resiliency of a node under low disk space conditions by improving log truncation logic for files with open file handles.

  • This release enhances the encoding and decoding logic to minimize risk of data corruption and node failure with Amazon EMR daemons read and write files when restarting a node.

  • When you launch a cluster with the latest patch release of Amazon EMR 5.36 or higher, 6.6 or higher, or 7.0 or higher, Amazon EMR uses the latest Amazon Linux 2023 or Amazon Linux 2 release for the default Amazon EMR AMI. For more information, see Using the default Amazon Linux AMI for Amazon EMR.

    OsReleaseLabel (Amazon Linux version) Amazon Linux kernel version Available date Supported Regions
    2023.3.20240219.0 6.1.77-99.164.amzn2023 May 8th, 2024 US East (N. Virginia), US East (Ohio), US West (N. California), US West (Oregon), Europe (Stockholm), Europe (Milan), Europe (Spain), Europe (Frankfurt), Europe (Zurich), Europe (Ireland), Europe (London), Europe (Paris), Asia Pacific (Hong Kong), Asia Pacific (Mumbai), Asia Pacific (Hyderabad), Asia Pacific (Tokyo), Asia Pacific (Seoul), Asia Pacific (Osaka), Asia Pacific (Singapore), Asia Pacific (Sydney), Asia Pacific (Jakarta), Asia Pacific (Melbourne), Africa (Cape Town), South America (São Paulo), Middle East (Bahrain), Middle East (UAE), Canada (Central), Israel (Tel Aviv), Canada West (Calgary), Amazon GovCloud (US-West), Amazon GovCloud (US-East),China (Beijing), China (Ningxia)

7.1.0 default Java versions

Amazon EMR release 7.1 and higher ships with Amazon Corretto 17 (built on OpenJDK) by default for applications that support Corretto 17 (JDK 17), with the exception of Apache Livy.

The following table shows the default Java versions for applications in Amazon EMR 7.1.0. If you want to change the default JVM on your cluster, follow the instructions in Configure applications to use a specific Java Virtual Machine for each application that runs on the cluster. You can only use one Java runtime version for a cluster. Amazon EMR doesn't support running different nodes or applications on different runtime versions on the same cluster.

Application Java / Amazon Corretto version (default is bold)
Delta 17, 11, 8
Flink 17, 11, 8
Ganglia 8
HBase 11, 8
HCatalog 17, 11, 8
Hadoop 17, 11, 8
Hive 17, 11, 8
Hudi 17, 11, 8
Iceberg 17, 11, 8
Livy 17, 11, 8
Oozie 17, 11, 8
Phoenix 8
PrestoDB 8
Spark 17, 11, 8
Spark RAPIDS 17, 11, 8
Sqoop 8
Tez 17, 11, 8
Trino 17
Zeppelin 8
Pig 8
Zookeeper 8

7.1.0 component versions

The components that Amazon EMR installs with this release are listed below. Some are installed as part of big-data application packages. Others are unique to Amazon EMR and installed for system processes and features. These typically start with emr or aws. Big-data application packages in the most recent Amazon EMR release are usually the latest version found in the community. We make community releases available in Amazon EMR as quickly as possible.

Some components in Amazon EMR differ from community versions. These components have a version label in the form CommunityVersion-amzn-EmrVersion. The EmrVersion starts at 0. For example, if open source community component named myapp-component with version 2.2 has been modified three times for inclusion in different Amazon EMR releases, its release version is listed as 2.2-amzn-2.

Component Version Description
adot-java-agent1.31.0A Java Agent that collects metrics from application daemons.
delta3.0.0Delta lake is an open table format for huge analytic datasets
emr-amazon-cloudwatch-agent1.300032.2-amzn-0An application that collects internal system-level metrics and custom application metrics from Amazon EC2 instances.
emr-ddb5.3.0Amazon DynamoDB connector for Hadoop ecosystem applications.
emr-goodies3.10.0Extra convenience libraries for the Hadoop ecosystem.
emr-kinesis3.14.0Amazon Kinesis connector for Hadoop ecosystem applications.
emr-notebook-env1.7.0Conda env for emr notebook which includes jupyter enterprise gateway
emr-s3-dist-cp2.31.0Distributed copy application optimized for Amazon S3.
emr-s3-select2.10.0EMR S3Select Connector
emr-wal-cli1.2.2Cli used for emrwal list/deletion.
emrfs2.62.0Amazon S3 connector for Hadoop ecosystem applications.
flink-client1.18.1-amzn-0Apache Flink command line client scripts and applications.
flink-jobmanager-config1.18.1-amzn-0Managing resources on EMR nodes for Apache Flink JobManager.
hadoop-client3.3.6-amzn-3Hadoop command-line clients such as 'hdfs', 'hadoop', or 'yarn'.
hadoop-hdfs-datanode3.3.6-amzn-3HDFS node-level service for storing blocks.
hadoop-hdfs-library3.3.6-amzn-3HDFS command-line client and library
hadoop-hdfs-namenode3.3.6-amzn-3HDFS service for tracking file names and block locations.
hadoop-hdfs-journalnode3.3.6-amzn-3HDFS service for managing the Hadoop filesystem journal on HA clusters.
hadoop-httpfs-server3.3.6-amzn-3HTTP endpoint for HDFS operations.
hadoop-kms-server3.3.6-amzn-3Cryptographic key management server based on Hadoop's KeyProvider API.
hadoop-mapred3.3.6-amzn-3MapReduce execution engine libraries for running a MapReduce application.
hadoop-yarn-nodemanager3.3.6-amzn-3YARN service for managing containers on an individual node.
hadoop-yarn-resourcemanager3.3.6-amzn-3YARN service for allocating and managing cluster resources and distributed applications.
hadoop-yarn-timeline-server3.3.6-amzn-3Service for retrieving current and historical information for YARN applications.
hbase-hmaster2.4.17-amzn-5Service for an HBase cluster responsible for coordination of Regions and execution of administrative commands.
hbase-region-server2.4.17-amzn-5Service for serving one or more HBase regions.
hbase-client2.4.17-amzn-5HBase command-line client.
hbase-rest-server2.4.17-amzn-5Service providing a RESTful HTTP endpoint for HBase.
hbase-thrift-server2.4.17-amzn-5Service providing a Thrift endpoint to HBase.
hbase-operator-tools2.4.17-amzn-5Repair tool for Apache HBase clusters.
hcatalog-client3.1.3-amzn-10The 'hcat' command line client for manipulating hcatalog-server.
hcatalog-server3.1.3-amzn-10Service providing HCatalog, a table and storage management layer for distributed applications.
hcatalog-webhcat-server3.1.3-amzn-10HTTP endpoint providing a REST interface to HCatalog.
hive-client3.1.3-amzn-10Hive command line client.
hive-hbase3.1.3-amzn-10Hive-hbase client.
hive-metastore-server3.1.3-amzn-10Service for accessing the Hive metastore, a semantic repository storing metadata for SQL on Hadoop operations.
hive-server23.1.3-amzn-10Service for accepting Hive queries as web requests.
hudi0.14.1-amzn-0Incremental processing framework to power data pipeline at low latency and high efficiency.
hudi-presto0.14.1-amzn-0Bundle library for running Presto with Hudi.
hudi-trino0.14.1-amzn-0Bundle library for running Trino with Hudi.
hudi-spark0.14.1-amzn-0Bundle library for running Spark with Hudi.
hue-server4.11.0Web application for analyzing data using Hadoop ecosystem applications
iceberg1.4.3-amzn-0Apache Iceberg is an open table format for huge analytic datasets
jupyterhub1.5.0Multi-user server for Jupyter notebooks
livy-server0.8.0-incubatingREST interface for interacting with Apache Spark
nginx1.12.1nginx [engine x] is an HTTP and reverse proxy server
mxnet1.9.1A flexible, scalable, and efficient library for deep learning.
mariadb-server5.5.68+MariaDB database server.
nvidia-cuda11.8.0Nvidia drivers and Cuda toolkit
oozie-client5.2.1Oozie command-line client.
oozie-server5.2.1Service for accepting Oozie workflow requests.
opencv4.7.0Open Source Computer Vision Library.
phoenix-library5.1.3The phoenix libraries for server and client
phoenix-connectors5.1.3Apache Phoenix-Connectors for Spark-3
phoenix-query-server5.1.3A light weight server providing JDBC access as well as Protocol Buffers and JSON format access to the Avatica API
presto-coordinator0.284-amzn-0Service for accepting queries and managing query execution among presto-workers.
presto-worker0.284-amzn-0Service for executing pieces of a query.
presto-client0.284-amzn-0Presto command-line client which is installed on an HA cluster's stand-by masters where Presto server is not started.
trino-coordinator435-amzn-0Service for accepting queries and managing query execution among trino-workers.
trino-worker435-amzn-0Service for executing pieces of a query.
trino-client435-amzn-0Trino command-line client which is installed on an HA cluster's stand-by masters where Trino server is not started.
pig-client0.17.0Pig command-line client.
r4.3.2The R Project for Statistical Computing
ranger-kms-server2.0.0Apache Ranger Key Management System
spark-client3.5.0-amzn-1Spark command-line clients.
spark-history-server3.5.0-amzn-1Web UI for viewing logged events for the lifetime of a completed Spark application.
spark-on-yarn3.5.0-amzn-1In-memory execution engine for YARN.
spark-yarn-slave3.5.0-amzn-1Apache Spark libraries needed by YARN slaves.
spark-rapids23.10.0-amzn-1Nvidia Spark RAPIDS plugin that accelerates Apache Spark with GPUs.
sqoop-client1.4.7Apache Sqoop command-line client.
tensorflow2.11.0TensorFlow open source software library for high performance numerical computation.
tez-on-yarn0.10.2-amzn-8The tez YARN application and libraries.
tez-on-worker0.10.2-amzn-8The tez YARN application and libraries for worker nodes.
zeppelin-server0.10.1Web-based notebook that enables interactive data analytics.
zookeeper-server3.9.1-amzn-0Centralized service for maintaining configuration information, naming, providing distributed synchronization, and providing group services.
zookeeper-client3.9.1-amzn-0ZooKeeper command line client.

7.1.0 configuration classifications

Configuration classifications allow you to customize applications. These often correspond to a configuration XML file for the application, such as hive-site.xml. For more information, see Configure applications.

emr-7.1.0 classifications
Classifications Description

capacity-scheduler

Change values in Hadoop's capacity-scheduler.xml file.

container-executor

Change values in Hadoop YARN's container-executor.cfg file.

container-log4j

Change values in Hadoop YARN's container-log4j.properties file.

core-site

Change values in Hadoop's core-site.xml file.

docker-conf

Change docker related settings.

emrfs-site

Change EMRFS settings.

flink-conf

Change flink-conf.yaml settings.

flink-log4j

Change Flink log4j.properties settings.

flink-log4j-session

Change Flink log4j-session.properties settings for Kubernetes/Yarn session.

flink-log4j-cli

Change Flink log4j-cli.properties settings.

hadoop-env

Change values in the Hadoop environment for all Hadoop components.

hadoop-log4j

Change values in Hadoop's log4j.properties file.

hadoop-ssl-server

Change hadoop ssl server configuration

hadoop-ssl-client

Change hadoop ssl client configuration

hbase

Amazon EMR-curated settings for Apache HBase.

hbase-env

Change values in HBase's environment.

hbase-log4j

Change values in HBase's hbase-log4j.properties file.

hbase-metrics

Change values in HBase's hadoop-metrics2-hbase.properties file.

hbase-policy

Change values in HBase's hbase-policy.xml file.

hbase-site

Change values in HBase's hbase-site.xml file.

hdfs-encryption-zones

Configure HDFS encryption zones.

hdfs-env

Change values in the HDFS environment.

hdfs-site

Change values in HDFS's hdfs-site.xml.

hcatalog-env

Change values in HCatalog's environment.

hcatalog-server-jndi

Change values in HCatalog's jndi.properties.

hcatalog-server-proto-hive-site

Change values in HCatalog's proto-hive-site.xml.

hcatalog-webhcat-env

Change values in HCatalog WebHCat's environment.

hcatalog-webhcat-log4j2

Change values in HCatalog WebHCat's log4j2.properties.

hcatalog-webhcat-site

Change values in HCatalog WebHCat's webhcat-site.xml file.

hive

Amazon EMR-curated settings for Apache Hive.

hive-beeline-log4j2

Change values in Hive's beeline-log4j2.properties file.

hive-parquet-logging

Change values in Hive's parquet-logging.properties file.

hive-env

Change values in the Hive environment.

hive-exec-log4j2

Change values in Hive's hive-exec-log4j2.properties file.

hive-llap-daemon-log4j2

Change values in Hive's llap-daemon-log4j2.properties file.

hive-log4j2

Change values in Hive's hive-log4j2.properties file.

hive-site

Change values in Hive's hive-site.xml file

hiveserver2-site

Change values in Hive Server2's hiveserver2-site.xml file

hue-ini

Change values in Hue's ini file

httpfs-env

Change values in the HTTPFS environment.

httpfs-site

Change values in Hadoop's httpfs-site.xml file.

hadoop-kms-acls

Change values in Hadoop's kms-acls.xml file.

hadoop-kms-env

Change values in the Hadoop KMS environment.

hadoop-kms-java-home

Change Hadoop's KMS java home

hadoop-kms-log4j

Change values in Hadoop's kms-log4j.properties file.

hadoop-kms-site

Change values in Hadoop's kms-site.xml file.

hudi-env

Change values in the Hudi environment.

hudi-defaults

Change values in Hudi's hudi-defaults.conf file.

iceberg-defaults

Change values in Iceberg's iceberg-defaults.conf file.

delta-defaults

Change values in Delta's delta-defaults.conf file.

jupyter-notebook-conf

Change values in Jupyter Notebook's jupyter_notebook_config.py file.

jupyter-hub-conf

Change values in JupyterHubs's jupyterhub_config.py file.

jupyter-s3-conf

Configure Jupyter Notebook S3 persistence.

jupyter-sparkmagic-conf

Change values in Sparkmagic's config.json file.

livy-conf

Change values in Livy's livy.conf file.

livy-env

Change values in the Livy environment.

livy-log4j2

Change Livy log4j2.properties settings.

mapred-env

Change values in the MapReduce application's environment.

mapred-site

Change values in the MapReduce application's mapred-site.xml file.

oozie-env

Change values in Oozie's environment.

oozie-log4j

Change values in Oozie's oozie-log4j.properties file.

oozie-site

Change values in Oozie's oozie-site.xml file.

phoenix-hbase-metrics

Change values in Phoenix's hadoop-metrics2-hbase.properties file.

phoenix-hbase-site

Change values in Phoenix's hbase-site.xml file.

phoenix-log4j

Change values in Phoenix's log4j.properties file.

phoenix-metrics

Change values in Phoenix's hadoop-metrics2-phoenix.properties file.

pig-env

Change values in the Pig environment.

pig-properties

Change values in Pig's pig.properties file.

pig-log4j

Change values in Pig's log4j.properties file.

presto-log

Change values in Presto's log.properties file.

presto-config

Change values in Presto's config.properties file.

presto-password-authenticator

Change values in Presto's password-authenticator.properties file.

presto-env

Change values in Presto's presto-env.sh file.

presto-node

Change values in Presto's node.properties file.

presto-connector-blackhole

Change values in Presto's blackhole.properties file.

presto-connector-cassandra

Change values in Presto's cassandra.properties file.

presto-connector-hive

Change values in Presto's hive.properties file.

presto-connector-jmx

Change values in Presto's jmx.properties file.

presto-connector-kafka

Change values in Presto's kafka.properties file.

presto-connector-lakeformation

Change values in Presto's lakeformation.properties file.

presto-connector-localfile

Change values in Presto's localfile.properties file.

presto-connector-memory

Change values in Presto's memory.properties file.

presto-connector-mongodb

Change values in Presto's mongodb.properties file.

presto-connector-mysql

Change values in Presto's mysql.properties file.

presto-connector-postgresql

Change values in Presto's postgresql.properties file.

presto-connector-raptor

Change values in Presto's raptor.properties file.

presto-connector-redis

Change values in Presto's redis.properties file.

presto-connector-redshift

Change values in Presto's redshift.properties file.

presto-connector-tpch

Change values in Presto's tpch.properties file.

presto-connector-tpcds

Change values in Presto's tpcds.properties file.

trino-log

Change values in Trino's log.properties file.

trino-config

Change values in Trino's config.properties file.

trino-password-authenticator

Change values in Trino's password-authenticator.properties file.

trino-env

Change values in Trino's trino-env.sh file.

trino-node

Change values in Trino's node.properties file.

trino-connector-blackhole

Change values in Trino's blackhole.properties file.

trino-connector-cassandra

Change values in Trino's cassandra.properties file.

trino-connector-delta

Change values in Trino's delta.properties file.

trino-connector-hive

Change values in Trino's hive.properties file.

trino-exchange-manager

Change values in Trino's exchange-manager.properties file.

trino-connector-iceberg

Change values in Trino's iceberg.properties file.

trino-connector-hudi

Change values in Trino's hudi.properties file.

trino-connector-jmx

Change values in Trino's jmx.properties file.

trino-connector-kafka

Change values in Trino's kafka.properties file.

trino-connector-localfile

Change values in Trino's localfile.properties file.

trino-connector-memory

Change values in Trino's memory.properties file.

trino-connector-mongodb

Change values in Trino's mongodb.properties file.

trino-connector-mysql

Change values in Trino's mysql.properties file.

trino-connector-postgresql

Change values in Trino's postgresql.properties file.

trino-connector-raptor

Change values in Trino's raptor.properties file.

trino-connector-redis

Change values in Trino's redis.properties file.

trino-connector-redshift

Change values in Trino's redshift.properties file.

trino-connector-tpch

Change values in Trino's tpch.properties file.

trino-connector-tpcds

Change values in Trino's tpcds.properties file.

ranger-kms-dbks-site

Change values in dbks-site.xml file of Ranger KMS.

ranger-kms-site

Change values in ranger-kms-site.xml file of Ranger KMS.

ranger-kms-env

Change values in the Ranger KMS environment.

ranger-kms-logback

Change values in kms-logback.xml file of Ranger KMS.

ranger-kms-db-ca

Change values for CA file on S3 for MySQL SSL connection with Ranger KMS.

spark

Amazon EMR-curated settings for Apache Spark.

spark-defaults

Change values in Spark's spark-defaults.conf file.

spark-env

Change values in the Spark environment.

spark-hive-site

Change values in Spark's hive-site.xml file

spark-log4j2

Change values in Spark's log4j2.properties file.

spark-metrics

Change values in Spark's metrics.properties file.

sqoop-env

Change values in Sqoop's environment.

sqoop-oraoop-site

Change values in Sqoop OraOop's oraoop-site.xml file.

sqoop-site

Change values in Sqoop's sqoop-site.xml file.

tez-site

Change values in Tez's tez-site.xml file.

yarn-env

Change values in the YARN environment.

yarn-site

Change values in YARN's yarn-site.xml file.

zeppelin-env

Change values in the Zeppelin environment.

zeppelin-site

Change configuration settings in zeppelin-site.xml.

zookeeper-config

Change values in ZooKeeper's zoo.cfg file.

zookeeper-logback

Change values in ZooKeeper's logback.xml file.

emr-metrics

Change emr metric settings for this node.

7.1.0 change log

Change log for 7.1.0 release and release notes
Date Event Description
2024-05-10 Docs publication Amazon EMR 7.1.0 release notes first published

2024-05-08

Deployment complete Amazon EMR 7.1.0 fully deployed to all supported Regions
2024-04-23 Initial release Amazon EMR 7.1.0 first deployed to initial commercial Regions