Amazon EMR
Amazon EMR 版本指南
AWS 文档中描述的 AWS 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 AWS 服务入门

Amazon EMR 5.x 发行版

下方的每个选项卡列出了每个 Amazon EMR 5.x 发行版中可用的应用程序版本、发布说明、组件版本和配置分类。

有关每个版本中的应用程序版本的综合图,请参阅 Amazon EMR 5.x 版本中的应用程序版本 (PNG)

当您启动集群时,有多个 Amazon EMR 发布版可供选择。这允许您测试和使用满足您的兼容性要求的应用程序版本。可使用版本标签指定版本。版本标签的格式是 emr-x.x.x. For example, emr-5.23.0.

New Amazon EMR release versions are made available in different regions over a period of several days, beginning with the first region on the initial release date. The latest release version may not be available in your region during this period.

5.24.05.23.05.22.05.21.05.20.05.19.05.18.05.17.05.16.05.15.05.14.x5.13.05.12.x5.11.x5.10.05.9.05.8.x5.7.05.6.05.5.x5.4.05.3.x5.2.x5.1.05.0.x
5.24.0

5.24.0 应用程序版本

此版本支持以下应用程序:FlinkGangliaHadoopHBaseHCatalogHiveHueJupyterHubLivyMahoutMXNetOoziePhoenixPigPrestoSparkSqoopTensorFlowTezZeppelinZooKeeper

下图描述了此版本的 Amazon EMR 中提供的应用程序版本以及前四个 Amazon EMR 版本中的应用程序版本。

有关每个版本的 Amazon EMR 的应用程序版本的全面历史记录,请参见下面的示意图:

5.24.0 发行说明

以下发布说明包括有关 Amazon EMR 发布版本 5.24.0 的信息。与 5.23.0 相关的更改。

首次发布日期:2019 年 6 月 11 日

升级

  • Flink 1.8.0

  • Hue 4.4.0

  • JupyterHub 0.9.6

  • Livy 0.6.0

  • MxNet 1.4.0

  • Presto 0.219

  • Spark 2.4.2

  • AWS SDK for Java 1.11.546

  • 连接器和驱动程序:

    • DynamoDB 连接器 4.9.0

    • MariaDB 连接器 2.4.1

    • Amazon Redshift JDBC 驱动程序 1.2.27.1051

更改、增强和解决的问题

  • Spark

    • 添加了优化措施来动态修剪分区。默认情况下禁用优化。要启用它,请将 Spark 配置参数 spark.sql.dynamicPartitionPruning.enabled 设置为 true

    • 改进了 INTERSECT 查询的性能。默认情况下禁用此优化。要启用它,请将 Spark 配置参数 spark.sql.optimizer.distinctBeforeIntersect.enabled 设置为 true

    • 添加了优化措施,以使用聚合(使用相同关系)来展平标量子查询。默认情况下禁用优化。要启用它,请将 Spark 配置参数 spark.sql.optimizer.flattenScalarSubqueriesWithAggregates.enabled 设置为 true

    • 改进了整个阶段的代码生成。

    有关更多信息,请参阅优化 Spark 性能

5.24.0 组件版本

下面列出了Amazon EMR 随此版本一起安装的组件。一些组件作为大数据应用程序包的一部分安装。其他组件是 Amazon EMR 独有的,并且已为系统流程和功能安装这些组件。它们通常以 emraws 开头。最新的 Amazon EMR 版本中的大数据应用程序包通常是在社区中找到的最新版本。我们尽快在 Amazon EMR 中提供社区版本。

一些组件需要来自 Amazon EMR 的社区版本的更改。这些组件具有以下形式的 CommunityVersion-amzn-EmrVersion 的版本标签。例如,如果已对名为 myapp-component 的版本 2.2 的大数据社区组件进行三次修改以包含在不同的 Amazon EMR 发行版中,则其发行版将列出为 2.2-amzn-3

组件 版本 描述
aws-sagemaker-spark-sdk 1.2.1 Amazon SageMaker Spark 开发工具包
emr-ddb 4.9.0 适用于 Hadoop 生态系统应用程序的 Amazon DynamoDB 连接器。
emr-goodies 2.8.0 适用于 Hadoop 生态系统的方便易用的库。
emr-kinesis 3.4.0 适用于 Hadoop 生态系统应用程序的 Amazon Kinesis 连接器。
emr-s3-dist-cp 2.11.0 针对 Amazon S3 优化的分布式复制应用程序。
emr-s3-select 1.3.0 EMR S3 Select 连接器
emrfs 2.33.0 适用于 Hadoop 生态系统应用程序的 Amazon S3 连接器。
flink-client 1.8.0 Apache Flink 命令行客户端脚本和应用程序。
ganglia-monitor 3.7.2 适用于 Hadoop 生态系统应用程序的嵌入式 Ganglia 代理以及 Ganglia 监控代理。
ganglia-metadata-collector 3.7.2 用于从 Ganglia 监控代理中聚合指标的 Ganglia 元数据收集器。
ganglia-web 3.7.1 用于查看由 Ganglia 元数据收集器收集的指标的 Web 应用程序。
hadoop-client 2.8.5-amzn-4 Hadoop 命令行客户端,如“hdfs”、“hadoop”或“yarn”。
hadoop-hdfs-datanode 2.8.5-amzn-4 用于存储数据块的 HDFS 节点级服务。
hadoop-hdfs-library 2.8.5-amzn-4 HDFS 命令行客户端和库
hadoop-hdfs-namenode 2.8.5-amzn-4 用于跟踪文件名和数据块位置的 HDFS 服务。
hadoop-hdfs-journalnode 2.8.5-amzn-4 用于管理 HA 集群上的 Hadoop 文件系统日志的 HDFS 服务。
hadoop-httpfs-server 2.8.5-amzn-4 用于 HDFS 操作的 HTTP 终端节点。
hadoop-kms-server 2.8.5-amzn-4 基于 Hadoop 的 KeyProvider API 的加密密钥管理服务器。
hadoop-mapred 2.8.5-amzn-4 用于运行 MapReduce 应用程序的 MapReduce 执行引擎库。
hadoop-yarn-nodemanager 2.8.5-amzn-4 用于管理单个节点上的容器的 YARN 服务。
hadoop-yarn-resourcemanager 2.8.5-amzn-4 用于分配和管理集群资源与分布式应用程序的 YARN 服务。
hadoop-yarn-timeline-server 2.8.5-amzn-4 用于检索 YARN 应用程序的当前信息和历史信息的服务。
hbase-hmaster 1.4.9 适用于负责协调区域和执行管理命令的 HBase 群集的服务。
hbase-region-server 1.4.9 用于服务于一个或多个 HBase 区域的服务。
hbase-client 1.4.9 HBase 命令行客户端。
hbase-rest-server 1.4.9 用于向 HBase 提供 RESTful HTTP 终端节点的服务。
hbase-thrift-server 1.4.9 用于向 HBase 提供 Thrift 终端节点的服务。
hcatalog-client 2.3.4-amzn-2 用于操作 hcatalog-server 的“hcat”命令行客户端。
hcatalog-server 2.3.4-amzn-2 用于为分布式应用程序提供 HCatalog、表和存储管理层的服务。
hcatalog-webhcat-server 2.3.4-amzn-2 用于向 HCatalog 提供 REST 接口的 HTTP 终端节点。
hive-client 2.3.4-amzn-2 Hive 命令行客户端。
hive-hbase 2.3.4-amzn-2 Hive-hbase 客户端。
hive-metastore-server 2.3.4-amzn-2 用于访问 Hive 元存储 (一个用于存储 Hadoop 操作中的 SQL 的元数据的语义存储库) 的服务。
hive-server2 2.3.4-amzn-2 用于将 Hive 查询作为 Web 请求接受的服务。
hue-server 4.4.0 用于使用 Hadoop 生态系统应用程序分析数据的 Web 应用程序
jupyterhub 0.9.6 Jupyter 笔记本的多用户服务器
livy-server 0.6.0-incubating 用于与 Apache Spark 交互的 REST 接口
nginx 1.12.1 nginx [引擎 x] 是 HTTP 和反向代理服务器
mahout-client 0.13.0 用于机器学习的库。
mxnet 1.4.0 用于深度学习的灵活的、可扩展且高效的库。
mysql-server 5.5.54+ MySQL 数据库服务器。
nvidia-cuda 9.2.88 Nvidia 驱动程序和 Cuda 工具包
oozie-client 5.1.0 Oozie 命令行客户端。
oozie-server 5.1.0 用于接受 Oozie 工作流请求的服务。
opencv 3.4.0 开源计算机视觉库。
phoenix-library 4.14.1-HBase-1.4 服务器和客户端的 phoenix 库
phoenix-query-server 4.14.1-HBase-1.4 向 Avatica API 提供 JDBC 访问权限以及协议缓冲区和 JSON 格式访问权限的轻量级服务器
presto-coordinator 0.219 用于在 presto-worker 之中接受查询并管理查询的服务。
presto-worker 0.219 用于执行查询的各个部分的服务。
pig-client 0.17.0 Pig 命令行客户端。
r 3.4.1 用于统计计算的 R 项目
spark-client 2.4.2 Spark 命令行客户端。
spark-history-server 2.4.2 用于查看完整的 Spark 应用程序的生命周期的已记录事件的 Web UI。
spark-on-yarn 2.4.2 适用于 YARN 的内存中执行引擎。
spark-yarn-slave 2.4.2 YARN 从属项所需的 Apache Spark 库。
sqoop-client 1.4.7 Apache Sqoop 命令行客户端。
tensorflow 1.12.0 适用于高性能数值计算的 TensorFlow 开源软件库。
tez-on-yarn 0.9.1 tez YARN 应用程序和库。
webserver 2.4.25+ Apache HTTP 服务器。
zeppelin-server 0.8.1 支持交互式数据分析的基于 Web 的笔记本电脑。
zookeeper-server 3.4.13 用于维护配置信息、命名、提供分布式同步以及提供组服务的集中式服务。
zookeeper-client 3.4.13 ZooKeeper 命令行客户端。

5.24.0 配置分类

配置分类使您能够自定义应用程序。这些分类通常对应于应用程序的配置 XML 文件,例如 hive-site.xml。有关更多信息,请参阅 配置应用程序

emr-5.24.0 分类

分类 说明

capacity-scheduler

更改 Hadoop 的 capacity-scheduler.xml 文件中的值。

container-log4j

更改 Hadoop YARN 的 container-log4j.properties 文件中的值。

core-site

更改 Hadoop 的 core-site.xml 文件中的值。

emrfs-site

更改 EMRFS 设置。

flink-conf

更改 flink-conf.yaml 设置。

flink-log4j

更改 Flink log4j.properties 设置。

flink-log4j-yarn-session

更改 Flink log4j-yarn-session.properties 设置。

flink-log4j-cli

更改 Flink log4j-cli.properties 设置。

hadoop-env

更改适用于所有 Hadoop 组件的 Hadoop 环境中的值。

hadoop-log4j

更改 Hadoop 的 log4j.properties 文件中的值。

hadoop-ssl-server

更改 hadoop ssl 服务器配置

hadoop-ssl-client

更改 hadoop ssl 客户端配置

hbase

适用于 Apache HBase 的 Amazon EMR 辅助设置。

hbase-env

更改 HBase 环境中的值。

hbase-log4j

更改 HBase 的 hbase-log4j.properties 文件中的值。

hbase-metrics

更改 HBase 的 hadoop-metrics2-hbase.properties 文件中的值。

hbase-policy

更改 HBase 的 hbase-policy.xml 文件中的值。

hbase-site

更改 HBase 的 hbase-site.xml 文件中的值。

hdfs-encryption-zones

配置 HDFS 加密区域。

hdfs-site

更改 HDFS 的 hdfs-site.xml 中的值。

hcatalog-env

更改 HCatalog 的环境中的值。

hcatalog-server-jndi

更改 HCatalog 的 jndi.properties 中的值。

hcatalog-server-proto-hive-site

更改 HCatalog 的 proto-hive-site.xml 中的值。

hcatalog-webhcat-env

更改 HCatalog WebHCat 的环境中的值。

hcatalog-webhcat-log4j2

更改 HCatalog WebHCat 的 log4j2.properties 中的值。

hcatalog-webhcat-site

更改 HCatalog WebHCat 的 webhcat-site.xml 文件中的值。

hive-beeline-log4j2

更改 Hive 的 beeline-log4j2.properties 文件中的值。

hive-parquet-logging

更改 Hive parquet-logging.properties 文件中的值。

hive-env

更改 Hive 环境中的值。

hive-exec-log4j2

更改 Hive 的 hive-exec-log4j2.properties 文件中的值。

hive-llap-daemon-log4j2

更改 Hive 的 llap-daemon-log4j2.properties 文件中的值。

hive-log4j2

更改 Hive 的 hive-log4j2.properties 文件中的值。

hive-site

更改 Hive 的 hive-site.xml 文件中的值

hiveserver2-site

更改 Hive Server2 的 hiveserver2-site.xml 文件中的值

hue-ini

更改 Hue 的 ini 文件中的值

httpfs-env

更改 HTTPFS 环境中的值。

httpfs-site

更改 Hadoop 的 httpfs-site.xml 文件中的值。

hadoop-kms-acls

更改 Hadoop 的 kms-acls.xml 文件中的值。

hadoop-kms-env

更改 Hadoop KMS 环境中的值。

hadoop-kms-log4j

更改 Hadoop 的 kms-log4j.properties 文件中的值。

hadoop-kms-site

更改 Hadoop 的 kms-site.xml 文件中的值。

jupyter-notebook-conf

更改 Jupyter Notebook 的 jupyter_notebook_config.py 文件中的值。

jupyter-hub-conf

更改 JupyterHubs 的 jupyterhub_config.py 文件中的值。

jupyter-s3-conf

配置 Jupyter Notebook S3 持久性。

jupyter-sparkmagic-conf

更改 Sparkmagic 的 config.json 文件中的值。

livy-conf

更改 Livy 的 livy.conf 文件中的值。

livy-env

更改 Livy 环境中的值。

livy-log4j

更改 Livy log4j.properties 设置。

mapred-env

更改 MapReduce 应用程序的环境中的值。

mapred-site

更改 MapReduce 应用程序的 mapred-site.xml 文件中的值。

oozie-env

更改 Oozie 的环境中的值。

oozie-log4j

更改 Oozie 的 oozie-log4j.properties 文件中的值。

oozie-site

更改 Oozie 的 oozie-site.xml 文件中的值。

phoenix-hbase-metrics

更改 Phoenix 的 hadoop-metrics2-hbase.properties 文件中的值。

phoenix-hbase-site

更改 Phoenix 的 hbase-site.xml 文件中的值。

phoenix-log4j

更改 Phoenix 的 log4j.properties 文件中的值。

phoenix-metrics

更改 Phoenix 的 hadoop-metrics2-phoenix.properties 文件中的值。

pig-env

更改 Pig 环境中的值。

pig-properties

更改 Pig 的 pig.properties 文件中的值。

pig-log4j

更改 Pig 的 log4j.properties 文件中的值。

presto-log

更改 Presto 的 log.properties 文件中的值。

presto-config

更改 Presto 的 config.properties 文件中的值。

presto-password-authenticator

更改 Presto 的 password-authenticator.properties 文件中的值。

presto-env

更改 Presto 的 presto-env.sh 文件中的值。

presto-node

更改 Presto 的 node.properties 文件中的值。

presto-connector-blackhole

更改 Presto 的 blackhole.properties 文件中的值。

presto-connector-cassandra

更改 Presto 的 cassandra.properties 文件中的值。

presto-connector-hive

更改 Presto 的 hive.properties 文件中的值。

presto-connector-jmx

更改 Presto 的 jmx.properties 文件中的值。

presto-connector-kafka

更改 Presto 的 kafka.properties 文件中的值。

presto-connector-localfile

更改 Presto 的 localfile.properties 文件中的值。

presto-connector-memory

更改 Presto 的 memory.properties 文件中的值。

presto-connector-mongodb

更改 Presto 的 mongodb.properties 文件中的值。

presto-connector-mysql

更改 Presto 的 mysql.properties 文件中的值。

presto-connector-postgresql

更改 Presto 的 postgresql.properties 文件中的值。

presto-connector-raptor

更改 Presto 的 raptor.properties 文件中的值。

presto-connector-redis

更改 Presto 的 redis.properties 文件中的值。

presto-connector-redshift

更改 Presto 的 redshift.properties 文件中的值。

presto-connector-tpch

更改 Presto 的 tpch.properties 文件中的值。

presto-connector-tpcds

更改 Presto 的 tpcds.properties 文件中的值。

spark

适用于 Apache Spark 的 Amazon EMR 辅助设置。

spark-defaults

更改 Spark 的 spark-defaults.conf 文件中的值。

spark-env

更改 Spark 环境中的值。

spark-hive-site

更改 Spark 的 hive-site.xml 文件中的值

spark-log4j

更改 Spark 的 log4j.properties 文件中的值。

spark-metrics

更改 Spark 的 metrics.properties 文件中的值。

sqoop-env

更改 Sqoop 的环境中的值。

sqoop-oraoop-site

更改 Sqoop OraOop 的 oraoop-site.xml 文件中的值。

sqoop-site

更改 Sqoop 的 sqoop-site.xml 文件中的值。

tez-site

更改 Tez 的 tez-site.xml 文件中的值。

yarn-env

更改 YARN 环境中的值。

yarn-site

更改 YARN 的 yarn-site.xml 文件中的值。

zeppelin-env

更改 Zeppelin 环境中的值。

zookeeper-config

更改 ZooKeeper 的 zoo.cfg 文件中的值。

zookeeper-log4j

更改 ZooKeeper 的 log4j.properties 文件中的值。

5.23.0

5.23.0 应用程序版本

此版本支持以下应用程序:FlinkGangliaHadoopHBaseHCatalogHiveHueJupyterHubLivyMahoutMXNetOoziePhoenixPigPrestoSparkSqoopTensorFlowTezZeppelinZooKeeper

下图描述了此版本的 Amazon EMR 中提供的应用程序版本以及前四个 Amazon EMR 版本中的应用程序版本。

有关每个版本的 Amazon EMR 的应用程序版本的全面历史记录,请参见下面的示意图:

5.23.0 发行说明

以下发布说明包括有关 Amazon EMR 发布版本 5.23.0 的信息。与 5.22.0 相关的更改。

首次发布日期:2019 年 4 月 1 日

上次更新日期:2019 年 4 月 30 日

升级

  • AWS SDK for Java 1.11.519

新功能

  • (2019 年 4 月 30 日)使用 Amazon EMR 5.23.0 以及更高版本,您可以启动具有三个主节点的集群,以支持应用程序的高可用性(如 YARN 资源管理器、HDFS 名称节点、Spark、Hive 和 Ganglia)。使用此功能,主节点不再发生潜在的单点故障。如果其中一个主节点出现故障,Amazon EMR 会自动故障转移到备用主节点,并将出现故障的主节点替换为具有相同配置和引导操作的新主节点。有关更多信息,请参阅计划和配置主节点

已知问题

  • Tez UI

    Tez UI 在包括多个主节点的 EMR 集群中不工作。

  • Hue(在 Amazon EMR 发行版本 5.24.0 中修复)

    • 在 Amazon EMR 上运行的 Hue 不支持 Solr。从 Amazon EMR 发布版本 5.20.0 开始,配置错误问题会导致 Solr 被启用,请显示与以下信息相似的轻微错误消息:

      Solr server could not be contacted properly: HTTPConnectionPool('host=ip-xx-xx-xx-xx.ec2.internal', port=1978): Max retries exceeded with url: /solr/admin/info/system?user.name=hue&doAs=administrator&wt=json (Caused by NewConnectionError(': Failed to establish a new connection: [Errno 111] Connection refused',))

      为避免显示 Solr 错误消息:

      1. 使用 SSH 连接主节点命令行。

      2. 使用文本编辑器打开 hue.ini 文件。例如:

        sudo vim /etc/hue/conf/hue.ini

      3. 搜索术语“appblacklist”,然后将对应行修改为如下所示:

        appblacklist = search
      4. 如以下示例所示,保存更改并重启 Hue:

        sudo stop hue; sudo start hue

5.23.0 组件版本

下面列出了Amazon EMR 随此版本一起安装的组件。一些组件作为大数据应用程序包的一部分安装。其他组件是 Amazon EMR 独有的,并且已为系统流程和功能安装这些组件。它们通常以 emraws 开头。最新的 Amazon EMR 版本中的大数据应用程序包通常是在社区中找到的最新版本。我们尽快在 Amazon EMR 中提供社区版本。

一些组件需要来自 Amazon EMR 的社区版本的更改。这些组件具有以下形式的 CommunityVersion-amzn-EmrVersion 的版本标签。例如,如果已对名为 myapp-component 的版本 2.2 的大数据社区组件进行三次修改以包含在不同的 Amazon EMR 发行版中,则其发行版将列出为 2.2-amzn-3

组件 版本 描述
aws-sagemaker-spark-sdk 1.2.1 Amazon SageMaker Spark 开发工具包
emr-ddb 4.8.0 适用于 Hadoop 生态系统应用程序的 Amazon DynamoDB 连接器。
emr-goodies 2.7.0 适用于 Hadoop 生态系统的方便易用的库。
emr-kinesis 3.4.0 适用于 Hadoop 生态系统应用程序的 Amazon Kinesis 连接器。
emr-s3-dist-cp 2.11.0 针对 Amazon S3 优化的分布式复制应用程序。
emr-s3-select 1.2.0 EMR S3 Select 连接器
emrfs 2.32.0 适用于 Hadoop 生态系统应用程序的 Amazon S3 连接器。
flink-client 1.7.1 Apache Flink 命令行客户端脚本和应用程序。
ganglia-monitor 3.7.2 适用于 Hadoop 生态系统应用程序的嵌入式 Ganglia 代理以及 Ganglia 监控代理。
ganglia-metadata-collector 3.7.2 用于从 Ganglia 监控代理中聚合指标的 Ganglia 元数据收集器。
ganglia-web 3.7.1 用于查看由 Ganglia 元数据收集器收集的指标的 Web 应用程序。
hadoop-client 2.8.5-amzn-3 Hadoop 命令行客户端,如“hdfs”、“hadoop”或“yarn”。
hadoop-hdfs-datanode 2.8.5-amzn-3 用于存储数据块的 HDFS 节点级服务。
hadoop-hdfs-library 2.8.5-amzn-3 HDFS 命令行客户端和库
hadoop-hdfs-namenode 2.8.5-amzn-3 用于跟踪文件名和数据块位置的 HDFS 服务。
hadoop-hdfs-journalnode 2.8.5-amzn-3 用于管理 HA 集群上的 Hadoop 文件系统日志的 HDFS 服务。
hadoop-httpfs-server 2.8.5-amzn-3 用于 HDFS 操作的 HTTP 终端节点。
hadoop-kms-server 2.8.5-amzn-3 基于 Hadoop 的 KeyProvider API 的加密密钥管理服务器。
hadoop-mapred 2.8.5-amzn-3 用于运行 MapReduce 应用程序的 MapReduce 执行引擎库。
hadoop-yarn-nodemanager 2.8.5-amzn-3 用于管理单个节点上的容器的 YARN 服务。
hadoop-yarn-resourcemanager 2.8.5-amzn-3 用于分配和管理群集资源与分布式应用程序的 YARN 服务。
hadoop-yarn-timeline-server 2.8.5-amzn-3 用于检索 YARN 应用程序的当前信息和历史信息的服务。
hbase-hmaster 1.4.9 适用于负责协调区域和执行管理命令的 HBase 群集的服务。
hbase-region-server 1.4.9 用于服务于一个或多个 HBase 区域的服务。
hbase-client 1.4.9 HBase 命令行客户端。
hbase-rest-server 1.4.9 用于向 HBase 提供 RESTful HTTP 终端节点的服务。
hbase-thrift-server 1.4.9 用于向 HBase 提供 Thrift 终端节点的服务。
hcatalog-client 2.3.4-amzn-1 用于操作 hcatalog-server 的“hcat”命令行客户端。
hcatalog-server 2.3.4-amzn-1 用于为分布式应用程序提供 HCatalog、表和存储管理层的服务。
hcatalog-webhcat-server 2.3.4-amzn-1 用于向 HCatalog 提供 REST 接口的 HTTP 终端节点。
hive-client 2.3.4-amzn-1 Hive 命令行客户端。
hive-hbase 2.3.4-amzn-1 Hive-hbase 客户端。
hive-metastore-server 2.3.4-amzn-1 用于访问 Hive 元存储 (一个用于存储 Hadoop 操作中的 SQL 的元数据的语义存储库) 的服务。
hive-server2 2.3.4-amzn-1 用于将 Hive 查询作为 Web 请求接受的服务。
hue-server 4.3.0 用于使用 Hadoop 生态系统应用程序分析数据的 Web 应用程序
jupyterhub 0.9.4 Jupyter 笔记本的多用户服务器
livy-server 0.5.0-incubating 用于与 Apache Spark 交互的 REST 接口
nginx 1.12.1 nginx [引擎 x] 是 HTTP 和反向代理服务器
mahout-client 0.13.0 用于机器学习的库。
mxnet 1.3.1 用于深度学习的灵活的、可扩展且高效的库。
mysql-server 5.5.54+ MySQL 数据库服务器。
nvidia-cuda 9.2.88 Nvidia 驱动程序和 Cuda 工具包
oozie-client 5.1.0 Oozie 命令行客户端。
oozie-server 5.1.0 用于接受 Oozie 工作流请求的服务。
opencv 3.4.0 开源计算机视觉库。
phoenix-library 4.14.1-HBase-1.4 服务器和客户端的 phoenix 库
phoenix-query-server 4.14.1-HBase-1.4 向 Avatica API 提供 JDBC 访问权限以及协议缓冲区和 JSON 格式访问权限的轻量级服务器
presto-coordinator 0.215 用于在 presto-worker 之中接受查询并管理查询的服务。
presto-worker 0.215 用于执行查询的各个部分的服务。
pig-client 0.17.0 Pig 命令行客户端。
r 3.4.1 用于统计计算的 R 项目
spark-client 2.4.0 Spark 命令行客户端。
spark-history-server 2.4.0 用于查看完整的 Spark 应用程序的生命周期的已记录事件的 Web UI。
spark-on-yarn 2.4.0 适用于 YARN 的内存中执行引擎。
spark-yarn-slave 2.4.0 YARN 从属项所需的 Apache Spark 库。
sqoop-client 1.4.7 Apache Sqoop 命令行客户端。
tensorflow 1.12.0 适用于高性能数值计算的 TensorFlow 开源软件库。
tez-on-yarn 0.9.1 tez YARN 应用程序和库。
webserver 2.4.25+ Apache HTTP 服务器。
zeppelin-server 0.8.1 支持交互式数据分析的基于 Web 的笔记本电脑。
zookeeper-server 3.4.13 用于维护配置信息、命名、提供分布式同步以及提供组服务的集中式服务。
zookeeper-client 3.4.13 ZooKeeper 命令行客户端。

