Amazon EMR リリース 5.14.0 - Amazon EMR

Amazon EMR リリース 5.14.0

アプリケーションバージョン

このリリースでは、次のアプリケーションがサポートされています: FlinkGangliaHBaseHCatalogHadoopHiveHueJupyterHubLivyMXNetMahoutOoziePhoenixPigPrestoSparkSqoopTezZeppelinZooKeeper

以下の表は、Amazon EMR のこのリリースで利用可能なアプリケーションバージョンと、前の 3 つの Amazon EMR リリース (該当する場合) で利用可能なアプリケーションバージョンを示しています。

Amazon EMR の各リリースのアプリケーションバージョンの包括的な履歴については、以下のトピックを参照してください。

アプリケーションバージョン情報
emr-5.14.0 emr-5.13.1 emr-5.13.0 emr-5.12.3
AWS SDK for Java 1.11.2971.11.2971.11.2971.11.267
Python 2.7、3.42.7、3.42.7、3.42.7、3.4
Scala 利用不可利用不可利用不可利用不可
Delta - - - -
Flink1.4.21.4.01.4.01.4.0
Ganglia3.7.23.7.23.7.23.7.2
HBase1.4.21.4.21.4.21.4.0
HCatalog2.3.22.3.22.3.22.3.2
Hadoop2.8.32.8.32.8.32.8.3
Hive2.3.22.3.22.3.22.3.2
Hudi - - - -
Hue4.1.04.1.04.1.04.1.0
Iceberg - - - -
JupyterEnterpriseGateway - - - -
JupyterHub0.8.1 - - -
Livy0.4.00.4.00.4.00.4.0
MXNet1.1.01.0.01.0.01.0.0
Mahout0.13.00.13.00.13.00.13.0
Oozie4.3.04.3.04.3.04.3.0
Phoenix4.13.04.13.04.13.04.13.0
Pig0.17.00.17.00.17.00.17.0
Presto0.1940.1940.1940.188
Spark2.3.02.3.02.3.02.2.1
Sqoop1.4.71.4.61.4.61.4.6
TensorFlow - - - -
Tez0.8.40.8.40.8.40.8.4
Trino (PrestoSQL) - - - -
Zeppelin0.7.30.7.30.7.30.7.3
ZooKeeper3.4.103.4.103.4.103.4.10

リリースノート

次のリリースノートには、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 を使用して Amazon S3 の場所に Parquet ファイルを書き込む場合、FileOutputCommitter アルゴリズムがバージョン 1 ではなくバージョン 2 を使用するように更新されました。これにより、名前変更の数が減り、アプリケーションのパフォーマンスが向上します。この変更は、以下には影響しません。

      • Spark 以外のアプリケーション。

      • HDFS などの他のファイルシステムに書き込むアプリケーション (FileOutputCommitter のバージョン 1 を引き続き使用している)。

      • テキストや csv など、EMRFS 直接書き込みを既に使用している、他の出力形式を使用するアプリケーション。

既知の問題
  • JupyterHub

    • クラスターの作成時に、構成分類を使用して JupyterHub および個々の Jupyter Notebook をセットアップすることは、サポートされていません。各ユーザーの 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/

      jupyter.log ファイルに tail を実行して、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
  • プライマリノードの再起動後またはインスタンスコントローラーの再起動後に、Amazon EMR バージョン 5.14.0、5.15.0、または 5.16.0 で、CloudWatch メトリクスが収集されず、自動スケーリング機能が使用できなくなります。この問題は、Amazon EMR 5.17.0 で修正されています。

コンポーネントのバージョン

このリリースで Amazon EMR がインストールするコンポーネントを以下に示します。そのうちいくつかは、ビッグデータアプリケーションパッケージの一部としてインストールされます。その他は Amazon EMR に固有であり、システムプロセスと機能に対してインストールされます。これらは通常、emr または aws で開始されます。通常、最新の Amazon EMR リリースのビッグデータアプリケーションパッケージは、コミュニティにある最新バージョンです。コミュニティリリースは、できるだけ早く Amazon EMR で入手可能になるようにしています。

Amazon EMR の一部のコンポーネントは、コミュニティバージョンとは異なります。これらのコンポーネントには、CommunityVersion-amzn-EmrVersion の形式のバージョンラベルがあります。EmrVersion は 0 から始まります。例えば、バージョン 2.2 の myapp-component というオープンソースコミュニティコンポーネントが、異なる Amazon EMR リリースに組み込むために 3 回変更された場合、そのリリースバージョンは 2.2-amzn-2 として表示されます。