5.23.0 配置分类

配置分类使您能够自定义应用程序。这些分类通常对应于应用程序的配置 XML 文件,例如 hive-site.xml。有关更多信息,请参阅 配置应用程序

emr-5.23.0 分类

分类 说明

capacity-scheduler

更改 Hadoop 的 capacity-scheduler.xml 文件中的值。

container-log4j

更改 Hadoop YARN 的 container-log4j.properties 文件中的值。

core-site

更改 Hadoop 的 core-site.xml 文件中的值。

emrfs-site

更改 EMRFS 设置。

flink-conf

更改 flink-conf.yaml 设置。

flink-log4j

更改 Flink log4j.properties 设置。

flink-log4j-yarn-session

更改 Flink log4j-yarn-session.properties 设置。

flink-log4j-cli

更改 Flink log4j-cli.properties 设置。

hadoop-env

更改适用于所有 Hadoop 组件的 Hadoop 环境中的值。

hadoop-log4j

更改 Hadoop 的 log4j.properties 文件中的值。

hadoop-ssl-server

更改 hadoop ssl 服务器配置

hadoop-ssl-client

更改 hadoop ssl 客户端配置

hbase

适用于 Apache HBase 的 Amazon EMR 辅助设置。

hbase-env

更改 HBase 环境中的值。

hbase-log4j

更改 HBase 的 hbase-log4j.properties 文件中的值。

hbase-metrics

更改 HBase 的 hadoop-metrics2-hbase.properties 文件中的值。

hbase-policy

更改 HBase 的 hbase-policy.xml 文件中的值。

hbase-site

更改 HBase 的 hbase-site.xml 文件中的值。

hdfs-encryption-zones

配置 HDFS 加密区域。

hdfs-site

更改 HDFS 的 hdfs-site.xml 中的值。

hcatalog-env

更改 HCatalog 的环境中的值。

hcatalog-server-jndi

更改 HCatalog 的 jndi.properties 中的值。

hcatalog-server-proto-hive-site

更改 HCatalog 的 proto-hive-site.xml 中的值。

hcatalog-webhcat-env

更改 HCatalog WebHCat 的环境中的值。

hcatalog-webhcat-log4j2

更改 HCatalog WebHCat 的 log4j2.properties 中的值。

hcatalog-webhcat-site

更改 HCatalog WebHCat 的 webhcat-site.xml 文件中的值。

hive-beeline-log4j2

更改 Hive 的 beeline-log4j2.properties 文件中的值。

hive-parquet-logging

更改 Hive parquet-logging.properties 文件中的值。

hive-env

更改 Hive 环境中的值。

hive-exec-log4j2

更改 Hive 的 hive-exec-log4j2.properties 文件中的值。

hive-llap-daemon-log4j2

更改 Hive 的 llap-daemon-log4j2.properties 文件中的值。

hive-log4j2

更改 Hive 的 hive-log4j2.properties 文件中的值。

hive-site

更改 Hive 的 hive-site.xml 文件中的值

hiveserver2-site

更改 Hive Server2 的 hiveserver2-site.xml 文件中的值

hue-ini

更改 Hue 的 ini 文件中的值

httpfs-env

更改 HTTPFS 环境中的值。

httpfs-site

更改 Hadoop 的 httpfs-site.xml 文件中的值。

hadoop-kms-acls

更改 Hadoop 的 kms-acls.xml 文件中的值。

hadoop-kms-env

更改 Hadoop KMS 环境中的值。

hadoop-kms-log4j

更改 Hadoop 的 kms-log4j.properties 文件中的值。

hadoop-kms-site

更改 Hadoop 的 kms-site.xml 文件中的值。

jupyter-notebook-conf

更改 Jupyter Notebook 的 jupyter_notebook_config.py 文件中的值。

jupyter-hub-conf

更改 JupyterHubs 的 jupyterhub_config.py 文件中的值。

jupyter-s3-conf

配置 Jupyter Notebook S3 持久性。

jupyter-sparkmagic-conf

更改 Sparkmagic 的 config.json 文件中的值。

livy-conf

更改 Livy 的 livy.conf 文件中的值。

livy-env

更改 Livy 环境中的值。

livy-log4j

更改 Livy log4j.properties 设置。

mapred-env

更改 MapReduce 应用程序的环境中的值。

mapred-site

更改 MapReduce 应用程序的 mapred-site.xml 文件中的值。

oozie-env

更改 Oozie 的环境中的值。

oozie-log4j

更改 Oozie 的 oozie-log4j.properties 文件中的值。

oozie-site

更改 Oozie 的 oozie-site.xml 文件中的值。

phoenix-hbase-metrics

更改 Phoenix 的 hadoop-metrics2-hbase.properties 文件中的值。

phoenix-hbase-site

更改 Phoenix 的 hbase-site.xml 文件中的值。

phoenix-log4j

更改 Phoenix 的 log4j.properties 文件中的值。

phoenix-metrics

更改 Phoenix 的 hadoop-metrics2-phoenix.properties 文件中的值。

pig-env

更改 Pig 环境中的值。

pig-properties

更改 Pig 的 pig.properties 文件中的值。

pig-log4j

更改 Pig 的 log4j.properties 文件中的值。

presto-log

更改 Presto 的 log.properties 文件中的值。

presto-config

更改 Presto 的 config.properties 文件中的值。

presto-password-authenticator

更改 Presto 的 password-authenticator.properties 文件中的值。

presto-env

更改 Presto 的 presto-env.sh 文件中的值。

presto-node

更改 Presto 的 node.properties 文件中的值。

presto-connector-blackhole

更改 Presto 的 blackhole.properties 文件中的值。

presto-connector-cassandra

更改 Presto 的 cassandra.properties 文件中的值。

presto-connector-hive

更改 Presto 的 hive.properties 文件中的值。

presto-connector-jmx

更改 Presto 的 jmx.properties 文件中的值。

presto-connector-kafka

更改 Presto 的 kafka.properties 文件中的值。

presto-connector-localfile

更改 Presto 的 localfile.properties 文件中的值。

presto-connector-memory

更改 Presto 的 memory.properties 文件中的值。

presto-connector-mongodb

更改 Presto 的 mongodb.properties 文件中的值。

presto-connector-mysql

更改 Presto 的 mysql.properties 文件中的值。

presto-connector-postgresql

更改 Presto 的 postgresql.properties 文件中的值。

presto-connector-raptor

更改 Presto 的 raptor.properties 文件中的值。

presto-connector-redis

更改 Presto 的 redis.properties 文件中的值。

presto-connector-redshift

更改 Presto 的 redshift.properties 文件中的值。

presto-connector-tpch

更改 Presto 的 tpch.properties 文件中的值。

presto-connector-tpcds

更改 Presto 的 tpcds.properties 文件中的值。

spark

适用于 Apache Spark 的 Amazon EMR 辅助设置。

spark-defaults

更改 Spark 的 spark-defaults.conf 文件中的值。

spark-env

更改 Spark 环境中的值。

spark-hive-site

更改 Spark 的 hive-site.xml 文件中的值

spark-log4j

更改 Spark 的 log4j.properties 文件中的值。

spark-metrics

更改 Spark 的 metrics.properties 文件中的值。

sqoop-env

更改 Sqoop 的环境中的值。

sqoop-oraoop-site

更改 Sqoop OraOop 的 oraoop-site.xml 文件中的值。

sqoop-site

更改 Sqoop 的 sqoop-site.xml 文件中的值。

tez-site

更改 Tez 的 tez-site.xml 文件中的值。

yarn-env

更改 YARN 环境中的值。

yarn-site

更改 YARN 的 yarn-site.xml 文件中的值。

zeppelin-env

更改 Zeppelin 环境中的值。

zookeeper-config

更改 ZooKeeper 的 zoo.cfg 文件中的值。

zookeeper-log4j

更改 ZooKeeper 的 log4j.properties 文件中的值。

5.22.0

5.22.0 应用程序版本

此版本支持以下应用程序:FlinkGangliaHadoopHBaseHCatalogHiveHueJupyterHubLivyMahoutMXNetOoziePhoenixPigPrestoSparkSqoopTensorFlowTezZeppelinZooKeeper

下图描述了此版本的 Amazon EMR 中提供的应用程序版本以及前四个 Amazon EMR 版本中的应用程序版本。

有关每个版本的 Amazon EMR 的应用程序版本的全面历史记录,请参见下面的示意图:

5.22.0 发行说明

以下发布说明包括有关 Amazon EMR 发布版本 5.22.0 的信息。与 5.21.0 相关的更改。

重要

从 Amazon EMR 发布版本 5.22.0 开始,Amazon EMR 将 AWS 签名版本 4 专用于验证对 Amazon S3 的请求。早期 Amazon EMR 发布版本在某些情况下使用 AWS 签名版本 2,除非发布说明中指出仅使用签名版本 4。有关更多信息,请参阅Amazon Simple Storage Service 开发人员指南中的对请求进行身份验证(AWS 签名版本 4)对请求进行身份验证(AWS 签名版本 2)

首次发布日期:2019 年 3 月 20 日

升级

  • Flink 1.7.1

  • HBase 1.4.9

  • Oozie 5.1.0

  • Phoenix 4.14.1

  • Zeppelin 0.8.1

  • 连接器和驱动程序:

    • DynamoDB 连接器 4.8.0

    • MariaDB 连接器 2.2.6

    • Amazon Redshift JDBC 驱动程序 1.2.20.1043

新功能

  • 修改了使用仅 EBS 存储的 EC2 实例类型的默认 EBS 配置。在使用 Amazon EMR 发布版本 5.22.0 和更高版本创建集群时,默认 EBS 存储量根据实例大小而增加。另外,我们将增加的存储量拆分到多个卷中,从而提高 IOPS 性能。如果要使用不同的 EBS 实例存储配置,您可以在创建 EMR 集群或将节点添加到现有集群时指定该配置。有关存储量以及为每个实例类型分配的默认卷数的更多信息,请参阅Amazon EMR 管理指南中的实例的默认 EBS 存储

更改、增强和解决的问题

  • Spark

    • 在 YARN 上为 Spark 引入新的配置属性,spark.yarn.executor.memoryOverheadFactor。此属性的值是一个缩放系数,可将内存开销的值设置为执行程序内存的百分比且最小值为 384 MB。如果使用 spark.yarn.executor.memoryOverhead 显式设置内存开销,则此属性无效。默认值是 0.1875,代表 18.75%。与 Spark 在内部设置的 10% 的默认值相比,Amazon EMR 的默认值会在 YARN 容器中留出更多空间用于执行程序内存开销。根据经验,Amazon EMR 的 18.75% 的默认值在 TPC-DS 基准中出现的内存相关失败会更少。

    • 反向移植了 SPARK-26316 以提高性能。

已知问题

  • Hue(在 Amazon EMR 发行版本 5.24.0 中修复)

    • 在 Amazon EMR 上运行的 Hue 不支持 Solr。从 Amazon EMR 发布版本 5.20.0 开始,配置错误问题会导致 Solr 被启用,请显示与以下信息相似的轻微错误消息:

      Solr server could not be contacted properly: HTTPConnectionPool('host=ip-xx-xx-xx-xx.ec2.internal', port=1978): Max retries exceeded with url: /solr/admin/info/system?user.name=hue&doAs=administrator&wt=json (Caused by NewConnectionError(': Failed to establish a new connection: [Errno 111] Connection refused',))

      为避免显示 Solr 错误消息:

      1. 使用 SSH 连接主节点命令行。

      2. 使用文本编辑器打开 hue.ini 文件。例如:

        sudo vim /etc/hue/conf/hue.ini

      3. 搜索术语“appblacklist”,然后将对应行修改为如下所示:

        appblacklist = search
      4. 如以下示例所示,保存更改并重启 Hue:

        sudo stop hue; sudo start hue

5.22.0 组件版本

下面列出了Amazon EMR 随此版本一起安装的组件。一些组件作为大数据应用程序包的一部分安装。其他组件是 Amazon EMR 独有的,并且已为系统流程和功能安装这些组件。它们通常以 emraws 开头。最新的 Amazon EMR 版本中的大数据应用程序包通常是在社区中找到的最新版本。我们尽快在 Amazon EMR 中提供社区版本。

一些组件需要来自 Amazon EMR 的社区版本的更改。这些组件具有以下形式的 CommunityVersion-amzn-EmrVersion 的版本标签。例如,如果已对名为 myapp-component 的版本 2.2 的大数据社区组件进行三次修改以包含在不同的 Amazon EMR 发行版中,则其发行版将列出为 2.2-amzn-3

组件 版本 描述
aws-sagemaker-spark-sdk 1.2.1 Amazon SageMaker Spark 开发工具包
emr-ddb 4.8.0 适用于 Hadoop 生态系统应用程序的 Amazon DynamoDB 连接器。
emr-goodies 2.6.0 适用于 Hadoop 生态系统的方便易用的库。
emr-kinesis 3.4.0 适用于 Hadoop 生态系统应用程序的 Amazon Kinesis 连接器。
emr-s3-dist-cp 2.11.0 针对 Amazon S3 优化的分布式复制应用程序。
emr-s3-select 1.2.0 EMR S3 Select 连接器
emrfs 2.31.0 适用于 Hadoop 生态系统应用程序的 Amazon S3 连接器。
flink-client 1.7.1 Apache Flink 命令行客户端脚本和应用程序。
ganglia-monitor 3.7.2 适用于 Hadoop 生态系统应用程序的嵌入式 Ganglia 代理以及 Ganglia 监控代理。
ganglia-metadata-collector 3.7.2 用于从 Ganglia 监控代理中聚合指标的 Ganglia 元数据收集器。
ganglia-web 3.7.1 用于查看由 Ganglia 元数据收集器收集的指标的 Web 应用程序。
hadoop-client 2.8.5-amzn-2 Hadoop 命令行客户端,如“hdfs”、“hadoop”或“yarn”。
hadoop-hdfs-datanode 2.8.5-amzn-2 用于存储数据块的 HDFS 节点级服务。
hadoop-hdfs-library 2.8.5-amzn-2 HDFS 命令行客户端和库
hadoop-hdfs-namenode 2.8.5-amzn-2 用于跟踪文件名和数据块位置的 HDFS 服务。
hadoop-httpfs-server 2.8.5-amzn-2 用于 HDFS 操作的 HTTP 终端节点。
hadoop-kms-server 2.8.5-amzn-2 基于 Hadoop 的 KeyProvider API 的加密密钥管理服务器。
hadoop-mapred 2.8.5-amzn-2 用于运行 MapReduce 应用程序的 MapReduce 执行引擎库。
hadoop-yarn-nodemanager 2.8.5-amzn-2 用于管理单个节点上的容器的 YARN 服务。
hadoop-yarn-resourcemanager 2.8.5-amzn-2 用于分配和管理群集资源与分布式应用程序的 YARN 服务。
hadoop-yarn-timeline-server 2.8.5-amzn-2 用于检索 YARN 应用程序的当前信息和历史信息的服务。
hbase-hmaster 1.4.9 适用于负责协调区域和执行管理命令的 HBase 群集的服务。
hbase-region-server 1.4.9 用于服务于一个或多个 HBase 区域的服务。
hbase-client 1.4.9 HBase 命令行客户端。
hbase-rest-server 1.4.9 用于向 HBase 提供 RESTful HTTP 终端节点的服务。
hbase-thrift-server 1.4.9 用于向 HBase 提供 Thrift 终端节点的服务。
hcatalog-client 2.3.4-amzn-1 用于操作 hcatalog-server 的“hcat”命令行客户端。
hcatalog-server 2.3.4-amzn-1 用于为分布式应用程序提供 HCatalog、表和存储管理层的服务。
hcatalog-webhcat-server 2.3.4-amzn-1 用于向 HCatalog 提供 REST 接口的 HTTP 终端节点。
hive-client 2.3.4-amzn-1 Hive 命令行客户端。
hive-hbase 2.3.4-amzn-1 Hive-hbase 客户端。
hive-metastore-server 2.3.4-amzn-1 用于访问 Hive 元存储 (一个用于存储 Hadoop 操作中的 SQL 的元数据的语义存储库) 的服务。
hive-server2 2.3.4-amzn-1 用于将 Hive 查询作为 Web 请求接受的服务。
hue-server 4.3.0 用于使用 Hadoop 生态系统应用程序分析数据的 Web 应用程序
jupyterhub 0.9.4 Jupyter 笔记本的多用户服务器
livy-server 0.5.0-incubating 用于与 Apache Spark 交互的 REST 接口
nginx 1.12.1 nginx [引擎 x] 是 HTTP 和反向代理服务器
mahout-client 0.13.0 用于机器学习的库。
mxnet 1.3.1 用于深度学习的灵活的、可扩展且高效的库。
mysql-server 5.5.54+ MySQL 数据库服务器。
nvidia-cuda 9.2.88 Nvidia 驱动程序和 Cuda 工具包
oozie-client 5.1.0 Oozie 命令行客户端。
oozie-server 5.1.0 用于接受 Oozie 工作流请求的服务。
opencv 3.4.0 开源计算机视觉库。
phoenix-library 4.14.1-HBase-1.4 服务器和客户端的 phoenix 库
phoenix-query-server 4.14.1-HBase-1.4 向 Avatica API 提供 JDBC 访问权限以及协议缓冲区和 JSON 格式访问权限的轻量级服务器
presto-coordinator 0.215 用于在 presto-worker 之中接受查询并管理查询的服务。
presto-worker 0.215 用于执行查询的各个部分的服务。
pig-client 0.17.0 Pig 命令行客户端。
r 3.4.1 用于统计计算的 R 项目
spark-client 2.4.0 Spark 命令行客户端。
spark-history-server 2.4.0 用于查看完整的 Spark 应用程序的生命周期的已记录事件的 Web UI。
spark-on-yarn 2.4.0 适用于 YARN 的内存中执行引擎。
spark-yarn-slave 2.4.0 YARN 从属项所需的 Apache Spark 库。
sqoop-client 1.4.7 Apache Sqoop 命令行客户端。
tensorflow 1.12.0 适用于高性能数值计算的 TensorFlow 开源软件库。
tez-on-yarn 0.9.1 tez YARN 应用程序和库。
webserver 2.4.25+ Apache HTTP 服务器。
zeppelin-server 0.8.1 支持交互式数据分析的基于 Web 的笔记本电脑。
zookeeper-server 3.4.13 用于维护配置信息、命名、提供分布式同步以及提供组服务的集中式服务。
zookeeper-client 3.4.13 ZooKeeper 命令行客户端。

5.22.0 配置分类

配置分类使您能够自定义应用程序。这些分类通常对应于应用程序的配置 XML 文件,例如 hive-site.xml。有关更多信息,请参阅 配置应用程序

emr-5.22.0 分类

分类 说明

capacity-scheduler

更改 Hadoop 的 capacity-scheduler.xml 文件中的值。

container-log4j

更改 Hadoop YARN 的 container-log4j.properties 文件中的值。

core-site

更改 Hadoop 的 core-site.xml 文件中的值。

emrfs-site

更改 EMRFS 设置。

flink-conf

更改 flink-conf.yaml 设置。

flink-log4j

更改 Flink log4j.properties 设置。

flink-log4j-yarn-session

更改 Flink log4j-yarn-session.properties 设置。

flink-log4j-cli

更改 Flink log4j-cli.properties 设置。

hadoop-env

更改适用于所有 Hadoop 组件的 Hadoop 环境中的值。

hadoop-log4j

更改 Hadoop 的 log4j.properties 文件中的值。

hadoop-ssl-server

更改 hadoop ssl 服务器配置

hadoop-ssl-client

更改 hadoop ssl 客户端配置

hbase

适用于 Apache HBase 的 Amazon EMR 辅助设置。

hbase-env

更改 HBase 环境中的值。

hbase-log4j

更改 HBase 的 hbase-log4j.properties 文件中的值。

hbase-metrics

更改 HBase 的 hadoop-metrics2-hbase.properties 文件中的值。

hbase-policy

更改 HBase 的 hbase-policy.xml 文件中的值。

hbase-site

更改 HBase 的 hbase-site.xml 文件中的值。

hdfs-encryption-zones

配置 HDFS 加密区域。

hdfs-site

更改 HDFS 的 hdfs-site.xml 中的值。

hcatalog-env

更改 HCatalog 的环境中的值。

hcatalog-server-jndi

更改 HCatalog 的 jndi.properties 中的值。

hcatalog-server-proto-hive-site

更改 HCatalog 的 proto-hive-site.xml 中的值。

hcatalog-webhcat-env

更改 HCatalog WebHCat 的环境中的值。

hcatalog-webhcat-log4j2

更改 HCatalog WebHCat 的 log4j2.properties 中的值。

hcatalog-webhcat-site

更改 HCatalog WebHCat 的 webhcat-site.xml 文件中的值。

hive-beeline-log4j2

更改 Hive 的 beeline-log4j2.properties 文件中的值。

hive-parquet-logging

更改 Hive parquet-logging.properties 文件中的值。

hive-env

更改 Hive 环境中的值。

hive-exec-log4j2

更改 Hive 的 hive-exec-log4j2.properties 文件中的值。

hive-llap-daemon-log4j2

更改 Hive 的 llap-daemon-log4j2.properties 文件中的值。

hive-log4j2

更改 Hive 的 hive-log4j2.properties 文件中的值。

hive-site

更改 Hive 的 hive-site.xml 文件中的值

hiveserver2-site

更改 Hive Server2 的 hiveserver2-site.xml 文件中的值

hue-ini

更改 Hue 的 ini 文件中的值

httpfs-env

更改 HTTPFS 环境中的值。

httpfs-site

更改 Hadoop 的 httpfs-site.xml 文件中的值。

hadoop-kms-acls

更改 Hadoop 的 kms-acls.xml 文件中的值。

hadoop-kms-env

更改 Hadoop KMS 环境中的值。

hadoop-kms-log4j

更改 Hadoop 的 kms-log4j.properties 文件中的值。

hadoop-kms-site

更改 Hadoop 的 kms-site.xml 文件中的值。

jupyter-notebook-conf

更改 Jupyter Notebook 的 jupyter_notebook_config.py 文件中的值。

jupyter-hub-conf

更改 JupyterHubs 的 jupyterhub_config.py 文件中的值。

jupyter-s3-conf

配置 Jupyter Notebook S3 持久性。

jupyter-sparkmagic-conf

更改 Sparkmagic 的 config.json 文件中的值。

livy-conf

更改 Livy 的 livy.conf 文件中的值。

livy-env

更改 Livy 环境中的值。

livy-log4j

更改 Livy log4j.properties 设置。

mapred-env

更改 MapReduce 应用程序的环境中的值。

mapred-site

更改 MapReduce 应用程序的 mapred-site.xml 文件中的值。

oozie-env

更改 Oozie 的环境中的值。

oozie-log4j

更改 Oozie 的 oozie-log4j.properties 文件中的值。

oozie-site

更改 Oozie 的 oozie-site.xml 文件中的值。

phoenix-hbase-metrics

更改 Phoenix 的 hadoop-metrics2-hbase.properties 文件中的值。

phoenix-hbase-site

更改 Phoenix 的 hbase-site.xml 文件中的值。

phoenix-log4j

更改 Phoenix 的 log4j.properties 文件中的值。

phoenix-metrics

更改 Phoenix 的 hadoop-metrics2-phoenix.properties 文件中的值。

pig-env

更改 Pig 环境中的值。

pig-properties

更改 Pig 的 pig.properties 文件中的值。

pig-log4j

更改 Pig 的 log4j.properties 文件中的值。

presto-log

更改 Presto 的 log.properties 文件中的值。

presto-config

更改 Presto 的 config.properties 文件中的值。

presto-password-authenticator

更改 Presto 的 password-authenticator.properties 文件中的值。

presto-env

更改 Presto 的 presto-env.sh 文件中的值。

presto-node

更改 Presto 的 node.properties 文件中的值。

presto-connector-blackhole

更改 Presto 的 blackhole.properties 文件中的值。

presto-connector-cassandra

更改 Presto 的 cassandra.properties 文件中的值。

presto-connector-hive

更改 Presto 的 hive.properties 文件中的值。

presto-connector-jmx

更改 Presto 的 jmx.properties 文件中的值。

presto-connector-kafka

更改 Presto 的 kafka.properties 文件中的值。

presto-connector-localfile

更改 Presto 的 localfile.properties 文件中的值。

presto-connector-memory

更改 Presto 的 memory.properties 文件中的值。

presto-connector-mongodb

更改 Presto 的 mongodb.properties 文件中的值。

presto-connector-mysql

更改 Presto 的 mysql.properties 文件中的值。

presto-connector-postgresql

更改 Presto 的 postgresql.properties 文件中的值。

presto-connector-raptor

更改 Presto 的 raptor.properties 文件中的值。

presto-connector-redis

更改 Presto 的 redis.properties 文件中的值。

presto-connector-redshift

更改 Presto 的 redshift.properties 文件中的值。

presto-connector-tpch

更改 Presto 的 tpch.properties 文件中的值。

presto-connector-tpcds

更改 Presto 的 tpcds.properties 文件中的值。

spark

适用于 Apache Spark 的 Amazon EMR 辅助设置。

spark-defaults

更改 Spark 的 spark-defaults.conf 文件中的值。

spark-env

更改 Spark 环境中的值。

spark-hive-site

更改 Spark 的 hive-site.xml 文件中的值

spark-log4j

更改 Spark 的 log4j.properties 文件中的值。

spark-metrics

更改 Spark 的 metrics.properties 文件中的值。

sqoop-env

更改 Sqoop 的环境中的值。

sqoop-oraoop-site

更改 Sqoop OraOop 的 oraoop-site.xml 文件中的值。

sqoop-site

更改 Sqoop 的 sqoop-site.xml 文件中的值。

tez-site

更改 Tez 的 tez-site.xml 文件中的值。

yarn-env

更改 YARN 环境中的值。

yarn-site

更改 YARN 的 yarn-site.xml 文件中的值。

zeppelin-env

更改 Zeppelin 环境中的值。

zookeeper-config

更改 ZooKeeper 的 zoo.cfg 文件中的值。

zookeeper-log4j

更改 ZooKeeper 的 log4j.properties 文件中的值。

5.21.0

5.21.0 应用程序版本

此版本支持以下应用程序:FlinkGangliaHadoopHBaseHCatalogHiveHueJupyterHubLivyMahoutMXNetOoziePhoenixPigPrestoSparkSqoopTensorFlowTezZeppelinZooKeeper

下图描述了此版本的 Amazon EMR 中提供的应用程序版本以及前四个 Amazon EMR 版本中的应用程序版本。

有关每个版本的 Amazon EMR 的应用程序版本的全面历史记录,请参见下面的示意图:

5.21.0 发行说明

以下发布说明包括有关 Amazon EMR 发布版本 5.21.0 的信息。与 5.20.0 相关的更改。

首次发布日期:2019 年 2 月 18 日

上次更新日期:2019 年 4 月 3 日

升级

  • Flink 1.7.0

  • Presto 0.215

  • AWS SDK for Java 1.11.479

新功能

  • (2019 年 4 月 3 日)使用 Amazon EMR 版本 5.21.0 以及更高版本,您可以覆盖集群配置,并为运行的集群中的每个实例组指定更多配置分类。您可以使用 Amazon EMR 控制台、AWS Command Line Interface (AWS CLI) 或 AWS 开发工具包来实现此操作。有关更多信息,请参阅为正在运行的实例中的实例组提供配置

更改、增强和解决的问题

已知问题

  • Hue(在 Amazon EMR 发行版本 5.24.0 中修复)

    • 在 Amazon EMR 上运行的 Hue 不支持 Solr。从 Amazon EMR 发布版本 5.20.0 开始,配置错误问题会导致 Solr 被启用,请显示与以下信息相似的轻微错误消息:

      Solr server could not be contacted properly: HTTPConnectionPool('host=ip-xx-xx-xx-xx.ec2.internal', port=1978): Max retries exceeded with url: /solr/admin/info/system?user.name=hue&doAs=administrator&wt=json (Caused by NewConnectionError(': Failed to establish a new connection: [Errno 111] Connection refused',))

      为避免显示 Solr 错误消息:

      1. 使用 SSH 连接主节点命令行。

      2. 使用文本编辑器打开 hue.ini 文件。例如:

        sudo vim /etc/hue/conf/hue.ini

      3. 搜索术语“appblacklist”,然后将对应行修改为如下所示:

        appblacklist = search
      4. 如以下示例所示,保存更改并重启 Hue:

        sudo stop hue; sudo start hue
  • Tez

    • 此问题在 Amazon EMR 5.22.0 中已解决。

      在 http://MasterDNS:8080/tez-ui 通过与集群主节点的 SSH 连接去连接到Tez UI 时,会显示错误“Adapter operation failed - Timeline server (ATS) is out of reach.Either it is down, or CORS is not enabled”,或者相关任务意外显示不适用。

      其原因是 Tez UI 使用 localhost 而不是主节点的主机名向 YARN Timeline Server 发出请求。解决方法是提供脚本以作为引导操作或步骤运行。该脚本会更新 Tez configs.env 文件中的主机名。有关该脚本的更多信息和位置,请参阅引导操作说明

5.21.0 组件版本

下面列出了Amazon EMR 随此版本一起安装的组件。一些组件作为大数据应用程序包的一部分安装。其他组件是 Amazon EMR 独有的,并且已为系统流程和功能安装这些组件。它们通常以 emraws 开头。最新的 Amazon EMR 版本中的大数据应用程序包通常是在社区中找到的最新版本。我们尽快在 Amazon EMR 中提供社区版本。

一些组件需要来自 Amazon EMR 的社区版本的更改。这些组件具有以下形式的 CommunityVersion-amzn-EmrVersion 的版本标签。例如,如果已对名为 myapp-component 的版本 2.2 的大数据社区组件进行三次修改以包含在不同的 Amazon EMR 发行版中,则其发行版将列出为 2.2-amzn-3

组件 版本 描述
aws-sagemaker-spark-sdk 1.2.1 Amazon SageMaker Spark 开发工具包
emr-ddb 4.7.0 适用于 Hadoop 生态系统应用程序的 Amazon DynamoDB 连接器。
emr-goodies 2.5.1 适用于 Hadoop 生态系统的方便易用的库。
emr-kinesis 3.4.0 适用于 Hadoop 生态系统应用程序的 Amazon Kinesis 连接器。
emr-s3-dist-cp 2.11.0 针对 Amazon S3 优化的分布式复制应用程序。
emr-s3-select 1.2.0 EMR S3 Select 连接器
emrfs 2.30.0 适用于 Hadoop 生态系统应用程序的 Amazon S3 连接器。
flink-client 1.7.0 Apache Flink 命令行客户端脚本和应用程序。
ganglia-monitor 3.7.2 适用于 Hadoop 生态系统应用程序的嵌入式 Ganglia 代理以及 Ganglia 监控代理。
ganglia-metadata-collector 3.7.2 用于从 Ganglia 监控代理中聚合指标的 Ganglia 元数据收集器。
ganglia-web 3.7.1 用于查看由 Ganglia 元数据收集器收集的指标的 Web 应用程序。
hadoop-client 2.8.5-amzn-1 Hadoop 命令行客户端,如“hdfs”、“hadoop”或“yarn”。
hadoop-hdfs-datanode 2.8.5-amzn-1 用于存储数据块的 HDFS 节点级服务。
hadoop-hdfs-library 2.8.5-amzn-1 HDFS 命令行客户端和库
hadoop-hdfs-namenode 2.8.5-amzn-1 用于跟踪文件名和数据块位置的 HDFS 服务。
hadoop-httpfs-server 2.8.5-amzn-1 用于 HDFS 操作的 HTTP 终端节点。
hadoop-kms-server 2.8.5-amzn-1 基于 Hadoop 的 KeyProvider API 的加密密钥管理服务器。
hadoop-mapred 2.8.5-amzn-1 用于运行 MapReduce 应用程序的 MapReduce 执行引擎库。
hadoop-yarn-nodemanager 2.8.5-amzn-1 用于管理单个节点上的容器的 YARN 服务。
hadoop-yarn-resourcemanager 2.8.5-amzn-1 用于分配和管理集群资源与分布式应用程序的 YARN 服务。
hadoop-yarn-timeline-server 2.8.5-amzn-1 用于检索 YARN 应用程序的当前信息和历史信息的服务。
hbase-hmaster 1.4.8 适用于负责协调区域和执行管理命令的 HBase 集群的服务。
hbase-region-server 1.4.8 用于服务于一个或多个 HBase 区域的服务。
hbase-client 1.4.8 HBase 命令行客户端。
hbase-rest-server 1.4.8 用于向 HBase 提供 RESTful HTTP 终端节点的服务。
hbase-thrift-server 1.4.8 用于向 HBase 提供 Thrift 终端节点的服务。
hcatalog-client 2.3.4-amzn-0 用于操作 hcatalog-server 的“hcat”命令行客户端。
hcatalog-server 2.3.4-amzn-0 用于为分布式应用程序提供 HCatalog、表和存储管理层的服务。
hcatalog-webhcat-server 2.3.4-amzn-0 用于向 HCatalog 提供 REST 接口的 HTTP 终端节点。
hive-client 2.3.4-amzn-0 Hive 命令行客户端。
hive-hbase 2.3.4-amzn-0 Hive-hbase 客户端。
hive-metastore-server 2.3.4-amzn-0 用于访问 Hive 元存储 (一个用于存储 Hadoop 操作中的 SQL 的元数据的语义存储库) 的服务。
hive-server2 2.3.4-amzn-0 用于将 Hive 查询作为 Web 请求接受的服务。
hue-server 4.3.0 用于使用 Hadoop 生态系统应用程序分析数据的 Web 应用程序
jupyterhub 0.9.4 Jupyter 笔记本的多用户服务器
livy-server 0.5.0-incubating 用于与 Apache Spark 交互的 REST 接口
nginx 1.12.1 nginx [引擎 x] 是 HTTP 和反向代理服务器
mahout-client 0.13.0 用于机器学习的库。
mxnet 1.3.1 用于深度学习的灵活的、可扩展且高效的库。
mysql-server 5.5.54+ MySQL 数据库服务器。
nvidia-cuda 9.2.88 Nvidia 驱动程序和 Cuda 工具包
oozie-client 5.0.0 Oozie 命令行客户端。
oozie-server 5.0.0 用于接受 Oozie 工作流请求的服务。
opencv 3.4.0 开源计算机视觉库。
phoenix-library 4.14.0-HBase-1.4 服务器和客户端的 phoenix 库
phoenix-query-server 4.14.0-HBase-1.4 向 Avatica API 提供 JDBC 访问权限以及协议缓冲区和 JSON 格式访问权限的轻量级服务器
presto-coordinator 0.215 用于在 presto-worker 之中接受查询并管理查询的服务。
presto-worker 0.215 用于执行查询的各个部分的服务。
pig-client 0.17.0 Pig 命令行客户端。
r 3.4.1 用于统计计算的 R 项目
spark-client 2.4.0 Spark 命令行客户端。
spark-history-server 2.4.0 用于查看完整的 Spark 应用程序的生命周期的已记录事件的 Web UI。
spark-on-yarn 2.4.0 适用于 YARN 的内存中执行引擎。
spark-yarn-slave 2.4.0 YARN 从属项所需的 Apache Spark 库。
sqoop-client 1.4.7 Apache Sqoop 命令行客户端。
tensorflow 1.12.0 适用于高性能数值计算的 TensorFlow 开源软件库。
tez-on-yarn 0.9.1 tez YARN 应用程序和库。
webserver 2.4.25+ Apache HTTP 服务器。
zeppelin-server 0.8.0 支持交互式数据分析的基于 Web 的笔记本电脑。
zookeeper-server 3.4.13 用于维护配置信息、命名、提供分布式同步以及提供组服务的集中式服务。
zookeeper-client 3.4.13 ZooKeeper 命令行客户端。

5.21.0 配置分类

配置分类使您能够自定义应用程序。这些分类通常对应于应用程序的配置 XML 文件,例如 hive-site.xml。有关更多信息,请参阅 配置应用程序

emr-5.21.0 分类

分类 说明

capacity-scheduler

更改 Hadoop 的 capacity-scheduler.xml 文件中的值。

container-log4j

更改 Hadoop YARN 的 container-log4j.properties 文件中的值。

core-site

更改 Hadoop 的 core-site.xml 文件中的值。

emrfs-site

更改 EMRFS 设置。

flink-conf

更改 flink-conf.yaml 设置。

flink-log4j

更改 Flink log4j.properties 设置。

flink-log4j-yarn-session

更改 Flink log4j-yarn-session.properties 设置。

flink-log4j-cli

更改 Flink log4j-cli.properties 设置。

hadoop-env

更改适用于所有 Hadoop 组件的 Hadoop 环境中的值。

hadoop-log4j

更改 Hadoop 的 log4j.properties 文件中的值。

hadoop-ssl-server

更改 hadoop ssl 服务器配置

hadoop-ssl-client

更改 hadoop ssl 客户端配置

hbase

适用于 Apache HBase 的 Amazon EMR 辅助设置。

hbase-env

更改 HBase 环境中的值。

hbase-log4j

更改 HBase 的 hbase-log4j.properties 文件中的值。

hbase-metrics

更改 HBase 的 hadoop-metrics2-hbase.properties 文件中的值。

hbase-policy

更改 HBase 的 hbase-policy.xml 文件中的值。

hbase-site

更改 HBase 的 hbase-site.xml 文件中的值。

hdfs-encryption-zones

配置 HDFS 加密区域。

hdfs-site

更改 HDFS 的 hdfs-site.xml 中的值。

hcatalog-env

更改 HCatalog 的环境中的值。

hcatalog-server-jndi

更改 HCatalog 的 jndi.properties 中的值。

hcatalog-server-proto-hive-site

更改 HCatalog 的 proto-hive-site.xml 中的值。

hcatalog-webhcat-env

更改 HCatalog WebHCat 的环境中的值。

hcatalog-webhcat-log4j2

更改 HCatalog WebHCat 的 log4j2.properties 中的值。

hcatalog-webhcat-site

更改 HCatalog WebHCat 的 webhcat-site.xml 文件中的值。

hive-beeline-log4j2

更改 Hive 的 beeline-log4j2.properties 文件中的值。

hive-parquet-logging

更改 Hive parquet-logging.properties 文件中的值。

hive-env

更改 Hive 环境中的值。

hive-exec-log4j2

更改 Hive 的 hive-exec-log4j2.properties 文件中的值。

hive-llap-daemon-log4j2

更改 Hive 的 llap-daemon-log4j2.properties 文件中的值。

hive-log4j2

更改 Hive 的 hive-log4j2.properties 文件中的值。

hive-site

更改 Hive 的 hive-site.xml 文件中的值

hiveserver2-site

更改 Hive Server2 的 hiveserver2-site.xml 文件中的值

hue-ini

更改 Hue 的 ini 文件中的值

httpfs-env

更改 HTTPFS 环境中的值。

httpfs-site

更改 Hadoop 的 httpfs-site.xml 文件中的值。

hadoop-kms-acls

更改 Hadoop 的 kms-acls.xml 文件中的值。

hadoop-kms-env

更改 Hadoop KMS 环境中的值。

hadoop-kms-log4j

更改 Hadoop 的 kms-log4j.properties 文件中的值。

hadoop-kms-site

更改 Hadoop 的 kms-site.xml 文件中的值。

jupyter-notebook-conf

更改 Jupyter Notebook 的 jupyter_notebook_config.py 文件中的值。

jupyter-hub-conf

更改 JupyterHubs 的 jupyterhub_config.py 文件中的值。

jupyter-s3-conf

配置 Jupyter Notebook S3 持久性。

jupyter-sparkmagic-conf

更改 Sparkmagic 的 config.json 文件中的值。

livy-conf

更改 Livy 的 livy.conf 文件中的值。

livy-env

更改 Livy 环境中的值。

livy-log4j

更改 Livy log4j.properties 设置。

mapred-env

更改 MapReduce 应用程序的环境中的值。

mapred-site

更改 MapReduce 应用程序的 mapred-site.xml 文件中的值。

oozie-env

更改 Oozie 的环境中的值。

oozie-log4j

更改 Oozie 的 oozie-log4j.properties 文件中的值。

oozie-site

更改 Oozie 的 oozie-site.xml 文件中的值。

phoenix-hbase-metrics

更改 Phoenix 的 hadoop-metrics2-hbase.properties 文件中的值。

phoenix-hbase-site

更改 Phoenix 的 hbase-site.xml 文件中的值。

phoenix-log4j

更改 Phoenix 的 log4j.properties 文件中的值。

phoenix-metrics

更改 Phoenix 的 hadoop-metrics2-phoenix.properties 文件中的值。

pig-env

更改 Pig 环境中的值。

pig-properties

更改 Pig 的 pig.properties 文件中的值。

pig-log4j

更改 Pig 的 log4j.properties 文件中的值。

presto-log

更改 Presto 的 log.properties 文件中的值。

presto-config

更改 Presto 的 config.properties 文件中的值。

presto-password-authenticator

更改 Presto 的 password-authenticator.properties 文件中的值。

presto-env

更改 Presto 的 presto-env.sh 文件中的值。

presto-node

更改 Presto 的 node.properties 文件中的值。

presto-connector-blackhole

更改 Presto 的 blackhole.properties 文件中的值。

presto-connector-cassandra

更改 Presto 的 cassandra.properties 文件中的值。

presto-connector-hive

更改 Presto 的 hive.properties 文件中的值。

presto-connector-jmx

更改 Presto 的 jmx.properties 文件中的值。

presto-connector-kafka

更改 Presto 的 kafka.properties 文件中的值。

presto-connector-localfile

更改 Presto 的 localfile.properties 文件中的值。

presto-connector-memory

更改 Presto 的 memory.properties 文件中的值。

presto-connector-mongodb

更改 Presto 的 mongodb.properties 文件中的值。

presto-connector-mysql

更改 Presto 的 mysql.properties 文件中的值。

presto-connector-postgresql

更改 Presto 的 postgresql.properties 文件中的值。

presto-connector-raptor

更改 Presto 的 raptor.properties 文件中的值。

presto-connector-redis

更改 Presto 的 redis.properties 文件中的值。

presto-connector-redshift

更改 Presto 的 redshift.properties 文件中的值。

presto-connector-tpch

更改 Presto 的 tpch.properties 文件中的值。

presto-connector-tpcds

更改 Presto 的 tpcds.properties 文件中的值。

spark

适用于 Apache Spark 的 Amazon EMR 辅助设置。

spark-defaults

更改 Spark 的 spark-defaults.conf 文件中的值。

spark-env

更改 Spark 环境中的值。

spark-hive-site

更改 Spark 的 hive-site.xml 文件中的值

spark-log4j

更改 Spark 的 log4j.properties 文件中的值。

spark-metrics

更改 Spark 的 metrics.properties 文件中的值。

sqoop-env

更改 Sqoop 的环境中的值。

sqoop-oraoop-site

更改 Sqoop OraOop 的 oraoop-site.xml 文件中的值。

sqoop-site

更改 Sqoop 的 sqoop-site.xml 文件中的值。

tez-site

更改 Tez 的 tez-site.xml 文件中的值。

yarn-env

更改 YARN 环境中的值。

yarn-site

更改 YARN 的 yarn-site.xml 文件中的值。

zeppelin-env

更改 Zeppelin 环境中的值。

zookeeper-config

更改 ZooKeeper 的 zoo.cfg 文件中的值。

zookeeper-log4j

更改 ZooKeeper 的 log4j.properties 文件中的值。

5.20.0

5.20.0 应用程序版本

此版本支持以下应用程序:FlinkGangliaHadoopHBaseHCatalogHiveHueJupyterHubLivyMahoutMXNetOoziePhoenixPigPrestoSparkSqoopTensorFlowTezZeppelinZooKeeper

下图描述了此版本的 Amazon EMR 中提供的应用程序版本以及前四个 Amazon EMR 版本中的应用程序版本。

有关每个版本的 Amazon EMR 的应用程序版本的全面历史记录,请参见下面的示意图:

5.20.0 发行说明

以下发行说明包括有关 Amazon EMR 发布版本 5.20.0 的信息。与 5.19.0 相关的更改。

首次发布日期:2018 年 12 月 18 日

上次更新日期:2019 年 1 月 22 日

升级

  • Flink 1.6.2

  • HBase 1.4.8

  • Hive 2.3.4

  • Hue 4.3.0

  • MXNet 1.3.1

  • Presto 0.214

  • Spark 2.4.0

  • TensorFlow 1.12.0

  • Tez 0.9.1

  • AWS SDK for Java 1.11.461

新功能

  • (2019 年 1 月 22 日)Amazon EMR 中的 Kerberos 进行了改进,用于支持对来自外部 KDC 的委托人进行身份验证。这集中了委托人管理,因为多个集群可以共享单个外部 KDC。此外,外部 KDC 可与 Active Directory 域建立跨领域信任关系。这使得所有集群可以从 Active Directory 对委托人进行身份验证。有关更多信息,请参阅 Amazon EMR 管理指南 中的 使用 Kerberos 身份验证

更改、增强和解决的问题

  • Amazon EMR 的默认 Amazon Linux AMI

    • Python3 程序包从 Python 3.4 升级到 3.6。

  • 经 EMRFS S3 优化的提交程序

  • Hive

  • Glue 与 Spark 和 Hive

    • 在 EMR 5.20.0 或更高版本中,当将 AWS Glue 数据目录用作元数据仓时,会自动为 Spark 和 Hive 启用并行分区修剪。这一更改通过并行执行多个请求来检索分区,可显著减少查询规划时间。可并行执行的总分段数量介于 1 到 10 之间。默认值为 5,这是建议采用的设置。您可以通过在 hive-site 配置分类中指定 aws.glue.partition.num.segments 属性来更改它。当发生限制时,可以通过将值更改为 1 来关闭此功能。有关更多信息,请参阅 AWS Glue 分段结构

已知问题

  • Hue(在 Amazon EMR 发行版本 5.24.0 中修复)

    • 在 Amazon EMR 上运行的 Hue 不支持 Solr。从 Amazon EMR 发布版本 5.20.0 开始,配置错误问题会导致 Solr 被启用,请显示与以下信息相似的轻微错误消息:

      Solr server could not be contacted properly: HTTPConnectionPool('host=ip-xx-xx-xx-xx.ec2.internal', port=1978): Max retries exceeded with url: /solr/admin/info/system?user.name=hue&doAs=administrator&wt=json (Caused by NewConnectionError(': Failed to establish a new connection: [Errno 111] Connection refused',))

      为避免显示 Solr 错误消息:

      1. 使用 SSH 连接主节点命令行。

      2. 使用文本编辑器打开 hue.ini 文件。例如:

        sudo vim /etc/hue/conf/hue.ini

      3. 搜索术语“appblacklist”,然后将对应行修改为如下所示:

        appblacklist = search
      4. 如以下示例所示,保存更改并重启 Hue:

        sudo stop hue; sudo start hue
  • Tez

    • 此问题在 Amazon EMR 5.22.0 中已解决。

      在 http://MasterDNS:8080/tez-ui 通过与集群主节点的 SSH 连接去连接到Tez UI 时,会显示错误“Adapter operation failed - Timeline server (ATS) is out of reach.Either it is down, or CORS is not enabled”,或者相关任务意外显示不适用。

      其原因是 Tez UI 使用 localhost 而不是主节点的主机名向 YARN Timeline Server 发出请求。解决方法是提供脚本以作为引导操作或步骤运行。该脚本会更新 Tez configs.env 文件中的主机名。有关该脚本的更多信息和位置,请参阅引导操作说明

5.20.0 组件版本

下面列出了Amazon EMR 随此版本一起安装的组件。一些组件作为大数据应用程序包的一部分安装。其他组件是 Amazon EMR 独有的,并且已为系统流程和功能安装这些组件。它们通常以 emraws 开头。最新的 Amazon EMR 版本中的大数据应用程序包通常是在社区中找到的最新版本。我们尽快在 Amazon EMR 中提供社区版本。

一些组件需要来自 Amazon EMR 的社区版本的更改。这些组件具有以下形式的 CommunityVersion-amzn-EmrVersion 的版本标签。例如,如果已对名为 myapp-component 的版本 2.2 的大数据社区组件进行三次修改以包含在不同的 Amazon EMR 发行版中,则其发行版将列出为 2.2-amzn-3

组件 版本 描述
aws-sagemaker-spark-sdk 1.2.1 Amazon SageMaker Spark 开发工具包
emr-ddb 4.7.0 适用于 Hadoop 生态系统应用程序的 Amazon DynamoDB 连接器。
emr-goodies 2.5.1 适用于 Hadoop 生态系统的方便易用的库。
emr-kinesis 3.4.0 适用于 Hadoop 生态系统应用程序的 Amazon Kinesis 连接器。
emr-s3-dist-cp 2.10.0 针对 Amazon S3 优化的分布式复制应用程序。
emr-s3-select 1.2.0 EMR S3 Select 连接器
emrfs 2.29.0 适用于 Hadoop 生态系统应用程序的 Amazon S3 连接器。
flink-client 1.6.2 Apache Flink 命令行客户端脚本和应用程序。
ganglia-monitor 3.7.2 适用于 Hadoop 生态系统应用程序的嵌入式 Ganglia 代理以及 Ganglia 监控代理。
ganglia-metadata-collector 3.7.2 用于从 Ganglia 监控代理中聚合指标的 Ganglia 元数据收集器。
ganglia-web 3.7.1 用于查看由 Ganglia 元数据收集器收集的指标的 Web 应用程序。
hadoop-client 2.8.5-amzn-1 Hadoop 命令行客户端,如“hdfs”、“hadoop”或“yarn”。
hadoop-hdfs-datanode 2.8.5-amzn-1 用于存储数据块的 HDFS 节点级服务。
hadoop-hdfs-library 2.8.5-amzn-1 HDFS 命令行客户端和库
hadoop-hdfs-namenode 2.8.5-amzn-1 用于跟踪文件名和数据块位置的 HDFS 服务。
hadoop-httpfs-server 2.8.5-amzn-1 用于 HDFS 操作的 HTTP 终端节点。
hadoop-kms-server 2.8.5-amzn-1 基于 Hadoop 的 KeyProvider API 的加密密钥管理服务器。
hadoop-mapred 2.8.5-amzn-1 用于运行 MapReduce 应用程序的 MapReduce 执行引擎库。
hadoop-yarn-nodemanager 2.8.5-amzn-1 用于管理单个节点上的容器的 YARN 服务。
hadoop-yarn-resourcemanager 2.8.5-amzn-1 用于分配和管理集群资源与分布式应用程序的 YARN 服务。
hadoop-yarn-timeline-server 2.8.5-amzn-1 用于检索 YARN 应用程序的当前信息和历史信息的服务。
hbase-hmaster 1.4.8 适用于负责协调区域和执行管理命令的 HBase 集群的服务。
hbase-region-server 1.4.8 用于服务于一个或多个 HBase 区域的服务。
hbase-client 1.4.8 HBase 命令行客户端。
hbase-rest-server 1.4.8 用于向 HBase 提供 RESTful HTTP 终端节点的服务。
hbase-thrift-server 1.4.8 用于向 HBase 提供 Thrift 终端节点的服务。
hcatalog-client 2.3.4-amzn-0 用于操作 hcatalog-server 的“hcat”命令行客户端。
hcatalog-server 2.3.4-amzn-0 用于为分布式应用程序提供 HCatalog、表和存储管理层的服务。
hcatalog-webhcat-server 2.3.4-amzn-0 用于向 HCatalog 提供 REST 接口的 HTTP 终端节点。
hive-client 2.3.4-amzn-0 Hive 命令行客户端。
hive-hbase 2.3.4-amzn-0 Hive-hbase 客户端。
hive-metastore-server 2.3.4-amzn-0 用于访问 Hive 元存储 (一个用于存储 Hadoop 操作中的 SQL 的元数据的语义存储库) 的服务。
hive-server2 2.3.4-amzn-0 用于将 Hive 查询作为 Web 请求接受的服务。
hue-server 4.3.0 用于使用 Hadoop 生态系统应用程序分析数据的 Web 应用程序
jupyterhub 0.9.4 Jupyter 笔记本的多用户服务器
livy-server 0.5.0-incubating 用于与 Apache Spark 交互的 REST 接口
nginx 1.12.1 nginx [引擎 x] 是 HTTP 和反向代理服务器
mahout-client 0.13.0 用于机器学习的库。
mxnet 1.3.1 用于深度学习的灵活的、可扩展且高效的库。
mysql-server 5.5.54+ MySQL 数据库服务器。
nvidia-cuda 9.2.88 Nvidia 驱动程序和 Cuda 工具包
oozie-client 5.0.0 Oozie 命令行客户端。
oozie-server 5.0.0 用于接受 Oozie 工作流请求的服务。
opencv 3.4.0 开源计算机视觉库。
phoenix-library 4.14.0-HBase-1.4 服务器和客户端的 phoenix 库
phoenix-query-server 4.14.0-HBase-1.4 向 Avatica API 提供 JDBC 访问权限以及协议缓冲区和 JSON 格式访问权限的轻量级服务器
presto-coordinator 0.214 用于在 presto-worker 之中接受查询并管理查询的服务。
presto-worker 0.214 用于执行查询的各个部分的服务。
pig-client 0.17.0 Pig 命令行客户端。
r 3.4.1 用于统计计算的 R 项目
spark-client 2.4.0 Spark 命令行客户端。
spark-history-server 2.4.0 用于查看完整的 Spark 应用程序的生命周期的已记录事件的 Web UI。
spark-on-yarn 2.4.0 适用于 YARN 的内存中执行引擎。
spark-yarn-slave 2.4.0 YARN 从属项所需的 Apache Spark 库。
sqoop-client 1.4.7 Apache Sqoop 命令行客户端。
tensorflow 1.12.0 适用于高性能数值计算的 TensorFlow 开源软件库。
tez-on-yarn 0.9.1 tez YARN 应用程序和库。
webserver 2.4.25+ Apache HTTP 服务器。
zeppelin-server 0.8.0 支持交互式数据分析的基于 Web 的笔记本电脑。
zookeeper-server 3.4.13 用于维护配置信息、命名、提供分布式同步以及提供组服务的集中式服务。
zookeeper-client 3.4.13 ZooKeeper 命令行客户端。