コンポーネント バージョン 説明
aws-sagemaker-spark-sdk1.0.1Amazon SageMaker Spark SDK
emr-ddb4.5.0Hadoop エコシステムアプリケーション用の Amazon DynamoDB コネクター。
emr-goodies2.4.0Hadoop エコシステムに役立つ追加のライブラリ。
emr-kinesis3.4.0Hadoop エコシステムアプリケーション用の Amazon Kinesis コネクター。
emr-s3-dist-cp2.10.0Amazon S3 に最適化された分散コピーアプリケーション。
emrfs2.23.0Hadoop エコシステムアプリケーション用の Amazon S3 コネクタ。
flink-client1.4.2Apache Flink のコマンドラインクライアント スクリプトとアプリケーション。
ganglia-monitor3.7.2Ganglia モニタリングエージェントとともに埋め込まれた、Hadoop エコシステムアプリケーション用 Ganglia エージェント。
ganglia-metadata-collector3.7.2Ganglia モニタリングエージェントからメトリクスを集計する Ganglia メタデータコレクター。
ganglia-web3.7.1Ganglia メタデータコレクターによって収集されたメトリクスを表示するウェブアプリケーション。
hadoop-client2.8.3-amzn-1'hdfs'、'hadoop'、'yarn' などの Hadoop コマンドラインクライアント。
hadoop-hdfs-datanode2.8.3-amzn-1ブロックを保存する HDFS ノードレベルのサービス。
hadoop-hdfs-library2.8.3-amzn-1HDFS コマンドラインクライアントとライブラリ
hadoop-hdfs-namenode2.8.3-amzn-1ファイル名を追跡し、場所をブロックする HDFS サービス。
hadoop-httpfs-server2.8.3-amzn-1HDFS オペレーションの HTTP エンドポイント。
hadoop-kms-server2.8.3-amzn-1Hadoop の KeyProvider API に基づく暗号キー管理サーバー。
hadoop-mapred2.8.3-amzn-1MapReduce アプリケーションを実行する MapReduce 実行エンジンライブラリ。
hadoop-yarn-nodemanager2.8.3-amzn-1個別のノードでコンテナを管理する YARN サービス。
hadoop-yarn-resourcemanager2.8.3-amzn-1クラスターリソースおよび分散アプリケーションを割り当て、管理する YARN サービス。
hadoop-yarn-timeline-server2.8.3-amzn-1YARN アプリケーションの現在の情報と履歴情報を取得するためのサービス。
hbase-hmaster1.4.2リージョンの調整および管理コマンドの実行を行う HBase クラスター用のサービス。
hbase-region-server1.4.21 つ以上の HBase リージョンに対応するサービス。
hbase-client1.4.2HBase コマンドラインクライアント。
hbase-rest-server1.4.2HBase の RESTful HTTP エンドポイントを提供するサービス。
hbase-thrift-server1.4.2HBase に Thrift エンドポイントを提供するサービス。
hcatalog-client2.3.2-amzn-2hcatalog-server を操作するための 'hcat' コマンドラインクライアント。
hcatalog-server2.3.2-amzn-2分散アプリケーション用のテーブルおよびストレージ管理レイヤーである HCatalog を提供するサービス。
hcatalog-webhcat-server2.3.2-amzn-2HCatalog に REST インターフェイスを提供する HTTP エンドポイント。
hive-client2.3.2-amzn-2Hive コマンドラインクライアント。
hive-hbase2.3.2-amzn-2Hive-hbase クライアント。
hive-metastore-server2.3.2-amzn-2Hadoop オペレーションの SQL 用のメタデータを保存するセマンティックレポジトリである Hive メタストアにアクセスするためのサービス。
hive-server22.3.2-amzn-2Hive クエリをウェブリクエストとして受け入れるサービス。
hue-server4.1.0Hadoop エコシステムアプリケーションを使用してデータを分析するウェブアプリケーション
jupyterhub0.8.1Jupyter Notebook のマルチユーザーサーバー
livy-server0.4.0-incubatingApache Spark を操作するための REST インターフェイス
mahout-client0.13.0機械学習用のライブラリ。
mxnet1.1.0フレキシブルかつスケーラブルで、ディープラーニングにおいて効率的なライブラリです。
mysql-server5.5.54+MySQL データベースサーバー。
nvidia-cuda9.1.85Nvidia ドライバーと Cuda ツールキット
oozie-client4.3.0Oozie コマンドラインクライアント。
oozie-server4.3.0Oozie ワークフローリクエストを受け入れるサービス。
opencv3.4.0オープンソースのコンピュータビジョンライブラリ。
phoenix-library4.13.0-HBase-1.4サーバーとクライアントの Phoenix ライブラリ
phoenix-query-server4.13.0-HBase-1.4JDBC のアクセス、プロトコルのバッファ、および Avatica API への JSON 形式のアクセスを提供するし軽量サーバー
presto-coordinator0.194presto-worker 間でクエリを受け入れ、クエリの実行を管理するサービス。
presto-worker0.194いくつかのクエリを実行するサービス。
pig-client0.17.0Pig コマンドラインクライアント。
r3.4.1統計的コンピューティング用 R プロジェクト
spark-client2.3.0Spark コマンドラインクライアント。
spark-history-server2.3.0完了した Spark アプリケーションの有効期間にログに記録されたイベントを表示するウェブ UI。
spark-on-yarn2.3.0YARN のメモリ内実行エンジン。
spark-yarn-slave2.3.0YARN スレーブで必要な Apache Spark ライブラリ。
sqoop-client1.4.7Apache Sqoop コマンドラインクライアント。
tez-on-yarn0.8.4tez YARN アプリケーションおよびライブラリ。
webserver2.4.25+Apache HTTP サーバー。
zeppelin-server0.7.3インタラクティブなデータ分析を可能にするウェブベースのノートブック。
zookeeper-server3.4.10設定情報を維持し、名前を付け、分散化された同期を提供し、グループサービスを提供する一元化されたサービス。
zookeeper-client3.4.10ZooKeeper コマンドラインクライアント。

設定分類

設定分類を使用すると、アプリケーションをカスタマイズできます。これらは多くの場合、hive-site.xml などのアプリケーションの構成 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-curated 設定。

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 の musql.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 の tpcj.properties ファイルの値を変更します。

spark

Apache Spark 用の Amazon EMR-curated 設定。

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 ファイルの値を変更します。