5.20.0 配置分类

配置分类使您能够自定义应用程序。这些分类通常对应于应用程序的配置 XML 文件,例如 hive-site.xml。有关更多信息,请参阅 配置应用程序

emr-5.20.0 分类

分类 说明

capacity-scheduler

更改 Hadoop 的 capacity-scheduler.xml 文件中的值。

container-log4j

更改 Hadoop YARN 的 container-log4j.properties 文件中的值。

core-site

更改 Hadoop 的 core-site.xml 文件中的值。

emrfs-site

更改 EMRFS 设置。

flink-conf

更改 flink-conf.yaml 设置。

flink-log4j

更改 Flink log4j.properties 设置。

flink-log4j-yarn-session

更改 Flink log4j-yarn-session.properties 设置。

flink-log4j-cli

更改 Flink log4j-cli.properties 设置。

hadoop-env

更改适用于所有 Hadoop 组件的 Hadoop 环境中的值。

hadoop-log4j

更改 Hadoop 的 log4j.properties 文件中的值。

hadoop-ssl-server

更改 hadoop ssl 服务器配置

hadoop-ssl-client

更改 hadoop ssl 客户端配置

hbase

适用于 Apache HBase 的 Amazon EMR 辅助设置。

hbase-env

更改 HBase 环境中的值。

hbase-log4j

更改 HBase 的 hbase-log4j.properties 文件中的值。

hbase-metrics

更改 HBase 的 hadoop-metrics2-hbase.properties 文件中的值。

hbase-policy

更改 HBase 的 hbase-policy.xml 文件中的值。

hbase-site

更改 HBase 的 hbase-site.xml 文件中的值。

hdfs-encryption-zones

配置 HDFS 加密区域。

hdfs-site

更改 HDFS 的 hdfs-site.xml 中的值。

hcatalog-env

更改 HCatalog 的环境中的值。

hcatalog-server-jndi

更改 HCatalog 的 jndi.properties 中的值。

hcatalog-server-proto-hive-site

更改 HCatalog 的 proto-hive-site.xml 中的值。

hcatalog-webhcat-env

更改 HCatalog WebHCat 的环境中的值。

hcatalog-webhcat-log4j2

更改 HCatalog WebHCat 的 log4j2.properties 中的值。

hcatalog-webhcat-site

更改 HCatalog WebHCat 的 webhcat-site.xml 文件中的值。

hive-beeline-log4j2

更改 Hive 的 beeline-log4j2.properties 文件中的值。

hive-parquet-logging

更改 Hive parquet-logging.properties 文件中的值。

hive-env

更改 Hive 环境中的值。

hive-exec-log4j2

更改 Hive 的 hive-exec-log4j2.properties 文件中的值。

hive-llap-daemon-log4j2

更改 Hive 的 llap-daemon-log4j2.properties 文件中的值。

hive-log4j2

更改 Hive 的 hive-log4j2.properties 文件中的值。

hive-site

更改 Hive 的 hive-site.xml 文件中的值

hiveserver2-site

更改 Hive Server2 的 hiveserver2-site.xml 文件中的值

hue-ini

更改 Hue 的 ini 文件中的值

httpfs-env

更改 HTTPFS 环境中的值。

httpfs-site

更改 Hadoop 的 httpfs-site.xml 文件中的值。

hadoop-kms-acls

更改 Hadoop 的 kms-acls.xml 文件中的值。

hadoop-kms-env

更改 Hadoop KMS 环境中的值。

hadoop-kms-log4j

更改 Hadoop 的 kms-log4j.properties 文件中的值。

hadoop-kms-site

更改 Hadoop 的 kms-site.xml 文件中的值。

jupyter-notebook-conf

更改 Jupyter Notebook 的 jupyter_notebook_config.py 文件中的值。

jupyter-hub-conf

更改 JupyterHubs 的 jupyterhub_config.py 文件中的值。

jupyter-s3-conf

配置 Jupyter Notebook S3 持久性。

jupyter-sparkmagic-conf

更改 Sparkmagic 的 config.json 文件中的值。

livy-conf

更改 Livy 的 livy.conf 文件中的值。

livy-env

更改 Livy 环境中的值。

livy-log4j

更改 Livy log4j.properties 设置。

mapred-env

更改 MapReduce 应用程序的环境中的值。

mapred-site

更改 MapReduce 应用程序的 mapred-site.xml 文件中的值。

oozie-env

更改 Oozie 的环境中的值。

oozie-log4j

更改 Oozie 的 oozie-log4j.properties 文件中的值。

oozie-site

更改 Oozie 的 oozie-site.xml 文件中的值。

phoenix-hbase-metrics

更改 Phoenix 的 hadoop-metrics2-hbase.properties 文件中的值。

phoenix-hbase-site

更改 Phoenix 的 hbase-site.xml 文件中的值。

phoenix-log4j

更改 Phoenix 的 log4j.properties 文件中的值。

phoenix-metrics

更改 Phoenix 的 hadoop-metrics2-phoenix.properties 文件中的值。

pig-env

更改 Pig 环境中的值。

pig-properties

更改 Pig 的 pig.properties 文件中的值。

pig-log4j

更改 Pig 的 log4j.properties 文件中的值。

presto-log

更改 Presto 的 log.properties 文件中的值。

presto-config

更改 Presto 的 config.properties 文件中的值。

presto-password-authenticator

更改 Presto 的 password-authenticator.properties 文件中的值。

presto-env

更改 Presto 的 presto-env.sh 文件中的值。

presto-node

更改 Presto 的 node.properties 文件中的值。

presto-connector-blackhole

更改 Presto 的 blackhole.properties 文件中的值。

presto-connector-cassandra

更改 Presto 的 cassandra.properties 文件中的值。

presto-connector-hive

更改 Presto 的 hive.properties 文件中的值。

presto-connector-jmx

更改 Presto 的 jmx.properties 文件中的值。

presto-connector-kafka

更改 Presto 的 kafka.properties 文件中的值。

presto-connector-localfile

更改 Presto 的 localfile.properties 文件中的值。

presto-connector-memory

更改 Presto 的 memory.properties 文件中的值。

presto-connector-mongodb

更改 Presto 的 mongodb.properties 文件中的值。

presto-connector-mysql

更改 Presto 的 mysql.properties 文件中的值。

presto-connector-postgresql

更改 Presto 的 postgresql.properties 文件中的值。

presto-connector-raptor

更改 Presto 的 raptor.properties 文件中的值。

presto-connector-redis

更改 Presto 的 redis.properties 文件中的值。

presto-connector-redshift

更改 Presto 的 redshift.properties 文件中的值。

presto-connector-tpch

更改 Presto 的 tpch.properties 文件中的值。

presto-connector-tpcds

更改 Presto 的 tpcds.properties 文件中的值。

spark

适用于 Apache Spark 的 Amazon EMR 辅助设置。

spark-defaults

更改 Spark 的 spark-defaults.conf 文件中的值。

spark-env

更改 Spark 环境中的值。

spark-hive-site

更改 Spark 的 hive-site.xml 文件中的值

spark-log4j

更改 Spark 的 log4j.properties 文件中的值。

spark-metrics

更改 Spark 的 metrics.properties 文件中的值。

sqoop-env

更改 Sqoop 的环境中的值。

sqoop-oraoop-site

更改 Sqoop OraOop 的 oraoop-site.xml 文件中的值。

sqoop-site

更改 Sqoop 的 sqoop-site.xml 文件中的值。

tez-site

更改 Tez 的 tez-site.xml 文件中的值。

yarn-env

更改 YARN 环境中的值。

yarn-site

更改 YARN 的 yarn-site.xml 文件中的值。

zeppelin-env

更改 Zeppelin 环境中的值。

zookeeper-config

更改 ZooKeeper 的 zoo.cfg 文件中的值。

zookeeper-log4j

更改 ZooKeeper 的 log4j.properties 文件中的值。

5.19.0

5.19.0 应用程序版本

此版本支持以下应用程序:FlinkGangliaHadoopHBaseHCatalogHiveHueJupyterHubLivyMahoutMXNetOoziePhoenixPigPrestoSparkSqoopTensorFlowTezZeppelinZooKeeper

下图描述了此版本的 Amazon EMR 中提供的应用程序版本以及前四个 Amazon EMR 版本中的应用程序版本。

有关每个版本的 Amazon EMR 的应用程序版本的全面历史记录,请参见下面的示意图:

5.19.0 发行说明

以下发布说明包括有关 Amazon EMR 发布版本 5.19.0 的信息。与 5.18.0 相关的更改。

首次发布日期:2018 年 11 月 7 日

上次更新日期:2018 年 11 月 19 日

升级

  • Hadoop 2.8.5

  • Flink 1.6.1

  • JupyterHub 0.9.4

  • MXNet 1.3.0

  • Presto 0.212

  • TensorFlow 1.11.0

  • Zookeeper 3.4.13

  • AWS SDK for Java 1.11.433

新功能

  • (2018 年 11 月 19 日)EMR 笔记本 是一个基于 Jupyter Notebook 的托管环境。它支持适用于 PySpark、Spark SQL、Spark R 和 Scala 的 Spark 内核。EMR 笔记本 可以与使用 Amazon EMR 发布版 5.18.0 和更高版本创建的集群结合使用。有关更多信息,请参阅 Amazon EMR 管理指南 中的使用 EMR 笔记本

  • EMRFS S3 优化的提交程序在使用 Spark 和 EMRFS 写入 Parquet 文件时可用。此提交程序将提高写入性能。有关更多信息,请参阅 使用经 EMRFS S3 优化的提交程序

更改、增强和解决的问题

  • YARN

  • Amazon EMR 的默认 Amazon Linux AMI

    • 默认情况下不再安装 ruby18php56gcc48。如果需要,可以使用 yum 来安装它们。

    • 默认情况下不再 aws-java-sdk Ruby Gem。如果需要,可以使用 gem install aws-java-sdk 来安装它。还可以安装特定组件。例如:gem install aws-java-sdk-s3

已知问题

  • EMR 笔记本—在某些情况下,当打开了多个笔记本编辑器时,笔记本编辑器可能似乎无法连接到集群。如果出现这种情况,请清除浏览器 Cookie,然后重新打开笔记本编辑器。

5.19.0 组件版本

下面列出了Amazon EMR 随此版本一起安装的组件。一些组件作为大数据应用程序包的一部分安装。其他组件是 Amazon EMR 独有的,并且已为系统流程和功能安装这些组件。它们通常以 emraws 开头。最新的 Amazon EMR 版本中的大数据应用程序包通常是在社区中找到的最新版本。我们尽快在 Amazon EMR 中提供社区版本。

一些组件需要来自 Amazon EMR 的社区版本的更改。这些组件具有以下形式的 CommunityVersion-amzn-EmrVersion 的版本标签。例如,如果已对名为 myapp-component 的版本 2.2 的大数据社区组件进行三次修改以包含在不同的 Amazon EMR 发行版中,则其发行版将列出为 2.2-amzn-3

组件 版本 描述
aws-sagemaker-spark-sdk 1.2.0 Amazon SageMaker Spark 开发工具包
emr-ddb 4.7.0 适用于 Hadoop 生态系统应用程序的 Amazon DynamoDB 连接器。
emr-goodies 2.5.1 适用于 Hadoop 生态系统的方便易用的库。
emr-kinesis 3.4.0 适用于 Hadoop 生态系统应用程序的 Amazon Kinesis 连接器。
emr-s3-dist-cp 2.10.0 针对 Amazon S3 优化的分布式复制应用程序。
emr-s3-select 1.1.0 EMR S3 Select 连接器
emrfs 2.28.0 适用于 Hadoop 生态系统应用程序的 Amazon S3 连接器。
flink-client 1.6.1 Apache Flink 命令行客户端脚本和应用程序。
ganglia-monitor 3.7.2 适用于 Hadoop 生态系统应用程序的嵌入式 Ganglia 代理以及 Ganglia 监控代理。
ganglia-metadata-collector 3.7.2 用于从 Ganglia 监控代理中聚合指标的 Ganglia 元数据收集器。
ganglia-web 3.7.1 用于查看由 Ganglia 元数据收集器收集的指标的 Web 应用程序。
hadoop-client 2.8.5-amzn-0 Hadoop 命令行客户端,如“hdfs”、“hadoop”或“yarn”。
hadoop-hdfs-datanode 2.8.5-amzn-0 用于存储数据块的 HDFS 节点级服务。
hadoop-hdfs-library 2.8.5-amzn-0 HDFS 命令行客户端和库
hadoop-hdfs-namenode 2.8.5-amzn-0 用于跟踪文件名和数据块位置的 HDFS 服务。
hadoop-httpfs-server 2.8.5-amzn-0 用于 HDFS 操作的 HTTP 终端节点。
hadoop-kms-server 2.8.5-amzn-0 基于 Hadoop 的 KeyProvider API 的加密密钥管理服务器。
hadoop-mapred 2.8.5-amzn-0 用于运行 MapReduce 应用程序的 MapReduce 执行引擎库。
hadoop-yarn-nodemanager 2.8.5-amzn-0 用于管理单个节点上的容器的 YARN 服务。
hadoop-yarn-resourcemanager 2.8.5-amzn-0 用于分配和管理集群资源与分布式应用程序的 YARN 服务。
hadoop-yarn-timeline-server 2.8.5-amzn-0 用于检索 YARN 应用程序的当前信息和历史信息的服务。
hbase-hmaster 1.4.7 适用于负责协调区域和执行管理命令的 HBase 集群的服务。
hbase-region-server 1.4.7 用于服务于一个或多个 HBase 区域的服务。
hbase-client 1.4.7 HBase 命令行客户端。
hbase-rest-server 1.4.7 用于向 HBase 提供 RESTful HTTP 终端节点的服务。
hbase-thrift-server 1.4.7 用于向 HBase 提供 Thrift 终端节点的服务。
hcatalog-client 2.3.3-amzn-2 用于操作 hcatalog-server 的“hcat”命令行客户端。
hcatalog-server 2.3.3-amzn-2 用于为分布式应用程序提供 HCatalog、表和存储管理层的服务。
hcatalog-webhcat-server 2.3.3-amzn-2 用于向 HCatalog 提供 REST 接口的 HTTP 终端节点。
hive-client 2.3.3-amzn-2 Hive 命令行客户端。
hive-hbase 2.3.3-amzn-2 Hive-hbase 客户端。
hive-metastore-server 2.3.3-amzn-2 用于访问 Hive 元存储 (一个用于存储 Hadoop 操作中的 SQL 的元数据的语义存储库) 的服务。
hive-server2 2.3.3-amzn-2 用于将 Hive 查询作为 Web 请求接受的服务。
hue-server 4.2.0 用于使用 Hadoop 生态系统应用程序分析数据的 Web 应用程序
jupyterhub 0.9.4 Jupyter 笔记本的多用户服务器
livy-server 0.5.0-incubating 用于与 Apache Spark 交互的 REST 接口
nginx 1.12.1 nginx [引擎 x] 是 HTTP 和反向代理服务器
mahout-client 0.13.0 用于机器学习的库。
mxnet 1.3.0 用于深度学习的灵活的、可扩展且高效的库。
mysql-server 5.5.54+ MySQL 数据库服务器。
nvidia-cuda 9.2.88 Nvidia 驱动程序和 Cuda 工具包
oozie-client 5.0.0 Oozie 命令行客户端。
oozie-server 5.0.0 用于接受 Oozie 工作流请求的服务。
opencv 3.4.0 开源计算机视觉库。
phoenix-library 4.14.0-HBase-1.4 服务器和客户端的 phoenix 库
phoenix-query-server 4.14.0-HBase-1.4 向 Avatica API 提供 JDBC 访问权限以及协议缓冲区和 JSON 格式访问权限的轻量级服务器
presto-coordinator 0.212 用于在 presto-worker 之中接受查询并管理查询的服务。
presto-worker 0.212 用于执行查询的各个部分的服务。
pig-client 0.17.0 Pig 命令行客户端。
r 3.4.1 用于统计计算的 R 项目
spark-client 2.3.2 Spark 命令行客户端。
spark-history-server 2.3.2 用于查看完整的 Spark 应用程序的生命周期的已记录事件的 Web UI。
spark-on-yarn 2.3.2 适用于 YARN 的内存中执行引擎。
spark-yarn-slave 2.3.2 YARN 从属项所需的 Apache Spark 库。
sqoop-client 1.4.7 Apache Sqoop 命令行客户端。
tensorflow 1.11.0 适用于高性能数值计算的 TensorFlow 开源软件库。
tez-on-yarn 0.8.4 tez YARN 应用程序和库。
webserver 2.4.25+ Apache HTTP 服务器。
zeppelin-server 0.8.0 支持交互式数据分析的基于 Web 的笔记本电脑。
zookeeper-server 3.4.13 用于维护配置信息、命名、提供分布式同步以及提供组服务的集中式服务。
zookeeper-client 3.4.13 ZooKeeper 命令行客户端。

5.19.0 配置分类

配置分类使您能够自定义应用程序。这些分类通常对应于应用程序的配置 XML 文件,例如 hive-site.xml。有关更多信息,请参阅 配置应用程序

emr-5.19.0 分类

分类 说明

capacity-scheduler

更改 Hadoop 的 capacity-scheduler.xml 文件中的值。

container-log4j

更改 Hadoop YARN 的 container-log4j.properties 文件中的值。

core-site

更改 Hadoop 的 core-site.xml 文件中的值。

emrfs-site

更改 EMRFS 设置。

flink-conf

更改 flink-conf.yaml 设置。

flink-log4j

更改 Flink log4j.properties 设置。

flink-log4j-yarn-session

更改 Flink log4j-yarn-session.properties 设置。

flink-log4j-cli

更改 Flink log4j-cli.properties 设置。

hadoop-env

更改适用于所有 Hadoop 组件的 Hadoop 环境中的值。

hadoop-log4j

更改 Hadoop 的 log4j.properties 文件中的值。

hadoop-ssl-server

更改 hadoop ssl 服务器配置

hadoop-ssl-client

更改 hadoop ssl 客户端配置

hbase

适用于 Apache HBase 的 Amazon EMR 辅助设置。

hbase-env

更改 HBase 环境中的值。

hbase-log4j

更改 HBase 的 hbase-log4j.properties 文件中的值。

hbase-metrics

更改 HBase 的 hadoop-metrics2-hbase.properties 文件中的值。

hbase-policy

更改 HBase 的 hbase-policy.xml 文件中的值。

hbase-site

更改 HBase 的 hbase-site.xml 文件中的值。

hdfs-encryption-zones

配置 HDFS 加密区域。

hdfs-site

更改 HDFS 的 hdfs-site.xml 中的值。

hcatalog-env

更改 HCatalog 的环境中的值。

hcatalog-server-jndi

更改 HCatalog 的 jndi.properties 中的值。

hcatalog-server-proto-hive-site

更改 HCatalog 的 proto-hive-site.xml 中的值。

hcatalog-webhcat-env

更改 HCatalog WebHCat 的环境中的值。

hcatalog-webhcat-log4j2

更改 HCatalog WebHCat 的 log4j2.properties 中的值。

hcatalog-webhcat-site

更改 HCatalog WebHCat 的 webhcat-site.xml 文件中的值。

hive-beeline-log4j2

更改 Hive 的 beeline-log4j2.properties 文件中的值。

hive-parquet-logging

更改 Hive parquet-logging.properties 文件中的值。

hive-env

更改 Hive 环境中的值。

hive-exec-log4j2

更改 Hive 的 hive-exec-log4j2.properties 文件中的值。

hive-llap-daemon-log4j2

更改 Hive 的 llap-daemon-log4j2.properties 文件中的值。

hive-log4j2

更改 Hive 的 hive-log4j2.properties 文件中的值。

hive-site

更改 Hive 的 hive-site.xml 文件中的值

hiveserver2-site

更改 Hive Server2 的 hiveserver2-site.xml 文件中的值

hue-ini

更改 Hue 的 ini 文件中的值

httpfs-env

更改 HTTPFS 环境中的值。

httpfs-site

更改 Hadoop 的 httpfs-site.xml 文件中的值。

hadoop-kms-acls

更改 Hadoop 的 kms-acls.xml 文件中的值。

hadoop-kms-env

更改 Hadoop KMS 环境中的值。

hadoop-kms-log4j

更改 Hadoop 的 kms-log4j.properties 文件中的值。

hadoop-kms-site

更改 Hadoop 的 kms-site.xml 文件中的值。

jupyter-notebook-conf

更改 Jupyter Notebook 的 jupyter_notebook_config.py 文件中的值。

jupyter-hub-conf

更改 JupyterHubs 的 jupyterhub_config.py 文件中的值。

jupyter-s3-conf

配置 Jupyter Notebook S3 持久性。

jupyter-sparkmagic-conf

更改 Sparkmagic 的 config.json 文件中的值。

livy-conf

更改 Livy 的 livy.conf 文件中的值。

livy-env

更改 Livy 环境中的值。

livy-log4j

更改 Livy log4j.properties 设置。

mapred-env

更改 MapReduce 应用程序的环境中的值。

mapred-site

更改 MapReduce 应用程序的 mapred-site.xml 文件中的值。

oozie-env

更改 Oozie 的环境中的值。

oozie-log4j

更改 Oozie 的 oozie-log4j.properties 文件中的值。

oozie-site

更改 Oozie 的 oozie-site.xml 文件中的值。

phoenix-hbase-metrics

更改 Phoenix 的 hadoop-metrics2-hbase.properties 文件中的值。

phoenix-hbase-site

更改 Phoenix 的 hbase-site.xml 文件中的值。

phoenix-log4j

更改 Phoenix 的 log4j.properties 文件中的值。

phoenix-metrics

更改 Phoenix 的 hadoop-metrics2-phoenix.properties 文件中的值。

pig-env

更改 Pig 环境中的值。

pig-properties

更改 Pig 的 pig.properties 文件中的值。

pig-log4j

更改 Pig 的 log4j.properties 文件中的值。

presto-log

更改 Presto 的 log.properties 文件中的值。

presto-config

更改 Presto 的 config.properties 文件中的值。

presto-password-authenticator

更改 Presto 的 password-authenticator.properties 文件中的值。

presto-env

更改 Presto 的 presto-env.sh 文件中的值。

presto-node

更改 Presto 的 node.properties 文件中的值。

presto-connector-blackhole

更改 Presto 的 blackhole.properties 文件中的值。

presto-connector-cassandra

更改 Presto 的 cassandra.properties 文件中的值。

presto-connector-hive

更改 Presto 的 hive.properties 文件中的值。

presto-connector-jmx

更改 Presto 的 jmx.properties 文件中的值。

presto-connector-kafka

更改 Presto 的 kafka.properties 文件中的值。

presto-connector-localfile

更改 Presto 的 localfile.properties 文件中的值。

presto-connector-memory

更改 Presto 的 memory.properties 文件中的值。

presto-connector-mongodb

更改 Presto 的 mongodb.properties 文件中的值。

presto-connector-mysql

更改 Presto 的 mysql.properties 文件中的值。

presto-connector-postgresql

更改 Presto 的 postgresql.properties 文件中的值。

presto-connector-raptor

更改 Presto 的 raptor.properties 文件中的值。

presto-connector-redis

更改 Presto 的 redis.properties 文件中的值。

presto-connector-redshift

更改 Presto 的 redshift.properties 文件中的值。

presto-connector-tpch

更改 Presto 的 tpch.properties 文件中的值。

presto-connector-tpcds

更改 Presto 的 tpcds.properties 文件中的值。

spark

适用于 Apache Spark 的 Amazon EMR 辅助设置。

spark-defaults

更改 Spark 的 spark-defaults.conf 文件中的值。

spark-env

更改 Spark 环境中的值。

spark-hive-site

更改 Spark 的 hive-site.xml 文件中的值

spark-log4j

更改 Spark 的 log4j.properties 文件中的值。

spark-metrics

更改 Spark 的 metrics.properties 文件中的值。

sqoop-env

更改 Sqoop 的环境中的值。

sqoop-oraoop-site

更改 Sqoop OraOop 的 oraoop-site.xml 文件中的值。

sqoop-site

更改 Sqoop 的 sqoop-site.xml 文件中的值。

tez-site

更改 Tez 的 tez-site.xml 文件中的值。

yarn-env

更改 YARN 环境中的值。

yarn-site

更改 YARN 的 yarn-site.xml 文件中的值。

zeppelin-env

更改 Zeppelin 环境中的值。

zookeeper-config

更改 ZooKeeper 的 zoo.cfg 文件中的值。

zookeeper-log4j

更改 ZooKeeper 的 log4j.properties 文件中的值。

5.18.0

5.18.0 应用程序版本

此版本支持以下应用程序:FlinkGangliaHadoopHBaseHCatalogHiveHueJupyterHubLivyMahoutMXNetOoziePhoenixPigPrestoSparkSqoopTensorFlowTezZeppelinZooKeeper

下图描述了此版本的 Amazon EMR 中提供的应用程序版本以及前四个 Amazon EMR 版本中的应用程序版本。

有关每个版本的 Amazon EMR 的应用程序版本的全面历史记录,请参见下面的示意图:

5.18.0 发行说明

以下发行说明包括有关 Amazon EMR 发布版本 5.18.0 的信息。与 5.17.0 相关的更改。

首次发布日期:2018 年 10 月 24 日

升级

  • Flink 1.6.0

  • HBase 1.4.7

  • Presto 0.210

  • Spark 2.3.2

  • Zeppelin 0.8.0

新功能

  • 从 Amazon EMR 5.18.0 开始,您可以使用 Amazon EMR 项目存储库构建针对特定 Amazon EMR 发布版附带的准确版本的库和依赖项的任务代码。有关更多信息,请参阅使用 Amazon EMR 项目存储库检查依赖项

更改、增强和解决的问题

5.18.0 组件版本

下面列出了Amazon EMR 随此版本一起安装的组件。一些组件作为大数据应用程序包的一部分安装。其他组件是 Amazon EMR 独有的,并且已为系统流程和功能安装这些组件。它们通常以 emraws 开头。最新的 Amazon EMR 版本中的大数据应用程序包通常是在社区中找到的最新版本。我们尽快在 Amazon EMR 中提供社区版本。

一些组件需要来自 Amazon EMR 的社区版本的更改。这些组件具有以下形式的 CommunityVersion-amzn-EmrVersion 的版本标签。例如,如果已对名为 myapp-component 的版本 2.2 的大数据社区组件进行三次修改以包含在不同的 Amazon EMR 发行版中,则其发行版将列出为 2.2-amzn-3

组件 版本 描述
aws-sagemaker-spark-sdk 1.1.3 Amazon SageMaker Spark 开发工具包
emr-ddb 4.6.0 适用于 Hadoop 生态系统应用程序的 Amazon DynamoDB 连接器。
emr-goodies 2.5.0 适用于 Hadoop 生态系统的方便易用的库。
emr-kinesis 3.4.0 适用于 Hadoop 生态系统应用程序的 Amazon Kinesis 连接器。
emr-s3-dist-cp 2.10.0 针对 Amazon S3 优化的分布式复制应用程序。
emr-s3-select 1.1.0 EMR S3 Select 连接器
emrfs 2.27.0 适用于 Hadoop 生态系统应用程序的 Amazon S3 连接器。
flink-client 1.6.0 Apache Flink 命令行客户端脚本和应用程序。
ganglia-monitor 3.7.2 适用于 Hadoop 生态系统应用程序的嵌入式 Ganglia 代理以及 Ganglia 监控代理。
ganglia-metadata-collector 3.7.2 用于从 Ganglia 监控代理中聚合指标的 Ganglia 元数据收集器。
ganglia-web 3.7.1 用于查看由 Ganglia 元数据收集器收集的指标的 Web 应用程序。
hadoop-client 2.8.4-amzn-1 Hadoop 命令行客户端,如“hdfs”、“hadoop”或“yarn”。
hadoop-hdfs-datanode 2.8.4-amzn-1 用于存储数据块的 HDFS 节点级服务。
hadoop-hdfs-library 2.8.4-amzn-1 HDFS 命令行客户端和库
hadoop-hdfs-namenode 2.8.4-amzn-1 用于跟踪文件名和数据块位置的 HDFS 服务。
hadoop-httpfs-server 2.8.4-amzn-1 用于 HDFS 操作的 HTTP 终端节点。
hadoop-kms-server 2.8.4-amzn-1 基于 Hadoop 的 KeyProvider API 的加密密钥管理服务器。
hadoop-mapred 2.8.4-amzn-1 用于运行 MapReduce 应用程序的 MapReduce 执行引擎库。
hadoop-yarn-nodemanager 2.8.4-amzn-1 用于管理单个节点上的容器的 YARN 服务。
hadoop-yarn-resourcemanager 2.8.4-amzn-1 用于分配和管理集群资源与分布式应用程序的 YARN 服务。
hadoop-yarn-timeline-server 2.8.4-amzn-1 用于检索 YARN 应用程序的当前信息和历史信息的服务。
hbase-hmaster 1.4.7 适用于负责协调区域和执行管理命令的 HBase 集群的服务。
hbase-region-server 1.4.7 用于服务于一个或多个 HBase 区域的服务。
hbase-client 1.4.7 HBase 命令行客户端。
hbase-rest-server 1.4.7 用于向 HBase 提供 RESTful HTTP 终端节点的服务。
hbase-thrift-server 1.4.7 用于向 HBase 提供 Thrift 终端节点的服务。
hcatalog-client 2.3.3-amzn-2 用于操作 hcatalog-server 的“hcat”命令行客户端。
hcatalog-server 2.3.3-amzn-2 用于为分布式应用程序提供 HCatalog、表和存储管理层的服务。
hcatalog-webhcat-server 2.3.3-amzn-2 用于向 HCatalog 提供 REST 接口的 HTTP 终端节点。
hive-client 2.3.3-amzn-2 Hive 命令行客户端。
hive-hbase 2.3.3-amzn-2 Hive-hbase 客户端。
hive-metastore-server 2.3.3-amzn-2 用于访问 Hive 元存储 (一个用于存储 Hadoop 操作中的 SQL 的元数据的语义存储库) 的服务。
hive-server2 2.3.3-amzn-2 用于将 Hive 查询作为 Web 请求接受的服务。
hue-server 4.2.0 用于使用 Hadoop 生态系统应用程序分析数据的 Web 应用程序
jupyterhub 0.8.1 Jupyter 笔记本的多用户服务器
livy-server 0.5.0-incubating 用于与 Apache Spark 交互的 REST 接口
nginx 1.12.1 nginx [引擎 x] 是 HTTP 和反向代理服务器
mahout-client 0.13.0 用于机器学习的库。
mxnet 1.2.0 用于深度学习的灵活的、可扩展且高效的库。
mysql-server 5.5.54+ MySQL 数据库服务器。
nvidia-cuda 9.2.88 Nvidia 驱动程序和 Cuda 工具包
oozie-client 5.0.0 Oozie 命令行客户端。
oozie-server 5.0.0 用于接受 Oozie 工作流请求的服务。
opencv 3.4.0 开源计算机视觉库。
phoenix-library 4.14.0-HBase-1.4 服务器和客户端的 phoenix 库
phoenix-query-server 4.14.0-HBase-1.4 向 Avatica API 提供 JDBC 访问权限以及协议缓冲区和 JSON 格式访问权限的轻量级服务器
presto-coordinator 0.210 用于在 presto-worker 之中接受查询并管理查询的服务。
presto-worker 0.210 用于执行查询的各个部分的服务。
pig-client 0.17.0 Pig 命令行客户端。
r 3.4.1 用于统计计算的 R 项目
spark-client 2.3.2 Spark 命令行客户端。
spark-history-server 2.3.2 用于查看完整的 Spark 应用程序的生命周期的已记录事件的 Web UI。
spark-on-yarn 2.3.2 适用于 YARN 的内存中执行引擎。
spark-yarn-slave 2.3.2 YARN 从属项所需的 Apache Spark 库。
sqoop-client 1.4.7 Apache Sqoop 命令行客户端。
tensorflow 1.9.0 适用于高性能数值计算的 TensorFlow 开源软件库。
tez-on-yarn 0.8.4 tez YARN 应用程序和库。
webserver 2.4.25+ Apache HTTP 服务器。
zeppelin-server 0.8.0 支持交互式数据分析的基于 Web 的笔记本电脑。
zookeeper-server 3.4.12 用于维护配置信息、命名、提供分布式同步以及提供组服务的集中式服务。
zookeeper-client 3.4.12 ZooKeeper 命令行客户端。

5.18.0 配置分类

配置分类使您能够自定义应用程序。这些分类通常对应于应用程序的配置 XML 文件,例如 hive-site.xml。有关更多信息,请参阅 配置应用程序

emr-5.18.0 分类

分类 说明

capacity-scheduler

更改 Hadoop 的 capacity-scheduler.xml 文件中的值。

container-log4j

更改 Hadoop YARN 的 container-log4j.properties 文件中的值。

core-site

更改 Hadoop 的 core-site.xml 文件中的值。

emrfs-site

更改 EMRFS 设置。

flink-conf

更改 flink-conf.yaml 设置。

flink-log4j

更改 Flink log4j.properties 设置。

flink-log4j-yarn-session

更改 Flink log4j-yarn-session.properties 设置。

flink-log4j-cli

更改 Flink log4j-cli.properties 设置。

hadoop-env

更改适用于所有 Hadoop 组件的 Hadoop 环境中的值。

hadoop-log4j

更改 Hadoop 的 log4j.properties 文件中的值。

hadoop-ssl-server

更改 hadoop ssl 服务器配置

hadoop-ssl-client

更改 hadoop ssl 客户端配置

hbase

适用于 Apache HBase 的 Amazon EMR 辅助设置。

hbase-env

更改 HBase 环境中的值。

hbase-log4j

更改 HBase 的 hbase-log4j.properties 文件中的值。

hbase-metrics

更改 HBase 的 hadoop-metrics2-hbase.properties 文件中的值。

hbase-policy

更改 HBase 的 hbase-policy.xml 文件中的值。

hbase-site

更改 HBase 的 hbase-site.xml 文件中的值。

hdfs-encryption-zones

配置 HDFS 加密区域。

hdfs-site

更改 HDFS 的 hdfs-site.xml 中的值。

hcatalog-env

更改 HCatalog 的环境中的值。

hcatalog-server-jndi

更改 HCatalog 的 jndi.properties 中的值。

hcatalog-server-proto-hive-site

更改 HCatalog 的 proto-hive-site.xml 中的值。

hcatalog-webhcat-env

更改 HCatalog WebHCat 的环境中的值。

hcatalog-webhcat-log4j2

更改 HCatalog WebHCat 的 log4j2.properties 中的值。

hcatalog-webhcat-site

更改 HCatalog WebHCat 的 webhcat-site.xml 文件中的值。

hive-beeline-log4j2

更改 Hive 的 beeline-log4j2.properties 文件中的值。

hive-parquet-logging

更改 Hive parquet-logging.properties 文件中的值。

hive-env

更改 Hive 环境中的值。

hive-exec-log4j2

更改 Hive 的 hive-exec-log4j2.properties 文件中的值。

hive-llap-daemon-log4j2

更改 Hive 的 llap-daemon-log4j2.properties 文件中的值。

hive-log4j2

更改 Hive 的 hive-log4j2.properties 文件中的值。

hive-site

更改 Hive 的 hive-site.xml 文件中的值

hiveserver2-site

更改 Hive Server2 的 hiveserver2-site.xml 文件中的值

hue-ini

更改 Hue 的 ini 文件中的值

httpfs-env

更改 HTTPFS 环境中的值。

httpfs-site

更改 Hadoop 的 httpfs-site.xml 文件中的值。

hadoop-kms-acls

更改 Hadoop 的 kms-acls.xml 文件中的值。

hadoop-kms-env

更改 Hadoop KMS 环境中的值。

hadoop-kms-log4j

更改 Hadoop 的 kms-log4j.properties 文件中的值。

hadoop-kms-site

更改 Hadoop 的 kms-site.xml 文件中的值。

jupyter-notebook-conf

更改 Jupyter Notebook 的 jupyter_notebook_config.py 文件中的值。

jupyter-hub-conf

更改 JupyterHubs 的 jupyterhub_config.py 文件中的值。

jupyter-s3-conf

配置 Jupyter Notebook S3 持久性。

jupyter-sparkmagic-conf

更改 Sparkmagic 的 config.json 文件中的值。

livy-conf

更改 Livy 的 livy.conf 文件中的值。

livy-env

更改 Livy 环境中的值。

livy-log4j

更改 Livy log4j.properties 设置。

mapred-env

更改 MapReduce 应用程序的环境中的值。

mapred-site

更改 MapReduce 应用程序的 mapred-site.xml 文件中的值。

oozie-env

更改 Oozie 的环境中的值。

oozie-log4j

更改 Oozie 的 oozie-log4j.properties 文件中的值。

oozie-site

更改 Oozie 的 oozie-site.xml 文件中的值。

phoenix-hbase-metrics

更改 Phoenix 的 hadoop-metrics2-hbase.properties 文件中的值。

phoenix-hbase-site

更改 Phoenix 的 hbase-site.xml 文件中的值。

phoenix-log4j

更改 Phoenix 的 log4j.properties 文件中的值。

phoenix-metrics

更改 Phoenix 的 hadoop-metrics2-phoenix.properties 文件中的值。

pig-env

更改 Pig 环境中的值。

pig-properties

更改 Pig 的 pig.properties 文件中的值。

pig-log4j

更改 Pig 的 log4j.properties 文件中的值。

presto-log

更改 Presto 的 log.properties 文件中的值。

presto-config

更改 Presto 的 config.properties 文件中的值。

presto-password-authenticator

更改 Presto 的 password-authenticator.properties 文件中的值。

presto-env

更改 Presto 的 presto-env.sh 文件中的值。

presto-node

更改 Presto 的 node.properties 文件中的值。

presto-connector-blackhole

更改 Presto 的 blackhole.properties 文件中的值。

presto-connector-cassandra

更改 Presto 的 cassandra.properties 文件中的值。

presto-connector-hive

更改 Presto 的 hive.properties 文件中的值。

presto-connector-jmx

更改 Presto 的 jmx.properties 文件中的值。

presto-connector-kafka

更改 Presto 的 kafka.properties 文件中的值。

presto-connector-localfile

更改 Presto 的 localfile.properties 文件中的值。

presto-connector-mongodb

更改 Presto 的 mongodb.properties 文件中的值。

presto-connector-mysql

更改 Presto 的 mysql.properties 文件中的值。

presto-connector-postgresql

更改 Presto 的 postgresql.properties 文件中的值。

presto-connector-raptor

更改 Presto 的 raptor.properties 文件中的值。

presto-connector-redis

更改 Presto 的 redis.properties 文件中的值。

presto-connector-redshift

更改 Presto 的 redshift.properties 文件中的值。

presto-connector-tpch

更改 Presto 的 tpch.properties 文件中的值。

spark

适用于 Apache Spark 的 Amazon EMR 辅助设置。

spark-defaults

更改 Spark 的 spark-defaults.conf 文件中的值。

spark-env

更改 Spark 环境中的值。

spark-hive-site

更改 Spark 的 hive-site.xml 文件中的值

spark-log4j

更改 Spark 的 log4j.properties 文件中的值。

spark-metrics

更改 Spark 的 metrics.properties 文件中的值。

sqoop-env

更改 Sqoop 的环境中的值。

sqoop-oraoop-site

更改 Sqoop OraOop 的 oraoop-site.xml 文件中的值。

sqoop-site

更改 Sqoop 的 sqoop-site.xml 文件中的值。

tez-site

更改 Tez 的 tez-site.xml 文件中的值。

yarn-env

更改 YARN 环境中的值。

yarn-site

更改 YARN 的 yarn-site.xml 文件中的值。

zeppelin-env

更改 Zeppelin 环境中的值。

zookeeper-config

更改 ZooKeeper 的 zoo.cfg 文件中的值。

zookeeper-log4j

更改 ZooKeeper 的 log4j.properties 文件中的值。

5.17.0

5.17.0 应用程序版本

此版本支持以下应用程序:FlinkGangliaHadoopHBaseHCatalogHiveHueJupyterHubLivyMahoutMXNetOoziePhoenixPigPrestoSparkSqoopTensorFlowTezZeppelinZooKeeper

下图描述了此版本的 Amazon EMR 中提供的应用程序版本以及前四个 Amazon EMR 版本中的应用程序版本。

有关每个版本的 Amazon EMR 的应用程序版本的全面历史记录,请参见下面的示意图:

5.17.0 发行说明

以下发行说明包括有关 Amazon EMR 发布版本 5.17.0 的信息。与 5.16.0 相关的更改。

首次发布日期:2018 年 8 月 30 日

升级

  • Flink 1.5.2

  • HBase 1.4.6

  • Presto 0.206

新功能

  • 增加了对 Tensorflow 的支持。有关更多信息,请参阅TensorFlow

更改、增强和解决的问题

已知问题

  • 当您在安装了 Livy 的情况下创建使用 Kerberos 的集群时,Livy 将失败并显示一个错误,指示未启用简单身份验证。重新启动 Livy 服务器可解决此问题。作为解决方法,请在集群创建期间添加在主节点上运行 sudo restart livy-server 的步骤。

  • 如果您使用基于 Amazon Linux AMI 的自定义 Amazon Linux AMI(创建日期为 2018 年 8 月 11 日),则 Oozie 服务器将无法启动。如果您使用 Oozie,则创建基于 Amazon Linux AMI ID 的自定义 AMI(具有其他创建日期)。您可以使用以下 AWS CLI 命令返回一个列表,其中包含所有 HVM Amazon Linux AMI 的映像 ID(2018 年 3 月版)和发布日期,以便您可以选择合适的 Amazon Linux AMI 作为基础。将 MyRegion 替换为您的区域标识符(如 us-west-2)。

    aws ec2 --region MyRegion describe-images --owner amazon --query 'Images[?Name!=`null`]|[?starts_with(Name, `amzn-ami-hvm-2018.03`) == `true`].[CreationDate,ImageId,Name]' --output text | sort -rk1

5.17.0 组件版本

下面列出了Amazon EMR 随此版本一起安装的组件。一些组件作为大数据应用程序包的一部分安装。其他组件是 Amazon EMR 独有的,并且已为系统流程和功能安装这些组件。它们通常以 emraws 开头。最新的 Amazon EMR 版本中的大数据应用程序包通常是在社区中找到的最新版本。我们尽快在 Amazon EMR 中提供社区版本。

一些组件需要来自 Amazon EMR 的社区版本的更改。这些组件具有以下形式的 CommunityVersion-amzn-EmrVersion 的版本标签。例如,如果已对名为 myapp-component 的版本 2.2 的大数据社区组件进行三次修改以包含在不同的 Amazon EMR 发行版中,则其发行版将列出为 2.2-amzn-3

组件 版本 描述
aws-sagemaker-spark-sdk 1.1.3 Amazon SageMaker Spark 开发工具包
emr-ddb 4.6.0 适用于 Hadoop 生态系统应用程序的 Amazon DynamoDB 连接器。
emr-goodies 2.5.0 适用于 Hadoop 生态系统的方便易用的库。
emr-kinesis 3.4.0 适用于 Hadoop 生态系统应用程序的 Amazon Kinesis 连接器。
emr-s3-dist-cp 2.10.0 针对 Amazon S3 优化的分布式复制应用程序。
emr-s3-select 1.0.0 EMR S3 Select 连接器
emrfs 2.26.0 适用于 Hadoop 生态系统应用程序的 Amazon S3 连接器。
flink-client 1.5.2 Apache Flink 命令行客户端脚本和应用程序。
ganglia-monitor 3.7.2 适用于 Hadoop 生态系统应用程序的嵌入式 Ganglia 代理以及 Ganglia 监控代理。
ganglia-metadata-collector 3.7.2 用于从 Ganglia 监控代理中聚合指标的 Ganglia 元数据收集器。
ganglia-web 3.7.1 用于查看由 Ganglia 元数据收集器收集的指标的 Web 应用程序。
hadoop-client 2.8.4-amzn-1 Hadoop 命令行客户端,如“hdfs”、“hadoop”或“yarn”。
hadoop-hdfs-datanode 2.8.4-amzn-1 用于存储数据块的 HDFS 节点级服务。
hadoop-hdfs-library 2.8.4-amzn-1 HDFS 命令行客户端和库
hadoop-hdfs-namenode 2.8.4-amzn-1 用于跟踪文件名和数据块位置的 HDFS 服务。
hadoop-httpfs-server 2.8.4-amzn-1 用于 HDFS 操作的 HTTP 终端节点。
hadoop-kms-server 2.8.4-amzn-1 基于 Hadoop 的 KeyProvider API 的加密密钥管理服务器。
hadoop-mapred 2.8.4-amzn-1 用于运行 MapReduce 应用程序的 MapReduce 执行引擎库。
hadoop-yarn-nodemanager 2.8.4-amzn-1 用于管理单个节点上的容器的 YARN 服务。
hadoop-yarn-resourcemanager 2.8.4-amzn-1 用于分配和管理集群资源与分布式应用程序的 YARN 服务。
hadoop-yarn-timeline-server 2.8.4-amzn-1 用于检索 YARN 应用程序的当前信息和历史信息的服务。
hbase-hmaster 1.4.6 适用于负责协调区域和执行管理命令的 HBase 集群的服务。
hbase-region-server 1.4.6 用于服务于一个或多个 HBase 区域的服务。
hbase-client 1.4.6 HBase 命令行客户端。
hbase-rest-server 1.4.6 用于向 HBase 提供 RESTful HTTP 终端节点的服务。
hbase-thrift-server 1.4.6 用于向 HBase 提供 Thrift 终端节点的服务。
hcatalog-client 2.3.3-amzn-1 用于操作 hcatalog-server 的“hcat”命令行客户端。
hcatalog-server 2.3.3-amzn-1 用于为分布式应用程序提供 HCatalog、表和存储管理层的服务。
hcatalog-webhcat-server 2.3.3-amzn-1 用于向 HCatalog 提供 REST 接口的 HTTP 终端节点。
hive-client 2.3.3-amzn-1 Hive 命令行客户端。
hive-hbase 2.3.3-amzn-1 Hive-hbase 客户端。
hive-metastore-server 2.3.3-amzn-1 用于访问 Hive 元存储 (一个用于存储 Hadoop 操作中的 SQL 的元数据的语义存储库) 的服务。
hive-server2 2.3.3-amzn-1 用于将 Hive 查询作为 Web 请求接受的服务。
hue-server 4.2.0 用于使用 Hadoop 生态系统应用程序分析数据的 Web 应用程序
jupyterhub 0.8.1 Jupyter 笔记本的多用户服务器
livy-server 0.5.0-incubating 用于与 Apache Spark 交互的 REST 接口
mahout-client 0.13.0 用于机器学习的库。
mxnet 1.2.0 用于深度学习的灵活的、可扩展且高效的库。
mysql-server 5.5.54+ MySQL 数据库服务器。
nvidia-cuda 9.2.88 Nvidia 驱动程序和 Cuda 工具包
oozie-client 5.0.0 Oozie 命令行客户端。
oozie-server 5.0.0 用于接受 Oozie 工作流请求的服务。
opencv 3.4.0 开源计算机视觉库。
phoenix-library 4.14.0-HBase-1.4 服务器和客户端的 phoenix 库
phoenix-query-server 4.14.0-HBase-1.4 向 Avatica API 提供 JDBC 访问权限以及协议缓冲区和 JSON 格式访问权限的轻量级服务器
presto-coordinator 0.206 用于在 presto-worker 之中接受查询并管理查询的服务。
presto-worker 0.206 用于执行查询的各个部分的服务。
pig-client 0.17.0 Pig 命令行客户端。
r 3.4.1 用于统计计算的 R 项目
spark-client 2.3.1 Spark 命令行客户端。
spark-history-server 2.3.1 用于查看完整的 Spark 应用程序的生命周期的已记录事件的 Web UI。
spark-on-yarn 2.3.1 适用于 YARN 的内存中执行引擎。
spark-yarn-slave 2.3.1 YARN 从属项所需的 Apache Spark 库。
sqoop-client 1.4.7 Apache Sqoop 命令行客户端。
tensorflow 1.9.0 适用于高性能数值计算的 TensorFlow 开源软件库。
tez-on-yarn 0.8.4 tez YARN 应用程序和库。
webserver 2.4.25+ Apache HTTP 服务器。
zeppelin-server 0.7.3 支持交互式数据分析的基于 Web 的笔记本电脑。
zookeeper-server 3.4.12 用于维护配置信息、命名、提供分布式同步以及提供组服务的集中式服务。
zookeeper-client 3.4.12 ZooKeeper 命令行客户端。

5.17.0 配置分类

配置分类使您能够自定义应用程序。这些分类通常对应于应用程序的配置 XML 文件,例如 hive-site.xml。有关更多信息,请参阅 配置应用程序

emr-5.17.0 分类

分类 说明

capacity-scheduler

更改 Hadoop 的 capacity-scheduler.xml 文件中的值。

container-log4j

更改 Hadoop YARN 的 container-log4j.properties 文件中的值。

core-site

更改 Hadoop 的 core-site.xml 文件中的值。

emrfs-site

更改 EMRFS 设置。

flink-conf

更改 flink-conf.yaml 设置。

flink-log4j

更改 Flink log4j.properties 设置。

flink-log4j-yarn-session

更改 Flink log4j-yarn-session.properties 设置。

flink-log4j-cli

更改 Flink log4j-cli.properties 设置。

hadoop-env

更改适用于所有 Hadoop 组件的 Hadoop 环境中的值。

hadoop-log4j

更改 Hadoop 的 log4j.properties 文件中的值。

hadoop-ssl-server

更改 hadoop ssl 服务器配置

hadoop-ssl-client

更改 hadoop ssl 客户端配置

hbase

适用于 Apache HBase 的 Amazon EMR 辅助设置。

hbase-env

更改 HBase 环境中的值。

hbase-log4j

更改 HBase 的 hbase-log4j.properties 文件中的值。

hbase-metrics

更改 HBase 的 hadoop-metrics2-hbase.properties 文件中的值。

hbase-policy

更改 HBase 的 hbase-policy.xml 文件中的值。

hbase-site

更改 HBase 的 hbase-site.xml 文件中的值。

hdfs-encryption-zones

配置 HDFS 加密区域。

hdfs-site

更改 HDFS 的 hdfs-site.xml 中的值。

hcatalog-env

更改 HCatalog 的环境中的值。

hcatalog-server-jndi

更改 HCatalog 的 jndi.properties 中的值。

hcatalog-server-proto-hive-site

更改 HCatalog 的 proto-hive-site.xml 中的值。

hcatalog-webhcat-env

更改 HCatalog WebHCat 的环境中的值。

hcatalog-webhcat-log4j2

更改 HCatalog WebHCat 的 log4j2.properties 中的值。

hcatalog-webhcat-site

更改 HCatalog WebHCat 的 webhcat-site.xml 文件中的值。

hive-beeline-log4j2

更改 Hive 的 beeline-log4j2.properties 文件中的值。

hive-parquet-logging

更改 Hive parquet-logging.properties 文件中的值。

hive-env

更改 Hive 环境中的值。

hive-exec-log4j2

更改 Hive 的 hive-exec-log4j2.properties 文件中的值。

hive-llap-daemon-log4j2

更改 Hive 的 llap-daemon-log4j2.properties 文件中的值。

hive-log4j2

更改 Hive 的 hive-log4j2.properties 文件中的值。

hive-site

更改 Hive 的 hive-site.xml 文件中的值

hiveserver2-site

更改 Hive Server2 的 hiveserver2-site.xml 文件中的值

hue-ini

更改 Hue 的 ini 文件中的值

httpfs-env

更改 HTTPFS 环境中的值。

httpfs-site

更改 Hadoop 的 httpfs-site.xml 文件中的值。

hadoop-kms-acls

更改 Hadoop 的 kms-acls.xml 文件中的值。

hadoop-kms-env

更改 Hadoop KMS 环境中的值。

hadoop-kms-log4j

更改 Hadoop 的 kms-log4j.properties 文件中的值。

hadoop-kms-site

更改 Hadoop 的 kms-site.xml 文件中的值。

jupyter-notebook-conf

更改 Jupyter Notebook 的 jupyter_notebook_config.py 文件中的值。

jupyter-hub-conf

更改 JupyterHubs 的 jupyterhub_config.py 文件中的值。

jupyter-s3-conf

配置 Jupyter Notebook S3 持久性。

jupyter-sparkmagic-conf

更改 Sparkmagic 的 config.json 文件中的值。

livy-conf

更改 Livy 的 livy.conf 文件中的值。

livy-env

更改 Livy 环境中的值。

livy-log4j

更改 Livy log4j.properties 设置。

mapred-env

更改 MapReduce 应用程序的环境中的值。

mapred-site

更改 MapReduce 应用程序的 mapred-site.xml 文件中的值。

oozie-env

更改 Oozie 的环境中的值。

oozie-log4j

更改 Oozie 的 oozie-log4j.properties 文件中的值。

oozie-site

更改 Oozie 的 oozie-site.xml 文件中的值。

phoenix-hbase-metrics

更改 Phoenix 的 hadoop-metrics2-hbase.properties 文件中的值。

phoenix-hbase-site

更改 Phoenix 的 hbase-site.xml 文件中的值。

phoenix-log4j

更改 Phoenix 的 log4j.properties 文件中的值。

phoenix-metrics

更改 Phoenix 的 hadoop-metrics2-phoenix.properties 文件中的值。

pig-env

更改 Pig 环境中的值。

pig-properties

更改 Pig 的 pig.properties 文件中的值。

pig-log4j

更改 Pig 的 log4j.properties 文件中的值。

presto-log

更改 Presto 的 log.properties 文件中的值。

presto-config

更改 Presto 的 config.properties 文件中的值。

presto-password-authenticator

更改 Presto 的 password-authenticator.properties 文件中的值。

presto-env

更改 Presto 的 presto-env.sh 文件中的值。

presto-node

更改 Presto 的 node.properties 文件中的值。

presto-connector-blackhole

更改 Presto 的 blackhole.properties 文件中的值。

presto-connector-cassandra

更改 Presto 的 cassandra.properties 文件中的值。

presto-connector-hive

更改 Presto 的 hive.properties 文件中的值。

presto-connector-jmx

更改 Presto 的 jmx.properties 文件中的值。

presto-connector-kafka

更改 Presto 的 kafka.properties 文件中的值。

presto-connector-localfile

更改 Presto 的 localfile.properties 文件中的值。

presto-connector-mongodb

更改 Presto 的 mongodb.properties 文件中的值。

presto-connector-mysql

更改 Presto 的 mysql.properties 文件中的值。

presto-connector-postgresql

更改 Presto 的 postgresql.properties 文件中的值。

presto-connector-raptor

更改 Presto 的 raptor.properties 文件中的值。

presto-connector-redis

更改 Presto 的 redis.properties 文件中的值。

presto-connector-redshift

更改 Presto 的 redshift.properties 文件中的值。

presto-connector-tpch

更改 Presto 的 tpch.properties 文件中的值。

spark

适用于 Apache Spark 的 Amazon EMR 辅助设置。

spark-defaults

更改 Spark 的 spark-defaults.conf 文件中的值。

spark-env

更改 Spark 环境中的值。

spark-hive-site

更改 Spark 的 hive-site.xml 文件中的值

spark-log4j

更改 Spark 的 log4j.properties 文件中的值。

spark-metrics

更改 Spark 的 metrics.properties 文件中的值。

sqoop-env

更改 Sqoop 的环境中的值。

sqoop-oraoop-site

更改 Sqoop OraOop 的 oraoop-site.xml 文件中的值。

sqoop-site

更改 Sqoop 的 sqoop-site.xml 文件中的值。

tez-site

更改 Tez 的 tez-site.xml 文件中的值。

yarn-env

更改 YARN 环境中的值。

yarn-site

更改 YARN 的 yarn-site.xml 文件中的值。

zeppelin-env

更改 Zeppelin 环境中的值。

zookeeper-config

更改 ZooKeeper 的 zoo.cfg 文件中的值。

zookeeper-log4j

更改 ZooKeeper 的 log4j.properties 文件中的值。

5.16.0

5.16.0 应用程序版本

此版本支持以下应用程序:FlinkGangliaHadoopHBaseHCatalogHiveHueJupyterHubLivyMahoutMXNetOoziePhoenixPigPrestoSparkSqoopTezZeppelinZooKeeper

下图描述了此版本的 Amazon EMR 中提供的应用程序版本以及前四个 Amazon EMR 版本中的应用程序版本。

有关每个版本的 Amazon EMR 的应用程序版本的全面历史记录,请参见下面的示意图:

5.16.0 发行说明

以下发行说明包括有关 Amazon EMR 发布版本 5.16.0 的信息。与 5.15.0 相关的更改。

首次发布日期:2018 年 7 月 19 日

升级

  • Hadoop 2.8.4

  • Flink 1.5.0

  • Livy 0.5.0

  • MXNet 1.2.0

  • Phoenix 4.14.0

  • Presto 0.203

  • Spark 2.3.1

  • AWS SDK for Java 1.11.336

  • CUDA 9.2

  • Redshift JDBC 驱动程序 1.2.15.1025

更改、增强和解决的问题

已知问题

  • 此发布版本不支持 c1.medium 或 m1.small 实例类型。使用这些实例类型之一的集群无法启动。作为解决方案,请指定不同的实例类型或使用不同的发布版本。

  • 当您在安装了 Livy 的情况下创建使用 Kerberos 的集群时,Livy 将失败并显示一个错误,指示未启用简单身份验证。重新启动 Livy 服务器可解决此问题。作为解决方法,请在集群创建期间添加在主节点上运行 sudo restart livy-server 的步骤。

5.16.0 组件版本

下面列出了Amazon EMR 随此版本一起安装的组件。一些组件作为大数据应用程序包的一部分安装。其他组件是 Amazon EMR 独有的,并且已为系统流程和功能安装这些组件。它们通常以 emraws 开头。最新的 Amazon EMR 版本中的大数据应用程序包通常是在社区中找到的最新版本。我们尽快在 Amazon EMR 中提供社区版本。

一些组件需要来自 Amazon EMR 的社区版本的更改。这些组件具有以下形式的 CommunityVersion-amzn-EmrVersion 的版本标签。例如,如果已对名为 myapp-component 的版本 2.2 的大数据社区组件进行三次修改以包含在不同的 Amazon EMR 发行版中,则其发行版将列出为 2.2-amzn-3

组件 版本 描述
aws-sagemaker-spark-sdk 1.1.0 Amazon SageMaker Spark 开发工具包
emr-ddb 4.6.0 适用于 Hadoop 生态系统应用程序的 Amazon DynamoDB 连接器。
emr-goodies 2.4.0 适用于 Hadoop 生态系统的方便易用的库。
emr-kinesis 3.4.0 适用于 Hadoop 生态系统应用程序的 Amazon Kinesis 连接器。
emr-s3-dist-cp 2.10.0 针对 Amazon S3 优化的分布式复制应用程序。
emrfs 2.25.0 适用于 Hadoop 生态系统应用程序的 Amazon S3 连接器。
flink-client 1.5.0 Apache Flink 命令行客户端脚本和应用程序。
ganglia-monitor 3.7.2 适用于 Hadoop 生态系统应用程序的嵌入式 Ganglia 代理以及 Ganglia 监控代理。
ganglia-metadata-collector 3.7.2 用于从 Ganglia 监控代理中聚合指标的 Ganglia 元数据收集器。
ganglia-web 3.7.1 用于查看由 Ganglia 元数据收集器收集的指标的 Web 应用程序。
hadoop-client 2.8.4-amzn-0 Hadoop 命令行客户端,如“hdfs”、“hadoop”或“yarn”。
hadoop-hdfs-datanode 2.8.4-amzn-0 用于存储数据块的 HDFS 节点级服务。
hadoop-hdfs-library 2.8.4-amzn-0 HDFS 命令行客户端和库
hadoop-hdfs-namenode 2.8.4-amzn-0 用于跟踪文件名和数据块位置的 HDFS 服务。
hadoop-httpfs-server 2.8.4-amzn-0 用于 HDFS 操作的 HTTP 终端节点。
hadoop-kms-server 2.8.4-amzn-0 基于 Hadoop 的 KeyProvider API 的加密密钥管理服务器。
hadoop-mapred 2.8.4-amzn-0 用于运行 MapReduce 应用程序的 MapReduce 执行引擎库。
hadoop-yarn-nodemanager 2.8.4-amzn-0 用于管理单个节点上的容器的 YARN 服务。
hadoop-yarn-resourcemanager 2.8.4-amzn-0 用于分配和管理群集资源与分布式应用程序的 YARN 服务。
hadoop-yarn-timeline-server 2.8.4-amzn-0 用于检索 YARN 应用程序的当前信息和历史信息的服务。
hbase-hmaster 1.4.4 适用于负责协调区域和执行管理命令的 HBase 群集的服务。
hbase-region-server 1.4.4 用于服务于一个或多个 HBase 区域的服务。
hbase-client 1.4.4 HBase 命令行客户端。
hbase-rest-server 1.4.4 用于向 HBase 提供 RESTful HTTP 终端节点的服务。
hbase-thrift-server 1.4.4 用于向 HBase 提供 Thrift 终端节点的服务。
hcatalog-client 2.3.3-amzn-1 用于操作 hcatalog-server 的“hcat”命令行客户端。
hcatalog-server 2.3.3-amzn-1 用于为分布式应用程序提供 HCatalog、表和存储管理层的服务。
hcatalog-webhcat-server 2.3.3-amzn-1 用于向 HCatalog 提供 REST 接口的 HTTP 终端节点。
hive-client 2.3.3-amzn-1 Hive 命令行客户端。
hive-hbase 2.3.3-amzn-1 Hive-hbase 客户端。
hive-metastore-server 2.3.3-amzn-1 用于访问 Hive 元存储 (一个用于存储 Hadoop 操作中的 SQL 的元数据的语义存储库) 的服务。
hive-server2 2.3.3-amzn-1 用于将 Hive 查询作为 Web 请求接受的服务。
hue-server 4.2.0 用于使用 Hadoop 生态系统应用程序分析数据的 Web 应用程序
jupyterhub 0.8.1 Jupyter 笔记本的多用户服务器
livy-server 0.5.0-incubating 用于与 Apache Spark 交互的 REST 接口
mahout-client 0.13.0 用于机器学习的库。
mxnet 1.2.0 用于深度学习的灵活的、可扩展且高效的库。
mysql-server 5.5.54+ MySQL 数据库服务器。
nvidia-cuda 9.2.88 Nvidia 驱动程序和 Cuda 工具包
oozie-client 5.0.0 Oozie 命令行客户端。
oozie-server 5.0.0 用于接受 Oozie 工作流请求的服务。
opencv 3.4.0 开源计算机视觉库。
phoenix-library 4.14.0-HBase-1.4 服务器和客户端的 phoenix 库
phoenix-query-server 4.14.0-HBase-1.4 向 Avatica API 提供 JDBC 访问权限以及协议缓冲区和 JSON 格式访问权限的轻量级服务器
presto-coordinator 0.203 用于在 presto-worker 之中接受查询并管理查询的服务。
presto-worker 0.203 用于执行查询的各个部分的服务。
pig-client 0.17.0 Pig 命令行客户端。
r 3.4.1 用于统计计算的 R 项目
spark-client 2.3.1 Spark 命令行客户端。
spark-history-server 2.3.1 用于查看完整的 Spark 应用程序的生命周期的已记录事件的 Web UI。
spark-on-yarn 2.3.1 适用于 YARN 的内存中执行引擎。
spark-yarn-slave 2.3.1 YARN 从属项所需的 Apache Spark 库。
sqoop-client 1.4.7 Apache Sqoop 命令行客户端。
tez-on-yarn 0.8.4 tez YARN 应用程序和库。
webserver 2.4.25+ Apache HTTP 服务器。
zeppelin-server 0.7.3 支持交互式数据分析的基于 Web 的笔记本电脑。
zookeeper-server 3.4.12 用于维护配置信息、命名、提供分布式同步以及提供组服务的集中式服务。
zookeeper-client 3.4.12 ZooKeeper 命令行客户端。

5.16.0 配置分类

配置分类使您能够自定义应用程序。这些分类通常对应于应用程序的配置 XML 文件,例如 hive-site.xml。有关更多信息,请参阅 配置应用程序

emr-5.16.0 分类

分类 说明

capacity-scheduler

更改 Hadoop 的 capacity-scheduler.xml 文件中的值。

container-log4j

更改 Hadoop YARN 的 container-log4j.properties 文件中的值。

core-site

更改 Hadoop 的 core-site.xml 文件中的值。

emrfs-site

更改 EMRFS 设置。

flink-conf

更改 flink-conf.yaml 设置。

flink-log4j

更改 Flink log4j.properties 设置。

flink-log4j-yarn-session

更改 Flink log4j-yarn-session.properties 设置。

flink-log4j-cli

更改 Flink log4j-cli.properties 设置。

hadoop-env

更改适用于所有 Hadoop 组件的 Hadoop 环境中的值。

hadoop-log4j

更改 Hadoop 的 log4j.properties 文件中的值。

hadoop-ssl-server

更改 hadoop ssl 服务器配置

hadoop-ssl-client

更改 hadoop ssl 客户端配置

hbase

适用于 Apache HBase 的 Amazon EMR 辅助设置。

hbase-env

更改 HBase 环境中的值。

hbase-log4j

更改 HBase 的 hbase-log4j.properties 文件中的值。

hbase-metrics

更改 HBase 的 hadoop-metrics2-hbase.properties 文件中的值。

hbase-policy

更改 HBase 的 hbase-policy.xml 文件中的值。

hbase-site

更改 HBase 的 hbase-site.xml 文件中的值。

hdfs-encryption-zones

配置 HDFS 加密区域。

hdfs-site

更改 HDFS 的 hdfs-site.xml 中的值。

hcatalog-env

更改 HCatalog 的环境中的值。

hcatalog-server-jndi

更改 HCatalog 的 jndi.properties 中的值。

hcatalog-server-proto-hive-site

更改 HCatalog 的 proto-hive-site.xml 中的值。

hcatalog-webhcat-env

更改 HCatalog WebHCat 的环境中的值。

hcatalog-webhcat-log4j2

更改 HCatalog WebHCat 的 log4j2.properties 中的值。

hcatalog-webhcat-site

更改 HCatalog WebHCat 的 webhcat-site.xml 文件中的值。

hive-beeline-log4j2

更改 Hive 的 beeline-log4j2.properties 文件中的值。

hive-parquet-logging

更改 Hive parquet-logging.properties 文件中的值。

hive-env

更改 Hive 环境中的值。

hive-exec-log4j2

更改 Hive 的 hive-exec-log4j2.properties 文件中的值。

hive-llap-daemon-log4j2

更改 Hive 的 llap-daemon-log4j2.properties 文件中的值。

hive-log4j2

更改 Hive 的 hive-log4j2.properties 文件中的值。

hive-site

更改 Hive 的 hive-site.xml 文件中的值

hiveserver2-site

更改 Hive Server2 的 hiveserver2-site.xml 文件中的值

hue-ini

更改 Hue 的 ini 文件中的值

httpfs-env

更改 HTTPFS 环境中的值。

httpfs-site

更改 Hadoop 的 httpfs-site.xml 文件中的值。

hadoop-kms-acls

更改 Hadoop 的 kms-acls.xml 文件中的值。

hadoop-kms-env

更改 Hadoop KMS 环境中的值。

hadoop-kms-log4j

更改 Hadoop 的 kms-log4j.properties 文件中的值。

hadoop-kms-site

更改 Hadoop 的 kms-site.xml 文件中的值。

jupyter-notebook-conf

更改 Jupyter Notebook 的 jupyter_notebook_config.py 文件中的值。

jupyter-hub-conf

更改 JupyterHubs 的 jupyterhub_config.py 文件中的值。

jupyter-sparkmagic-conf

更改 Sparkmagic 的 config.json 文件中的值。

livy-conf

更改 Livy 的 livy.conf 文件中的值。

livy-env

更改 Livy 环境中的值。

livy-log4j

更改 Livy log4j.properties 设置。

mapred-env

更改 MapReduce 应用程序的环境中的值。

mapred-site

更改 MapReduce 应用程序的 mapred-site.xml 文件中的值。

oozie-env

更改 Oozie 的环境中的值。

oozie-log4j

更改 Oozie 的 oozie-log4j.properties 文件中的值。

oozie-site

更改 Oozie 的 oozie-site.xml 文件中的值。

phoenix-hbase-metrics

更改 Phoenix 的 hadoop-metrics2-hbase.properties 文件中的值。

phoenix-hbase-site

更改 Phoenix 的 hbase-site.xml 文件中的值。

phoenix-log4j

更改 Phoenix 的 log4j.properties 文件中的值。

phoenix-metrics

更改 Phoenix 的 hadoop-metrics2-phoenix.properties 文件中的值。

pig-env

更改 Pig 环境中的值。

pig-properties

更改 Pig 的 pig.properties 文件中的值。

pig-log4j

更改 Pig 的 log4j.properties 文件中的值。

presto-log

更改 Presto 的 log.properties 文件中的值。

presto-config

更改 Presto 的 config.properties 文件中的值。

presto-password-authenticator

更改 Presto 的 password-authenticator.properties 文件中的值。

presto-env

更改 Presto 的 presto-env.sh 文件中的值。

presto-node

更改 Presto 的 node.properties 文件中的值。

presto-connector-blackhole

更改 Presto 的 blackhole.properties 文件中的值。

presto-connector-cassandra

更改 Presto 的 cassandra.properties 文件中的值。

presto-connector-hive

更改 Presto 的 hive.properties 文件中的值。

presto-connector-jmx

更改 Presto 的 jmx.properties 文件中的值。

presto-connector-kafka

更改 Presto 的 kafka.properties 文件中的值。

presto-connector-localfile

更改 Presto 的 localfile.properties 文件中的值。

presto-connector-mongodb

更改 Presto 的 mongodb.properties 文件中的值。

presto-connector-mysql

更改 Presto 的 mysql.properties 文件中的值。

presto-connector-postgresql

更改 Presto 的 postgresql.properties 文件中的值。

presto-connector-raptor

更改 Presto 的 raptor.properties 文件中的值。

presto-connector-redis

更改 Presto 的 redis.properties 文件中的值。

presto-connector-redshift

更改 Presto 的 redshift.properties 文件中的值。

presto-connector-tpch

更改 Presto 的 tpch.properties 文件中的值。

spark

适用于 Apache Spark 的 Amazon EMR 辅助设置。

spark-defaults

更改 Spark 的 spark-defaults.conf 文件中的值。

spark-env

更改 Spark 环境中的值。

spark-hive-site

更改 Spark 的 hive-site.xml 文件中的值

spark-log4j

更改 Spark 的 log4j.properties 文件中的值。

spark-metrics

更改 Spark 的 metrics.properties 文件中的值。

sqoop-env

更改 Sqoop 的环境中的值。

sqoop-oraoop-site

更改 Sqoop OraOop 的 oraoop-site.xml 文件中的值。

sqoop-site

更改 Sqoop 的 sqoop-site.xml 文件中的值。

tez-site

更改 Tez 的 tez-site.xml 文件中的值。

yarn-env

更改 YARN 环境中的值。

yarn-site

更改 YARN 的 yarn-site.xml 文件中的值。

zeppelin-env

更改 Zeppelin 环境中的值。

zookeeper-config

更改 ZooKeeper 的 zoo.cfg 文件中的值。

zookeeper-log4j

更改 ZooKeeper 的 log4j.properties 文件中的值。

5.15.0

5.15.0 应用程序版本

此版本支持以下应用程序:FlinkGangliaHadoopHBaseHCatalogHiveHueJupyterHubLivyMahoutMXNetOoziePhoenixPigPrestoSparkSqoopTezZeppelinZooKeeper

下图描述了此版本的 Amazon EMR 中提供的应用程序版本以及前四个 Amazon EMR 版本中的应用程序版本。

有关每个版本的 Amazon EMR 的应用程序版本的全面历史记录,请参见下面的示意图:

5.15.0 发行说明

以下发布说明包括 Amazon EMR 发布版 5.15.0 的信息。更改与版本 5.14.0 相关。

首次发布日期:2018 年 6 月 21 日

升级

  • 已将 HBase 升级到 1.4.4

  • 已将 Hive 升级到 2.3.3

  • 已将 Hue 升级到 4.2.0

  • 已将 Oozie 升级到 5.0.0

  • 已将 Zookeeper 升级到 3.4.12

  • 已将 AWS 开发工具包升级到 1.11.333

更改、增强和解决的问题

  • Hive

  • Hue

    • 已更新 Hue,以便在启用 Kerberos 时正确地使用 Livy 进行身份验证。在将 Kerberos 与 Amazon EMR 一起使用时,现在支持 Livy。

  • JupyterHub

    • 已更新 JupyterHub,使得默认情况下 Amazon EMR 安装 LDAP 客户端库。

    • 已修复生成自签名证书的脚本中的错误。有关该问题的更多信息,请参阅发行说明

已知问题

  • 此发布版本不支持 c1.medium 或 m1.small 实例类型。使用这些实例类型之一的集群无法启动。作为解决方案,请指定不同的实例类型或使用不同的发布版本。

5.15.0 组件版本

下面列出了Amazon EMR 随此版本一起安装的组件。一些组件作为大数据应用程序包的一部分安装。其他组件是 Amazon EMR 独有的,并且已为系统流程和功能安装这些组件。它们通常以 emraws 开头。最新的 Amazon EMR 版本中的大数据应用程序包通常是在社区中找到的最新版本。我们尽快在 Amazon EMR 中提供社区版本。

一些组件需要来自 Amazon EMR 的社区版本的更改。这些组件具有以下形式的 CommunityVersion-amzn-EmrVersion 的版本标签。例如,如果已对名为 myapp-component 的版本 2.2 的大数据社区组件进行三次修改以包含在不同的 Amazon EMR 发行版中,则其发行版将列出为 2.2-amzn-3

组件 版本 描述
aws-sagemaker-spark-sdk 1.0.1 Amazon SageMaker Spark 开发工具包
emr-ddb 4.5.0 适用于 Hadoop 生态系统应用程序的 Amazon DynamoDB 连接器。
emr-goodies 2.4.0 适用于 Hadoop 生态系统的方便易用的库。
emr-kinesis 3.4.0 适用于 Hadoop 生态系统应用程序的 Amazon Kinesis 连接器。
emr-s3-dist-cp 2.10.0 针对 Amazon S3 优化的分布式复制应用程序。
emrfs 2.24.0 适用于 Hadoop 生态系统应用程序的 Amazon S3 连接器。
flink-client 1.4.2 Apache Flink 命令行客户端脚本和应用程序。
ganglia-monitor 3.7.2 适用于 Hadoop 生态系统应用程序的嵌入式 Ganglia 代理以及 Ganglia 监控代理。
ganglia-metadata-collector 3.7.2 用于从 Ganglia 监控代理中聚合指标的 Ganglia 元数据收集器。
ganglia-web 3.7.1 用于查看由 Ganglia 元数据收集器收集的指标的 Web 应用程序。
hadoop-client 2.8.3-amzn-1 Hadoop 命令行客户端,如“hdfs”、“hadoop”或“yarn”。
hadoop-hdfs-datanode 2.8.3-amzn-1 用于存储数据块的 HDFS 节点级服务。
hadoop-hdfs-library 2.8.3-amzn-1 HDFS 命令行客户端和库
hadoop-hdfs-namenode 2.8.3-amzn-1 用于跟踪文件名和数据块位置的 HDFS 服务。
hadoop-httpfs-server 2.8.3-amzn-1 用于 HDFS 操作的 HTTP 终端节点。
hadoop-kms-server 2.8.3-amzn-1 基于 Hadoop 的 KeyProvider API 的加密密钥管理服务器。
hadoop-mapred 2.8.3-amzn-1 用于运行 MapReduce 应用程序的 MapReduce 执行引擎库。
hadoop-yarn-nodemanager 2.8.3-amzn-1 用于管理单个节点上的容器的 YARN 服务。
hadoop-yarn-resourcemanager 2.8.3-amzn-1 用于分配和管理群集资源与分布式应用程序的 YARN 服务。
hadoop-yarn-timeline-server 2.8.3-amzn-1 用于检索 YARN 应用程序的当前信息和历史信息的服务。
hbase-hmaster 1.4.4 适用于负责协调区域和执行管理命令的 HBase 群集的服务。
hbase-region-server 1.4.4 用于服务于一个或多个 HBase 区域的服务。
hbase-client 1.4.4 HBase 命令行客户端。
hbase-rest-server 1.4.4 用于向 HBase 提供 RESTful HTTP 终端节点的服务。
hbase-thrift-server 1.4.4 用于向 HBase 提供 Thrift 终端节点的服务。
hcatalog-client 2.3.3-amzn-0 用于操作 hcatalog-server 的“hcat”命令行客户端。
hcatalog-server 2.3.3-amzn-0 用于为分布式应用程序提供 HCatalog、表和存储管理层的服务。
hcatalog-webhcat-server 2.3.3-amzn-0 用于向 HCatalog 提供 REST 接口的 HTTP 终端节点。
hive-client 2.3.3-amzn-0 Hive 命令行客户端。
hive-hbase 2.3.3-amzn-0 Hive-hbase 客户端。
hive-metastore-server 2.3.3-amzn-0 用于访问 Hive 元存储 (一个用于存储 Hadoop 操作中的 SQL 的元数据的语义存储库) 的服务。
hive-server2 2.3.3-amzn-0 用于将 Hive 查询作为 Web 请求接受的服务。
hue-server 4.2.0 用于使用 Hadoop 生态系统应用程序分析数据的 Web 应用程序
jupyterhub 0.8.1 Jupyter 笔记本的多用户服务器
livy-server 0.4.0-incubating 用于与 Apache Spark 交互的 REST 接口
mahout-client 0.13.0 用于机器学习的库。
mxnet 1.1.0 用于深度学习的灵活的、可扩展且高效的库。
mysql-server 5.5.54+ MySQL 数据库服务器。
nvidia-cuda 9.1.85 Nvidia 驱动程序和 Cuda 工具包
oozie-client 5.0.0 Oozie 命令行客户端。
oozie-server 5.0.0 用于接受 Oozie 工作流请求的服务。
opencv 3.4.0 开源计算机视觉库。
phoenix-library 4.13.0-HBase-1.4 服务器和客户端的 phoenix 库
phoenix-query-server 4.13.0-HBase-1.4 向 Avatica API 提供 JDBC 访问权限以及协议缓冲区和 JSON 格式访问权限的轻量级服务器
presto-coordinator 0.194 用于在 presto-worker 之中接受查询并管理查询的服务。
presto-worker 0.194 用于执行查询的各个部分的服务。
pig-client 0.17.0 Pig 命令行客户端。
r 3.4.1 用于统计计算的 R 项目
spark-client 2.3.0 Spark 命令行客户端。
spark-history-server 2.3.0 用于查看完整的 Spark 应用程序的生命周期的已记录事件的 Web UI。
spark-on-yarn 2.3.0 适用于 YARN 的内存中执行引擎。
spark-yarn-slave 2.3.0 YARN 从属项所需的 Apache Spark 库。
sqoop-client 1.4.7 Apache Sqoop 命令行客户端。
tez-on-yarn 0.8.4 tez YARN 应用程序和库。
webserver 2.4.25+ Apache HTTP 服务器。
zeppelin-server 0.7.3 支持交互式数据分析的基于 Web 的笔记本电脑。
zookeeper-server 3.4.12 用于维护配置信息、命名、提供分布式同步以及提供组服务的集中式服务。
zookeeper-client 3.4.12 ZooKeeper 命令行客户端。

5.15.0 配置分类

配置分类使您能够自定义应用程序。这些分类通常对应于应用程序的配置 XML 文件,例如 hive-site.xml。有关更多信息,请参阅 配置应用程序

emr-5.15.0 分类

分类 说明

capacity-scheduler

更改 Hadoop 的 capacity-scheduler.xml 文件中的值。

container-log4j

更改 Hadoop YARN 的 container-log4j.properties 文件中的值。

core-site

更改 Hadoop 的 core-site.xml 文件中的值。

emrfs-site

更改 EMRFS 设置。

flink-conf

更改 flink-conf.yaml 设置。

flink-log4j

更改 Flink log4j.properties 设置。

flink-log4j-yarn-session

更改 Flink log4j-yarn-session.properties 设置。

flink-log4j-cli

更改 Flink log4j-cli.properties 设置。

hadoop-env

更改适用于所有 Hadoop 组件的 Hadoop 环境中的值。

hadoop-log4j

更改 Hadoop 的 log4j.properties 文件中的值。

hadoop-ssl-server

更改 hadoop ssl 服务器配置

hadoop-ssl-client

更改 hadoop ssl 客户端配置

hbase

适用于 Apache HBase 的 Amazon EMR 辅助设置。

hbase-env

更改 HBase 环境中的值。

hbase-log4j

更改 HBase 的 hbase-log4j.properties 文件中的值。

hbase-metrics

更改 HBase 的 hadoop-metrics2-hbase.properties 文件中的值。

hbase-policy

更改 HBase 的 hbase-policy.xml 文件中的值。

hbase-site

更改 HBase 的 hbase-site.xml 文件中的值。

hdfs-encryption-zones

配置 HDFS 加密区域。

hdfs-site

更改 HDFS 的 hdfs-site.xml 中的值。

hcatalog-env

更改 HCatalog 的环境中的值。

hcatalog-server-jndi

更改 HCatalog 的 jndi.properties 中的值。

hcatalog-server-proto-hive-site

更改 HCatalog 的 proto-hive-site.xml 中的值。

hcatalog-webhcat-env

更改 HCatalog WebHCat 的环境中的值。

hcatalog-webhcat-log4j2

更改 HCatalog WebHCat 的 log4j2.properties 中的值。

hcatalog-webhcat-site

更改 HCatalog WebHCat 的 webhcat-site.xml 文件中的值。

hive-beeline-log4j2

更改 Hive 的 beeline-log4j2.properties 文件中的值。

hive-parquet-logging

更改 Hive parquet-logging.properties 文件中的值。

hive-env

更改 Hive 环境中的值。

hive-exec-log4j2

更改 Hive 的 hive-exec-log4j2.properties 文件中的值。

hive-llap-daemon-log4j2

更改 Hive 的 llap-daemon-log4j2.properties 文件中的值。

hive-log4j2

更改 Hive 的 hive-log4j2.properties 文件中的值。

hive-site

更改 Hive 的 hive-site.xml 文件中的值

hiveserver2-site

更改 Hive Server2 的 hiveserver2-site.xml 文件中的值

hue-ini

更改 Hue 的 ini 文件中的值

httpfs-env

更改 HTTPFS 环境中的值。

httpfs-site

更改 Hadoop 的 httpfs-site.xml 文件中的值。

hadoop-kms-acls

更改 Hadoop 的 kms-acls.xml 文件中的值。

hadoop-kms-env

更改 Hadoop KMS 环境中的值。

hadoop-kms-log4j

更改 Hadoop 的 kms-log4j.properties 文件中的值。

hadoop-kms-site

更改 Hadoop 的 kms-site.xml 文件中的值。

jupyter-notebook-conf

更改 Jupyter Notebook 的 jupyter_notebook_config.py 文件中的值。

jupyter-hub-conf

更改 JupyterHubs 的 jupyterhub_config.py 文件中的值。

jupyter-sparkmagic-conf

更改 Sparkmagic 的 config.json 文件中的值。

livy-conf

更改 Livy 的 livy.conf 文件中的值。

livy-env

更改 Livy 环境中的值。

livy-log4j

更改 Livy log4j.properties 设置。

mapred-env

更改 MapReduce 应用程序的环境中的值。

mapred-site

更改 MapReduce 应用程序的 mapred-site.xml 文件中的值。

oozie-env

更改 Oozie 的环境中的值。

oozie-log4j

更改 Oozie 的 oozie-log4j.properties 文件中的值。

oozie-site

更改 Oozie 的 oozie-site.xml 文件中的值。

phoenix-hbase-metrics

更改 Phoenix 的 hadoop-metrics2-hbase.properties 文件中的值。

phoenix-hbase-site

更改 Phoenix 的 hbase-site.xml 文件中的值。

phoenix-log4j

更改 Phoenix 的 log4j.properties 文件中的值。

phoenix-metrics

更改 Phoenix 的 hadoop-metrics2-phoenix.properties 文件中的值。

pig-env

更改 Pig 环境中的值。

pig-properties

更改 Pig 的 pig.properties 文件中的值。

pig-log4j

更改 Pig 的 log4j.properties 文件中的值。

presto-log

更改 Presto 的 log.properties 文件中的值。

presto-config

更改 Presto 的 config.properties 文件中的值。

presto-env

更改 Presto 的 presto-env.sh 文件中的值。

presto-node

更改 Presto 的 node.properties 文件中的值。

presto-connector-blackhole

更改 Presto 的 blackhole.properties 文件中的值。

presto-connector-cassandra

更改 Presto 的 cassandra.properties 文件中的值。

presto-connector-hive

更改 Presto 的 hive.properties 文件中的值。

presto-connector-jmx

更改 Presto 的 jmx.properties 文件中的值。

presto-connector-kafka

更改 Presto 的 kafka.properties 文件中的值。

presto-connector-localfile

更改 Presto 的 localfile.properties 文件中的值。

presto-connector-mongodb

更改 Presto 的 mongodb.properties 文件中的值。

presto-connector-mysql

更改 Presto 的 mysql.properties 文件中的值。

presto-connector-postgresql

更改 Presto 的 postgresql.properties 文件中的值。

presto-connector-raptor

更改 Presto 的 raptor.properties 文件中的值。

presto-connector-redis

更改 Presto 的 redis.properties 文件中的值。

presto-connector-redshift

更改 Presto 的 redshift.properties 文件中的值。

presto-connector-tpch

更改 Presto 的 tpch.properties 文件中的值。

spark

适用于 Apache Spark 的 Amazon EMR 辅助设置。

spark-defaults

更改 Spark 的 spark-defaults.conf 文件中的值。

spark-env

更改 Spark 环境中的值。

spark-hive-site

更改 Spark 的 hive-site.xml 文件中的值

spark-log4j

更改 Spark 的 log4j.properties 文件中的值。

spark-metrics

更改 Spark 的 metrics.properties 文件中的值。

sqoop-env

更改 Sqoop 的环境中的值。

sqoop-oraoop-site

更改 Sqoop OraOop 的 oraoop-site.xml 文件中的值。

sqoop-site

更改 Sqoop 的 sqoop-site.xml 文件中的值。

tez-site

更改 Tez 的 tez-site.xml 文件中的值。

yarn-env

更改 YARN 环境中的值。

yarn-site

更改 YARN 的 yarn-site.xml 文件中的值。

zeppelin-env

更改 Zeppelin 环境中的值。

zookeeper-config

更改 ZooKeeper 的 zoo.cfg 文件中的值。

zookeeper-log4j

更改 ZooKeeper 的 log4j.properties 文件中的值。

5.14.x

5.14 系列中有多个版本。选择下方的链接以在此选项卡内查看特定版本的信息。

5.14.1(最新)| 5.14.0

Amazon EMR 发行版 5.14.1

发行版 5.14.1 应用程序版本

此版本支持以下应用程序:FlinkGangliaHadoopHBaseHCatalogHiveHueJupyterHubLivyMahoutMXNetOoziePhoenixPigPrestoSparkSqoopTezZeppelinZooKeeper

下图描述了此版本的 Amazon EMR 中提供的应用程序版本以及前四个 Amazon EMR 版本中的应用程序版本。

有关每个版本的 Amazon EMR 的应用程序版本的全面历史记录,请参见下面的示意图:

发行版 5.14.1 发行说明

以下发布说明包括有关 Amazon EMR 发布版本 5.14.1 的信息。与 5.14.0 相关的更改。

首次发布日期:2018 年 10 月 17 日

更新了 Amazon EMR 的默认 AMI 以消除潜在的安全漏洞。

发行版 5.14.1 组件版本

下面列出了Amazon EMR 随此版本一起安装的组件。一些组件作为大数据应用程序包的一部分安装。其他组件是 Amazon EMR 独有的,并且已为系统流程和功能安装这些组件。它们通常以 emraws 开头。最新的 Amazon EMR 版本中的大数据应用程序包通常是在社区中找到的最新版本。我们尽快在 Amazon EMR 中提供社区版本。

一些组件需要来自 Amazon EMR 的社区版本的更改。这些组件具有以下形式的 CommunityVersion-amzn-EmrVersion 的版本标签。例如,如果已对名为 myapp-component 的版本 2.2 的大数据社区组件进行三次修改以包含在不同的 Amazon EMR 发行版中,则其发行版将列出为 2.2-amzn-3

组件 版本 描述
aws-sagemaker-spark-sdk 1.0.1 Amazon SageMaker Spark 开发工具包
emr-ddb 4.5.0 适用于 Hadoop 生态系统应用程序的 Amazon DynamoDB 连接器。
emr-goodies 2.4.0 适用于 Hadoop 生态系统的方便易用的库。
emr-kinesis 3.4.0 适用于 Hadoop 生态系统应用程序的 Amazon Kinesis 连接器。
emr-s3-dist-cp 2.10.0 针对 Amazon S3 优化的分布式复制应用程序。
emrfs 2.23.0 适用于 Hadoop 生态系统应用程序的 Amazon S3 连接器。
flink-client 1.4.2 Apache Flink 命令行客户端脚本和应用程序。
ganglia-monitor 3.7.2 适用于 Hadoop 生态系统应用程序的嵌入式 Ganglia 代理以及 Ganglia 监控代理。
ganglia-metadata-collector 3.7.2 用于从 Ganglia 监控代理中聚合指标的 Ganglia 元数据收集器。
ganglia-web 3.7.1 用于查看由 Ganglia 元数据收集器收集的指标的 Web 应用程序。
hadoop-client 2.8.3-amzn-1 Hadoop 命令行客户端,如“hdfs”、“hadoop”或“yarn”。
hadoop-hdfs-datanode 2.8.3-amzn-1 用于存储数据块的 HDFS 节点级服务。
hadoop-hdfs-library 2.8.3-amzn-1 HDFS 命令行客户端和库
hadoop-hdfs-namenode 2.8.3-amzn-1 用于跟踪文件名和数据块位置的 HDFS 服务。
hadoop-httpfs-server 2.8.3-amzn-1 用于 HDFS 操作的 HTTP 终端节点。
hadoop-kms-server 2.8.3-amzn-1 基于 Hadoop 的 KeyProvider API 的加密密钥管理服务器。
hadoop-mapred 2.8.3-amzn-1 用于运行 MapReduce 应用程序的 MapReduce 执行引擎库。
hadoop-yarn-nodemanager 2.8.3-amzn-1 用于管理单个节点上的容器的 YARN 服务。
hadoop-yarn-resourcemanager 2.8.3-amzn-1 用于分配和管理群集资源与分布式应用程序的 YARN 服务。
hadoop-yarn-timeline-server 2.8.3-amzn-1 用于检索 YARN 应用程序的当前信息和历史信息的服务。
hbase-hmaster 1.4.2 适用于负责协调区域和执行管理命令的 HBase 群集的服务。
hbase-region-server 1.4.2 用于服务于一个或多个 HBase 区域的服务。
hbase-client 1.4.2 HBase 命令行客户端。
hbase-rest-server 1.4.2 用于向 HBase 提供 RESTful HTTP 终端节点的服务。
hbase-thrift-server 1.4.2 用于向 HBase 提供 Thrift 终端节点的服务。
hcatalog-client 2.3.2-amzn-2 用于操作 hcatalog-server 的“hcat”命令行客户端。
hcatalog-server 2.3.2-amzn-2 用于为分布式应用程序提供 HCatalog、表和存储管理层的服务。
hcatalog-webhcat-server 2.3.2-amzn-2 用于向 HCatalog 提供 REST 接口的 HTTP 终端节点。
hive-client 2.3.2-amzn-2 Hive 命令行客户端。
hive-hbase 2.3.2-amzn-2 Hive-hbase 客户端。
hive-metastore-server 2.3.2-amzn-2 用于访问 Hive 元存储 (一个用于存储 Hadoop 操作中的 SQL 的元数据的语义存储库) 的服务。
hive-server2 2.3.2-amzn-2 用于将 Hive 查询作为 Web 请求接受的服务。
hue-server 4.1.0 用于使用 Hadoop 生态系统应用程序分析数据的 Web 应用程序
jupyterhub 0.8.1 Jupyter 笔记本的多用户服务器
livy-server 0.4.0-incubating 用于与 Apache Spark 交互的 REST 接口
mahout-client 0.13.0 用于机器学习的库。
mxnet 1.1.0 用于深度学习的灵活的、可扩展且高效的库。
mysql-server 5.5.54+ MySQL 数据库服务器。
nvidia-cuda 9.1.85 Nvidia 驱动程序和 Cuda 工具包
oozie-client 4.3.0 Oozie 命令行客户端。
oozie-server 4.3.0 用于接受 Oozie 工作流请求的服务。
opencv 3.4.0 开源计算机视觉库。
phoenix-library 4.13.0-HBase-1.4 服务器和客户端的 phoenix 库
phoenix-query-server 4.13.0-HBase-1.4 向 Avatica API 提供 JDBC 访问权限以及协议缓冲区和 JSON 格式访问权限的轻量级服务器
presto-coordinator 0.194 用于在 presto-worker 之中接受查询并管理查询的服务。
presto-worker 0.194 用于执行查询的各个部分的服务。
pig-client 0.17.0 Pig 命令行客户端。
r 3.4.1 用于统计计算的 R 项目
spark-client 2.3.0 Spark 命令行客户端。
spark-history-server 2.3.0 用于查看完整的 Spark 应用程序的生命周期的已记录事件的 Web UI。
spark-on-yarn 2.3.0 适用于 YARN 的内存中执行引擎。
spark-yarn-slave 2.3.0 YARN 从属项所需的 Apache Spark 库。
sqoop-client 1.4.7 Apache Sqoop 命令行客户端。
tez-on-yarn 0.8.4 tez YARN 应用程序和库。
webserver 2.4.25+ Apache HTTP 服务器。
zeppelin-server 0.7.3 支持交互式数据分析的基于 Web 的笔记本电脑。
zookeeper-server 3.4.10 用于维护配置信息、命名、提供分布式同步以及提供组服务的集中式服务。
zookeeper-client 3.4.10 ZooKeeper 命令行客户端。

发行版 5.14.1 配置分类

配置分类使您能够自定义应用程序。这些分类通常对应于应用程序的配置 XML 文件,例如 hive-site.xml。有关更多信息,请参阅 配置应用程序

emr-5.14.1 分类

分类 描述

capacity-scheduler

更改 Hadoop 的 capacity-scheduler.xml 文件中的值。

container-log4j

更改 Hadoop YARN 的 container-log4j.properties 文件中的值。

core-site

更改 Hadoop 的 core-site.xml 文件中的值。

emrfs-site

更改 EMRFS 设置。

flink-conf

更改 flink-conf.yaml 设置。

flink-log4j

更改 Flink log4j.properties 设置。

flink-log4j-yarn-session

更改 Flink log4j-yarn-session.properties 设置。

flink-log4j-cli

更改 Flink log4j-cli.properties 设置。

hadoop-env

更改适用于所有 Hadoop 组件的 Hadoop 环境中的值。

hadoop-log4j

更改 Hadoop 的 log4j.properties 文件中的值。

hadoop-ssl-server

更改 hadoop ssl 服务器配置

hadoop-ssl-client

更改 hadoop ssl 客户端配置

hbase

适用于 Apache HBase 的 Amazon EMR 辅助设置。

hbase-env

更改 HBase 环境中的值。

hbase-log4j

更改 HBase 的 hbase-log4j.properties 文件中的值。

hbase-metrics

更改 HBase 的 hadoop-metrics2-hbase.properties 文件中的值。

hbase-policy

更改 HBase 的 hbase-policy.xml 文件中的值。

hbase-site

更改 HBase 的 hbase-site.xml 文件中的值。

hdfs-encryption-zones

配置 HDFS 加密区域。

hdfs-site

更改 HDFS 的 hdfs-site.xml 中的值。

hcatalog-env

更改 HCatalog 的环境中的值。

hcatalog-server-jndi

更改 HCatalog 的 jndi.properties 中的值。

hcatalog-server-proto-hive-site

更改 HCatalog 的 proto-hive-site.xml 中的值。

hcatalog-webhcat-env

更改 HCatalog WebHCat 的环境中的值。

hcatalog-webhcat-log4j2

更改 HCatalog WebHCat 的 log4j2.properties 中的值。

hcatalog-webhcat-site

更改 HCatalog WebHCat 的 webhcat-site.xml 文件中的值。

hive-beeline-log4j2

更改 Hive 的 beeline-log4j2.properties 文件中的值。

hive-parquet-logging

更改 Hive parquet-logging.properties 文件中的值。

hive-env

更改 Hive 环境中的值。

hive-exec-log4j2

更改 Hive 的 hive-exec-log4j2.properties 文件中的值。

hive-llap-daemon-log4j2

更改 Hive 的 llap-daemon-log4j2.properties 文件中的值。

hive-log4j2

更改 Hive 的 hive-log4j2.properties 文件中的值。

hive-site

更改 Hive 的 hive-site.xml 文件中的值

hiveserver2-site

更改 Hive Server2 的 hiveserver2-site.xml 文件中的值

hue-ini

更改 Hue 的 ini 文件中的值

httpfs-env

更改 HTTPFS 环境中的值。

httpfs-site

更改 Hadoop 的 httpfs-site.xml 文件中的值。

hadoop-kms-acls

更改 Hadoop 的 kms-acls.xml 文件中的值。

hadoop-kms-env

更改 Hadoop KMS 环境中的值。

hadoop-kms-log4j

更改 Hadoop 的 kms-log4j.properties 文件中的值。

hadoop-kms-site

更改 Hadoop 的 kms-site.xml 文件中的值。

jupyter-notebook-conf

更改 Jupyter Notebook 的 jupyter_notebook_config.py 文件中的值。

jupyter-hub-conf

更改 JupyterHubs 的 jupyterhub_config.py 文件中的值。

jupyter-sparkmagic-conf

更改 Sparkmagic 的 config.json 文件中的值。

livy-conf

更改 Livy 的 livy.conf 文件中的值。

livy-env

更改 Livy 环境中的值。

livy-log4j

更改 Livy log4j.properties 设置。

mapred-env

更改 MapReduce 应用程序的环境中的值。

mapred-site

更改 MapReduce 应用程序的 mapred-site.xml 文件中的值。

oozie-env

更改 Oozie 的环境中的值。

oozie-log4j

更改 Oozie 的 oozie-log4j.properties 文件中的值。

oozie-site

更改 Oozie 的 oozie-site.xml 文件中的值。

phoenix-hbase-metrics

更改 Phoenix 的 hadoop-metrics2-hbase.properties 文件中的值。

phoenix-hbase-site

更改 Phoenix 的 hbase-site.xml 文件中的值。

phoenix-log4j

更改 Phoenix 的 log4j.properties 文件中的值。

phoenix-metrics

更改 Phoenix 的 hadoop-metrics2-phoenix.properties 文件中的值。

pig-env

更改 Pig 环境中的值。

pig-properties

更改 Pig 的 pig.properties 文件中的值。

pig-log4j

更改 Pig 的 log4j.properties 文件中的值。

presto-log

更改 Presto 的 log.properties 文件中的值。

presto-config

更改 Presto 的 config.properties 文件中的值。

presto-env

更改 Presto 的 presto-env.sh 文件中的值。

presto-node

更改 Presto 的 node.properties 文件中的值。

presto-connector-blackhole

更改 Presto 的 blackhole.properties 文件中的值。

presto-connector-cassandra

更改 Presto 的 cassandra.properties 文件中的值。

presto-connector-hive

更改 Presto 的 hive.properties 文件中的值。

presto-connector-jmx

更改 Presto 的 jmx.properties 文件中的值。

presto-connector-kafka

更改 Presto 的 kafka.properties 文件中的值。

presto-connector-localfile

更改 Presto 的 localfile.properties 文件中的值。

presto-connector-mongodb

更改 Presto 的 mongodb.properties 文件中的值。

presto-connector-mysql

更改 Presto 的 mysql.properties 文件中的值。

presto-connector-postgresql

更改 Presto 的 postgresql.properties 文件中的值。

presto-connector-raptor

更改 Presto 的 raptor.properties 文件中的值。

presto-connector-redis

更改 Presto 的 redis.properties 文件中的值。

presto-connector-redshift

更改 Presto 的 redshift.properties 文件中的值。

presto-connector-tpch

更改 Presto 的 tpch.properties 文件中的值。

spark

适用于 Apache Spark 的 Amazon EMR 辅助设置。

spark-defaults

更改 Spark 的 spark-defaults.conf 文件中的值。

spark-env

更改 Spark 环境中的值。

spark-hive-site

更改 Spark 的 hive-site.xml 文件中的值

spark-log4j

更改 Spark 的 log4j.properties 文件中的值。

spark-metrics

更改 Spark 的 metrics.properties 文件中的值。

sqoop-env

更改 Sqoop 的环境中的值。

sqoop-oraoop-site

更改 Sqoop OraOop 的 oraoop-site.xml 文件中的值。

sqoop-site

更改 Sqoop 的 sqoop-site.xml 文件中的值。

tez-site

更改 Tez 的 tez-site.xml 文件中的值。

yarn-env

更改 YARN 环境中的值。

yarn-site

更改 YARN 的 yarn-site.xml 文件中的值。

zeppelin-env

更改 Zeppelin 环境中的值。

zookeeper-config

更改 ZooKeeper 的 zoo.cfg 文件中的值。

zookeeper-log4j

更改 ZooKeeper 的 log4j.properties 文件中的值。

Amazon EMR 发行版 5.14.0

发行版 5.14.0 应用程序版本

此版本支持以下应用程序:FlinkGangliaHadoopHBaseHCatalogHiveHueJupyterHubLivyMahoutMXNetOoziePhoenixPigPrestoSparkSqoopTezZeppelinZooKeeper

下图描述了此版本的 Amazon EMR 中提供的应用程序版本以及前四个 Amazon EMR 版本中的应用程序版本。

有关每个版本的 Amazon EMR 的应用程序版本的全面历史记录,请参见下面的示意图:

发行版 5.14.0 发行说明

以下发布说明包括有关 Amazon EMR 发布版本 5.14.0 的信息。与 5.13.0 相关的更改。

首次发布日期:2018 年 6 月 4 日

升级

  • 将 Apache Flink 升级至 1.4.2

  • 将 Apache MXnet 升级至 1.1.0

  • 将 Apache Sqoop 升级至 1.4.7

新功能

  • 增加了对 JupyterHub 的支持。有关更多信息,请参阅 JupyterHub

更改、增强和解决的问题

  • EMRFS

    • 向 Amazon S3 发送的请求中的 userAgent 字符串已更新,包含调用委托人的用户和组信息。AWS CloudTrail 日志可用它进行更加全面的请求跟踪。

  • HBase

    • 包含了 HBASE-20447,它可解决可能导致缓存问题的问题,尤其是对于分割区域。

  • MXnet

    • 增加了 OpenCV 库。

  • Spark

    • 在 Spark 使用 EMRFS 将 Parquet 文件写入 Amazon S3 位置时,FileOutputCommitter 算法已更新为使用版本 2 而不再使用版本 1。这样会减少重命名的数量,提升应用程序性能。此更改不会影响:

      • 除 Spark 之外的其他应用程序。

      • 写入其他文件系统(例如 HDFS,此文件系统仍使用 FileOutputCommitter 的版本 1)的应用程序。

      • 使用其他输出格式(例如文本或 csv,已使用 EMRFS 直接写入)的应用程序。

已知问题

  • JupyterHub

    • 不支持在创建集群时使用配置分类设置 JupyterHub 和个别 Jupyter 笔记本。请手动编辑每个用户的 jupyterhub_config.py 文件和 jupyter_notebook_config.py 文件。有关更多信息,请参阅 配置 JupyterHub

    • JupyterHub 无法在私有子网内的集群上启动,并显示以下消息 Error: ENOENT: no such file or directory, open '/etc/jupyter/conf/server.crt' 。这是由生成自签名证书的脚本中的错误引起的。使用以下变通方法生成自签名证书。所有命令都是在连接到主节点时执行。

      1. 将证书生成脚本从容器复制到主节点:

        sudo docker cp jupyterhub:/tmp/gen_self_signed_cert.sh ./
      2. 使用文本编辑器更改第 23 行以将公共主机名更改为本地主机名,如下所示:

        local hostname=$(curl -s $EC2_METADATA_SERVICE_URI/local-hostname)
      3. 运行脚本以生成自签名证书:

        sudo bash ./gen_self_signed_cert.sh
      4. 将脚本生成的证书文件移动到 /etc/jupyter/conf/ 目录:

        sudo mv /tmp/server.crt /tmp/server.key /etc/jupyter/conf/

      您可以对 tail 文件执行 jupyter.log 以确认 JupyterHub 已重新启动并返回 200 响应代码。例如:

      tail -f /var/log/jupyter/jupyter.log

      这应该返回类似于以下信息的响应:

      # [I 2018-06-14 18:56:51.356 JupyterHub app:1581] JupyterHub is now running at https://:9443/ # 19:01:51.359 - info: [ConfigProxy] 200 GET /api/routes

发行版 5.14.0 组件版本

组件 版本 描述
aws-sagemaker-spark-sdk 1.0.1 Amazon SageMaker Spark 开发工具包
emr-ddb 4.5.0 适用于 Hadoop 生态系统应用程序的 Amazon DynamoDB 连接器。
emr-goodies 2.4.0 适用于 Hadoop 生态系统的方便易用的库。
emr-kinesis 3.4.0 适用于 Hadoop 生态系统应用程序的 Amazon Kinesis 连接器。
emr-s3-dist-cp 2.10.0 针对 Amazon S3 优化的分布式复制应用程序。
emrfs 2.23.0 适用于 Hadoop 生态系统应用程序的 Amazon S3 连接器。
flink-client 1.4.2 Apache Flink 命令行客户端脚本和应用程序。
ganglia-monitor 3.7.2 适用于 Hadoop 生态系统应用程序的嵌入式 Ganglia 代理以及 Ganglia 监控代理。
ganglia-metadata-collector 3.7.2 用于从 Ganglia 监控代理中聚合指标的 Ganglia 元数据收集器。
ganglia-web 3.7.1 用于查看由 Ganglia 元数据收集器收集的指标的 Web 应用程序。
hadoop-client 2.8.3-amzn-1 Hadoop 命令行客户端,如“hdfs”、“hadoop”或“yarn”。
hadoop-hdfs-datanode 2.8.3-amzn-1 用于存储数据块的 HDFS 节点级服务。
hadoop-hdfs-library 2.8.3-amzn-1 HDFS 命令行客户端和库
hadoop-hdfs-namenode 2.8.3-amzn-1 用于跟踪文件名和数据块位置的 HDFS 服务。
hadoop-httpfs-server 2.8.3-amzn-1 用于 HDFS 操作的 HTTP 终端节点。
hadoop-kms-server 2.8.3-amzn-1 基于 Hadoop 的 KeyProvider API 的加密密钥管理服务器。
hadoop-mapred 2.8.3-amzn-1 用于运行 MapReduce 应用程序的 MapReduce 执行引擎库。
hadoop-yarn-nodemanager 2.8.3-amzn-1 用于管理单个节点上的容器的 YARN 服务。
hadoop-yarn-resourcemanager 2.8.3-amzn-1 用于分配和管理群集资源与分布式应用程序的 YARN 服务。
hadoop-yarn-timeline-server 2.8.3-amzn-1 用于检索 YARN 应用程序的当前信息和历史信息的服务。
hbase-hmaster 1.4.2 适用于负责协调区域和执行管理命令的 HBase 群集的服务。
hbase-region-server 1.4.2 用于服务于一个或多个 HBase 区域的服务。
hbase-client 1.4.2 HBase 命令行客户端。
hbase-rest-server 1.4.2 用于向 HBase 提供 RESTful HTTP 终端节点的服务。
hbase-thrift-server 1.4.2 用于向 HBase 提供 Thrift 终端节点的服务。
hcatalog-client 2.3.2-amzn-2 用于操作 hcatalog-server 的“hcat”命令行客户端。
hcatalog-server 2.3.2-amzn-2 用于为分布式应用程序提供 HCatalog、表和存储管理层的服务。
hcatalog-webhcat-server 2.3.2-amzn-2 用于向 HCatalog 提供 REST 接口的 HTTP 终端节点。
hive-client 2.3.2-amzn-2 Hive 命令行客户端。
hive-hbase 2.3.2-amzn-2 Hive-hbase 客户端。
hive-metastore-server 2.3.2-amzn-2 用于访问 Hive 元存储 (一个用于存储 Hadoop 操作中的 SQL 的元数据的语义存储库) 的服务。
hive-server2 2.3.2-amzn-2 用于将 Hive 查询作为 Web 请求接受的服务。
hue-server 4.1.0 用于使用 Hadoop 生态系统应用程序分析数据的 Web 应用程序
jupyterhub 0.8.1 Jupyter 笔记本的多用户服务器
livy-server 0.4.0-incubating 用于与 Apache Spark 交互的 REST 接口
mahout-client 0.13.0 用于机器学习的库。
mxnet 1.1.0 用于深度学习的灵活的、可扩展且高效的库。
mysql-server 5.5.54+ MySQL 数据库服务器。
nvidia-cuda 9.1.85 Nvidia 驱动程序和 Cuda 工具包
oozie-client 4.3.0 Oozie 命令行客户端。
oozie-server 4.3.0 用于接受 Oozie 工作流请求的服务。
opencv 3.4.0 开源计算机视觉库。
phoenix-library 4.13.0-HBase-1.4 服务器和客户端的 phoenix 库
phoenix-query-server 4.13.0-HBase-1.4 向 Avatica API 提供 JDBC 访问权限以及协议缓冲区和 JSON 格式访问权限的轻量级服务器
presto-coordinator 0.194 用于在 presto-worker 之中接受查询并管理查询的服务。
presto-worker 0.194 用于执行查询的各个部分的服务。
pig-client 0.17.0 Pig 命令行客户端。
r 3.4.1 用于统计计算的 R 项目
spark-client 2.3.0 Spark 命令行客户端。
spark-history-server 2.3.0 用于查看完整的 Spark 应用程序的生命周期的已记录事件的 Web UI。
spark-on-yarn 2.3.0 适用于 YARN 的内存中执行引擎。
spark-yarn-slave 2.3.0 YARN 从属项所需的 Apache Spark 库。
sqoop-client 1.4.7 Apache Sqoop 命令行客户端。
tez-on-yarn 0.8.4 tez YARN 应用程序和库。
webserver 2.4.25+ Apache HTTP 服务器。
zeppelin-server 0.7.3 支持交互式数据分析的基于 Web 的笔记本电脑。
zookeeper-server 3.4.10 用于维护配置信息、命名、提供分布式同步以及提供组服务的集中式服务。
zookeeper-client 3.4.10 ZooKeeper 命令行客户端。

发行版 5.14.0 配置分类

配置分类使您能够自定义应用程序。这些分类通常对应于应用程序的配置 XML 文件,例如 hive-site.xml。有关更多信息,请参阅 配置应用程序

emr-5.14.0 分类

分类 说明

capacity-scheduler

更改 Hadoop 的 capacity-scheduler.xml 文件中的值。

container-log4j

更改 Hadoop YARN 的 container-log4j.properties 文件中的值。

core-site

更改 Hadoop 的 core-site.xml 文件中的值。

emrfs-site

更改 EMRFS 设置。

flink-conf

更改 flink-conf.yaml 设置。

flink-log4j

更改 Flink log4j.properties 设置。

flink-log4j-yarn-session

更改 Flink log4j-yarn-session.properties 设置。

flink-log4j-cli

更改 Flink log4j-cli.properties 设置。

hadoop-env

更改适用于所有 Hadoop 组件的 Hadoop 环境中的值。

hadoop-log4j

更改 Hadoop 的 log4j.properties 文件中的值。

hadoop-ssl-server

更改 hadoop ssl 服务器配置

hadoop-ssl-client

更改 hadoop ssl 客户端配置

hbase

适用于 Apache HBase 的 Amazon EMR 辅助设置。

hbase-env

更改 HBase 环境中的值。

hbase-log4j

更改 HBase 的 hbase-log4j.properties 文件中的值。

hbase-metrics

更改 HBase 的 hadoop-metrics2-hbase.properties 文件中的值。

hbase-policy

更改 HBase 的 hbase-policy.xml 文件中的值。

hbase-site

更改 HBase 的 hbase-site.xml 文件中的值。

hdfs-encryption-zones

配置 HDFS 加密区域。

hdfs-site

更改 HDFS 的 hdfs-site.xml 中的值。

hcatalog-env

更改 HCatalog 的环境中的值。

hcatalog-server-jndi

更改 HCatalog 的 jndi.properties 中的值。

hcatalog-server-proto-hive-site

更改 HCatalog 的 proto-hive-site.xml 中的值。

hcatalog-webhcat-env

更改 HCatalog WebHCat 的环境中的值。

hcatalog-webhcat-log4j2

更改 HCatalog WebHCat 的 log4j2.properties 中的值。

hcatalog-webhcat-site

更改 HCatalog WebHCat 的 webhcat-site.xml 文件中的值。

hive-beeline-log4j2

更改 Hive 的 beeline-log4j2.properties 文件中的值。

hive-parquet-logging

更改 Hive parquet-logging.properties 文件中的值。

hive-env

更改 Hive 环境中的值。

hive-exec-log4j2

更改 Hive 的 hive-exec-log4j2.properties 文件中的值。

hive-llap-daemon-log4j2

更改 Hive 的 llap-daemon-log4j2.properties 文件中的值。

hive-log4j2

更改 Hive 的 hive-log4j2.properties 文件中的值。

hive-site

更改 Hive 的 hive-site.xml 文件中的值

hiveserver2-site

更改 Hive Server2 的 hiveserver2-site.xml 文件中的值

hue-ini

更改 Hue 的 ini 文件中的值

httpfs-env

更改 HTTPFS 环境中的值。

httpfs-site

更改 Hadoop 的 httpfs-site.xml 文件中的值。

hadoop-kms-acls

更改 Hadoop 的 kms-acls.xml 文件中的值。

hadoop-kms-env

更改 Hadoop KMS 环境中的值。

hadoop-kms-log4j

更改 Hadoop 的 kms-log4j.properties 文件中的值。

hadoop-kms-site

更改 Hadoop 的 kms-site.xml 文件中的值。

jupyter-notebook-conf

更改 Jupyter Notebook 的 jupyter_notebook_config.py 文件中的值。

jupyter-hub-conf

更改 JupyterHubs 的 jupyterhub_config.py 文件中的值。

jupyter-sparkmagic-conf

更改 Sparkmagic 的 config.json 文件中的值。

livy-conf

更改 Livy 的 livy.conf 文件中的值。

livy-env

更改 Livy 环境中的值。

livy-log4j

更改 Livy log4j.properties 设置。

mapred-env

更改 MapReduce 应用程序的环境中的值。

mapred-site

更改 MapReduce 应用程序的 mapred-site.xml 文件中的值。

oozie-env

更改 Oozie 的环境中的值。

oozie-log4j

更改 Oozie 的 oozie-log4j.properties 文件中的值。

oozie-site

更改 Oozie 的 oozie-site.xml 文件中的值。

phoenix-hbase-metrics

更改 Phoenix 的 hadoop-metrics2-hbase.properties 文件中的值。

phoenix-hbase-site

更改 Phoenix 的 hbase-site.xml 文件中的值。

phoenix-log4j

更改 Phoenix 的 log4j.properties 文件中的值。

phoenix-metrics

更改 Phoenix 的 hadoop-metrics2-phoenix.properties 文件中的值。

pig-env

更改 Pig 环境中的值。

pig-properties

更改 Pig 的 pig.properties 文件中的值。

pig-log4j

更改 Pig 的 log4j.properties 文件中的值。

presto-log

更改 Presto 的 log.properties 文件中的值。

presto-config

更改 Presto 的 config.properties 文件中的值。

presto-env

更改 Presto 的 presto-env.sh 文件中的值。

presto-node

更改 Presto 的 node.properties 文件中的值。

presto-connector-blackhole

更改 Presto 的 blackhole.properties 文件中的值。

presto-connector-cassandra

更改 Presto 的 cassandra.properties 文件中的值。

presto-connector-hive

更改 Presto 的 hive.properties 文件中的值。

presto-connector-jmx

更改 Presto 的 jmx.properties 文件中的值。

presto-connector-kafka

更改 Presto 的 kafka.properties 文件中的值。

presto-connector-localfile

更改 Presto 的 localfile.properties 文件中的值。

presto-connector-mongodb

更改 Presto 的 mongodb.properties 文件中的值。

presto-connector-mysql

更改 Presto 的 mysql.properties 文件中的值。

presto-connector-postgresql

更改 Presto 的 postgresql.properties 文件中的值。

presto-connector-raptor

更改 Presto 的 raptor.properties 文件中的值。

presto-connector-redis

更改 Presto 的 redis.properties 文件中的值。

presto-connector-redshift

更改 Presto 的 redshift.properties 文件中的值。

presto-connector-tpch

更改 Presto 的 tpch.properties 文件中的值。

spark

适用于 Apache Spark 的 Amazon EMR 辅助设置。

spark-defaults

更改 Spark 的 spark-defaults.conf 文件中的值。

spark-env

更改 Spark 环境中的值。

spark-hive-site

更改 Spark 的 hive-site.xml 文件中的值

spark-log4j

更改 Spark 的 log4j.properties 文件中的值。

spark-metrics

更改 Spark 的 metrics.properties 文件中的值。

sqoop-env

更改 Sqoop 的环境中的值。

sqoop-oraoop-site

更改 Sqoop OraOop 的 oraoop-site.xml 文件中的值。

sqoop-site

更改 Sqoop 的 sqoop-site.xml 文件中的值。

tez-site

更改 Tez 的 tez-site.xml 文件中的值。

yarn-env

更改 YARN 环境中的值。

yarn-site

更改 YARN 的 yarn-site.xml 文件中的值。

zeppelin-env

更改 Zeppelin 环境中的值。

zookeeper-config

更改 ZooKeeper 的 zoo.cfg 文件中的值。

zookeeper-log4j

更改 ZooKeeper 的 log4j.properties 文件中的值。

5.13.0

5.13.0 应用程序版本

此版本支持以下应用程序:FlinkGangliaHadoopHBaseHCatalogHiveHueLivyMahoutMXNetOoziePhoenixPigPrestoSparkSqoopTezZeppelinZooKeeper

下图描述了此版本的 Amazon EMR 中提供的应用程序版本以及前四个 Amazon EMR 版本中的应用程序版本。

有关每个版本的 Amazon EMR 的应用程序版本的全面历史记录,请参见下面的示意图:

5.13.0 发行说明

以下发行说明包括 Amazon EMR 发行版 5.13.0 的信息。更改与版本 5.12.0 相关。

升级

  • 已将 Spark 升级到 2.3.0

  • 已将 HBase 升级到 1.4.2

  • 已将 Presto 升级到 0.194

  • 已将 AWS Java 开发工具包升级到 1.11.297

更改、增强和解决的问题

  • Hive

    • 已逆向移植 HIVE-15436。增强了 Hive API 以仅返回视图。

已知问题

  • MXNet 当前没有 OpenCV 库。

5.13.0 组件版本

下面列出了Amazon EMR 随此版本一起安装的组件。一些组件作为大数据应用程序包的一部分安装。其他组件是 Amazon EMR 独有的,并且已为系统流程和功能安装这些组件。它们通常以 emraws 开头。最新的 Amazon EMR 版本中的大数据应用程序包通常是在社区中找到的最新版本。我们尽快在 Amazon EMR 中提供社区版本。

一些组件需要来自 Amazon EMR 的社区版本的更改。这些组件具有以下形式的 CommunityVersion-amzn-EmrVersion 的版本标签。例如,如果已对名为 myapp-component 的版本 2.2 的大数据社区组件进行三次修改以包含在不同的 Amazon EMR 发行版中,则其发行版将列出为 2.2-amzn-3

组件 版本 描述
aws-sagemaker-spark-sdk 1.0.1 Amazon SageMaker Spark 开发工具包
emr-ddb 4.5.0 适用于 Hadoop 生态系统应用程序的 Amazon DynamoDB 连接器。
emr-goodies 2.4.0 适用于 Hadoop 生态系统的方便易用的库。
emr-kinesis 3.4.0 适用于 Hadoop 生态系统应用程序的 Amazon Kinesis 连接器。
emr-s3-dist-cp 2.10.0 针对 Amazon S3 优化的分布式复制应用程序。
emrfs 2.22.0 适用于 Hadoop 生态系统应用程序的 Amazon S3 连接器。
flink-client 1.4.0 Apache Flink 命令行客户端脚本和应用程序。
ganglia-monitor 3.7.2 适用于 Hadoop 生态系统应用程序的嵌入式 Ganglia 代理以及 Ganglia 监控代理。
ganglia-metadata-collector 3.7.2 用于从 Ganglia 监控代理中聚合指标的 Ganglia 元数据收集器。
ganglia-web 3.7.1 用于查看由 Ganglia 元数据收集器收集的指标的 Web 应用程序。
hadoop-client 2.8.3-amzn-0 Hadoop 命令行客户端,如“hdfs”、“hadoop”或“yarn”。
hadoop-hdfs-datanode 2.8.3-amzn-0 用于存储数据块的 HDFS 节点级服务。
hadoop-hdfs-library 2.8.3-amzn-0 HDFS 命令行客户端和库
hadoop-hdfs-namenode 2.8.3-amzn-0 用于跟踪文件名和数据块位置的 HDFS 服务。
hadoop-httpfs-server 2.8.3-amzn-0 用于 HDFS 操作的 HTTP 终端节点。
hadoop-kms-server 2.8.3-amzn-0 基于 Hadoop 的 KeyProvider API 的加密密钥管理服务器。
hadoop-mapred 2.8.3-amzn-0 用于运行 MapReduce 应用程序的 MapReduce 执行引擎库。
hadoop-yarn-nodemanager 2.8.3-amzn-0 用于管理单个节点上的容器的 YARN 服务。
hadoop-yarn-resourcemanager 2.8.3-amzn-0 用于分配和管理群集资源与分布式应用程序的 YARN 服务。
hadoop-yarn-timeline-server 2.8.3-amzn-0 用于检索 YARN 应用程序的当前信息和历史信息的服务。
hbase-hmaster 1.4.2 适用于负责协调区域和执行管理命令的 HBase 群集的服务。
hbase-region-server 1.4.2 用于服务于一个或多个 HBase 区域的服务。
hbase-client 1.4.2 HBase 命令行客户端。
hbase-rest-server 1.4.2 用于向 HBase 提供 RESTful HTTP 终端节点的服务。
hbase-thrift-server 1.4.2 用于向 HBase 提供 Thrift 终端节点的服务。
hcatalog-client 2.3.2-amzn-2 用于操作 hcatalog-server 的“hcat”命令行客户端。
hcatalog-server 2.3.2-amzn-2 用于为分布式应用程序提供 HCatalog、表和存储管理层的服务。
hcatalog-webhcat-server 2.3.2-amzn-2 用于向 HCatalog 提供 REST 接口的 HTTP 终端节点。
hive-client 2.3.2-amzn-2 Hive 命令行客户端。
hive-hbase 2.3.2-amzn-2 Hive-hbase 客户端。
hive-metastore-server 2.3.2-amzn-2 用于访问 Hive 元存储 (一个用于存储 Hadoop 操作中的 SQL 的元数据的语义存储库) 的服务。
hive-server2 2.3.2-amzn-2 用于将 Hive 查询作为 Web 请求接受的服务。
hue-server 4.1.0 用于使用 Hadoop 生态系统应用程序分析数据的 Web 应用程序
livy-server 0.4.0-incubating 用于与 Apache Spark 交互的 REST 接口
mahout-client 0.13.0 用于机器学习的库。
mxnet 1.0.0 用于深度学习的灵活的、可扩展且高效的库。
mysql-server 5.5.54+ MySQL 数据库服务器。
nvidia-cuda 9.1.85 Nvidia 驱动程序和 Cuda 工具包
oozie-client 4.3.0 Oozie 命令行客户端。
oozie-server 4.3.0 用于接受 Oozie 工作流请求的服务。
phoenix-library 4.13.0-HBase-1.4 服务器和客户端的 phoenix 库
phoenix-query-server 4.13.0-HBase-1.4 向 Avatica API 提供 JDBC 访问权限以及协议缓冲区和 JSON 格式访问权限的轻量级服务器
presto-coordinator 0.194 用于在 presto-worker 之中接受查询并管理查询的服务。
presto-worker 0.194 用于执行查询的各个部分的服务。
pig-client 0.17.0 Pig 命令行客户端。
r 3.4.1 用于统计计算的 R 项目
spark-client 2.3.0 Spark 命令行客户端。
spark-history-server 2.3.0 用于查看完整的 Spark 应用程序的生命周期的已记录事件的 Web UI。
spark-on-yarn 2.3.0 适用于 YARN 的内存中执行引擎。
spark-yarn-slave 2.3.0 YARN 从属项所需的 Apache Spark 库。
sqoop-client 1.4.6 Apache Sqoop 命令行客户端。
tez-on-yarn 0.8.4 tez YARN 应用程序和库。
webserver 2.4.25+ Apache HTTP 服务器。
zeppelin-server 0.7.3 支持交互式数据分析的基于 Web 的笔记本电脑。
zookeeper-server 3.4.10 用于维护配置信息、命名、提供分布式同步以及提供组服务的集中式服务。
zookeeper-client 3.4.10 ZooKeeper 命令行客户端。

5.13.0 配置分类

配置分类使您能够自定义应用程序。这些分类通常对应于应用程序的配置 XML 文件,例如 hive-site.xml。有关更多信息,请参阅 配置应用程序

emr-5.13.0 分类

分类 说明

capacity-scheduler

更改 Hadoop 的 capacity-scheduler.xml 文件中的值。

core-site

更改 Hadoop 的 core-site.xml 文件中的值。

emrfs-site

更改 EMRFS 设置。

flink-conf

更改 flink-conf.yaml 设置。

flink-log4j

更改 Flink log4j.properties 设置。

flink-log4j-yarn-session

更改 Flink log4j-yarn-session.properties 设置。

flink-log4j-cli

更改 Flink log4j-cli.properties 设置。

hadoop-env

更改适用于所有 Hadoop 组件的 Hadoop 环境中的值。

hadoop-log4j

更改 Hadoop 的 log4j.properties 文件中的值。

hadoop-ssl-server

更改 hadoop ssl 服务器配置

hadoop-ssl-client

更改 hadoop ssl 客户端配置

hbase

适用于 Apache HBase 的 Amazon EMR 辅助设置。

hbase-env

更改 HBase 环境中的值。

hbase-log4j

更改 HBase 的 hbase-log4j.properties 文件中的值。

hbase-metrics

更改 HBase 的 hadoop-metrics2-hbase.properties 文件中的值。

hbase-policy

更改 HBase 的 hbase-policy.xml 文件中的值。

hbase-site

更改 HBase 的 hbase-site.xml 文件中的值。

hdfs-encryption-zones

配置 HDFS 加密区域。

hdfs-site

更改 HDFS 的 hdfs-site.xml 中的值。

hcatalog-env

更改 HCatalog 的环境中的值。

hcatalog-server-jndi

更改 HCatalog 的 jndi.properties 中的值。

hcatalog-server-proto-hive-site

更改 HCatalog 的 proto-hive-site.xml 中的值。

hcatalog-webhcat-env

更改 HCatalog WebHCat 的环境中的值。

hcatalog-webhcat-log4j2

更改 HCatalog WebHCat 的 log4j2.properties 中的值。

hcatalog-webhcat-site

更改 HCatalog WebHCat 的 webhcat-site.xml 文件中的值。

hive-beeline-log4j2

更改 Hive 的 beeline-log4j2.properties 文件中的值。

hive-parquet-logging

更改 Hive parquet-logging.properties 文件中的值。

hive-env

更改 Hive 环境中的值。

hive-exec-log4j2

更改 Hive 的 hive-exec-log4j2.properties 文件中的值。

hive-llap-daemon-log4j2

更改 Hive 的 llap-daemon-log4j2.properties 文件中的值。

hive-log4j2

更改 Hive 的 hive-log4j2.properties 文件中的值。

hive-site

更改 Hive 的 hive-site.xml 文件中的值

hiveserver2-site

更改 Hive Server2 的 hiveserver2-site.xml 文件中的值

hue-ini

更改 Hue 的 ini 文件中的值

httpfs-env

更改 HTTPFS 环境中的值。

httpfs-site

更改 Hadoop 的 httpfs-site.xml 文件中的值。

hadoop-kms-acls

更改 Hadoop 的 kms-acls.xml 文件中的值。

hadoop-kms-env

更改 Hadoop KMS 环境中的值。

hadoop-kms-log4j

更改 Hadoop 的 kms-log4j.properties 文件中的值。

hadoop-kms-site

更改 Hadoop 的 kms-site.xml 文件中的值。

livy-conf

更改 Livy 的 livy.conf 文件中的值。

livy-env

更改 Livy 环境中的值。

livy-log4j

更改 Livy log4j.properties 设置。

mapred-env

更改 MapReduce 应用程序的环境中的值。

mapred-site

更改 MapReduce 应用程序的 mapred-site.xml 文件中的值。

oozie-env

更改 Oozie 的环境中的值。

oozie-log4j

更改 Oozie 的 oozie-log4j.properties 文件中的值。

oozie-site

更改 Oozie 的 oozie-site.xml 文件中的值。

phoenix-hbase-metrics

更改 Phoenix 的 hadoop-metrics2-hbase.properties 文件中的值。

phoenix-hbase-site

更改 Phoenix 的 hbase-site.xml 文件中的值。

phoenix-log4j

更改 Phoenix 的 log4j.properties 文件中的值。

phoenix-metrics

更改 Phoenix 的 hadoop-metrics2-phoenix.properties 文件中的值。

pig-env

更改 Pig 环境中的值。

pig-properties

更改 Pig 的 pig.properties 文件中的值。

pig-log4j

更改 Pig 的 log4j.properties 文件中的值。

presto-log

更改 Presto 的 log.properties 文件中的值。

presto-config

更改 Presto 的 config.properties 文件中的值。

presto-env

更改 Presto 的 presto-env.sh 文件中的值。

presto-node

更改 Presto 的 node.properties 文件中的值。

presto-connector-blackhole

更改 Presto 的 blackhole.properties 文件中的值。

presto-connector-cassandra

更改 Presto 的 cassandra.properties 文件中的值。

presto-connector-hive

更改 Presto 的 hive.properties 文件中的值。

presto-connector-jmx

更改 Presto 的 jmx.properties 文件中的值。

presto-connector-kafka

更改 Presto 的 kafka.properties 文件中的值。

presto-connector-localfile

更改 Presto 的 localfile.properties 文件中的值。

presto-connector-mongodb

更改 Presto 的 mongodb.properties 文件中的值。

presto-connector-mysql

更改 Presto 的 mysql.properties 文件中的值。

presto-connector-postgresql

更改 Presto 的 postgresql.properties 文件中的值。

presto-connector-raptor

更改 Presto 的 raptor.properties 文件中的值。

presto-connector-redis

更改 Presto 的 redis.properties 文件中的值。

presto-connector-redshift

更改 Presto 的 redshift.properties 文件中的值。

presto-connector-tpch

更改 Presto 的 tpch.properties 文件中的值。

spark

适用于 Apache Spark 的 Amazon EMR 辅助设置。

spark-defaults

更改 Spark 的 spark-defaults.conf 文件中的值。

spark-env

更改 Spark 环境中的值。