Amazon EMR
管理ガイド

インスタンスストレージ

インスタンスストア、EBS ボリュームストレージ、またはその両方が HDFS データに使用され、バッファ、キャッシュ、スクラッチデータ、および一部のアプリケーションがローカルファイルシステムに「こぼす」可能性があるその他の一時的なコンテンツにも使用されます。EMRFS により、Amazon S3 に保存される HDFS データに永続的な「真のソース」があることが確認できます。

Amazon EBS は、通常の Amazon EC2 インスタンスと、Amazon EMR 内での機能が異なります。EMR クラスターにアタッチされた Amazon EBS ボリュームはエフェメラルです。これらのボリュームは、クラスターとインスタンスが削除されると (たとえば、インスタンスグループを縮小する場合など) 削除されるため、データが永続するのを期待しないように注意することが重要です。データの存続は一時的ですが、クラスター内のノードの数と仕様によっては、HDFS 内のデータがレプリケートされることもあります。EBS ストレージボリュームを追加すると、これらは追加ボリュームとしてマウントされます。これらは起動ボリュームの一部ではありません。YARN は、すべての追加のボリュームを使用するように構成されますが、論理ストレージ (たとえばローカルログファイル) として追加のボリュームを割り当てる責任があります。

EMR クラスターで Amazon EBS を使用する場合は、次の点にも注意する必要があります。

  • EBS ボリュームのスナップショットを作成し、それを Amazon EMR 内で復元することはできません。再利用可能なカスタム設定を作成するには、カスタム AMI (Amazon EMR バージョン 5.7.0 以降で入手可能) を使用します。詳細については、「カスタム AMI の使用」を参照してください。

  • 暗号化された EBS ルートデバイスボリュームは、カスタム AMI を使用するときにのみサポートされます。詳細については、「暗号化された Amazon EBS ルートデバイスボリュームを使用したカスタム AMI の作成」を参照してください。暗号化された EBS ストレージボリュームはサポートされません。

  • Amazon EMR API を使用してタグを適用する場合は、それらのオペレーションが EBS ボリュームに適用されます。

  • インスタンスごとに 25 ボリュームという制限があります。

インスタンスのデフォルト EBS ストレージ

Amazon EMR では、Amazon EBS 汎用 SSD (gp2) 10 GB ボリュームを AMI のルートデバイスとして自動的にアタッチし、パフォーマンスを強化しています。さらに、EBS 専用のストレージを持つ EC2 インスタンスの場合、Amazon EMR は、EBS ストレージボリュームをそのインスタンスに割り当てます。Amazon EMR リリースバージョン 5.22.0 以降を使用してクラスターを作成する場合、デフォルトの EBS ストレージサイズは、インスタンスのサイズに基づいて増加します。さらに、増加したストレージを複数のボリュームに分割することで、IOPS のパフォーマンスだけでなく、一部の標準ワークロードのパフォーマンスも向上しました。別の EBS インスタンスストレージ設定を使用する場合は、EMR クラスターを作成する際、または既存のクラスターをノードに追加する際に指定することができます。EBS ストレージボリュームのデフォルト数、サイズ、およびインスタンスタイプごとの合計サイズについては、以下の表を参照してください。

EBS コストは、クラスターが実行されるリージョンで、gp2 ボリュームの月次 Amazon EBS 料金に基づき、時間ごとのコストが計算されます。たとえば、1 か月あたり 0.10 USD/GB が請求されるリージョンで、各クラスターノードのルートボリュームの 1 時間あたりの EBS コストは、1 時間あたり約 0.00139 USD (1 か月の 0.10 USD/GB を 30 日で割り、24 時間で割って 10 GB を掛ける) となります。

Amazon EMR 5.22.0 以降のデフォルトの EBS ストレージボリュームおよびインスタンスタイプ別のサイズ

インスタンスサイズ ボリューム数 ボリュームサイズ (GiB) 合計サイズ (GiB)

*.large

1

32

32

*.xlarge

2

32

64

*.2xlarge

4

32

128

*.4xlarge

4

64

256

*.8xlarge

4

128

512

*.9xlarge

4

144

576

*.10xlarge

4

160

640

*.12xlarge

4

192

768

*.16xlarge

4

256

1024

*.18xlarge

4

288

1152

*.24xlarge

4

384

1536

追加の EBS ストレージボリュームを設定する

Amazon EMR でインスタンスタイプを構成するとき、追加の EBS ボリュームを指定できます。これにより、インスタンスストア (存在する場合) とデフォルト EBS ボリュームを超えた容量を追加します。Amazon EBS のボリュームタイプには、汎用 (SSD)、プロビジョンド IOPS (SSD)、スループット最適化 (HDD)、コールド (HDD)、マグネティックがあります。これらはパフォーマンス特性と料金が異なるため、アプリケーションの分析ニーズとビジネスニーズに応じてストレージを調整できます。たとえば、ディスクに書き込む必要のあるアプリケーションや、メモリ内や Amazon S3 の使用で安全に動作するアプリケーションがあります。

EBS ボリュームをインスタンスにアタッチできるのは、クラスターの起動時のみです。ただし別のタスクノードインスタンスグループを追加した場合は、EBS ボリュームを追加できます。EMR クラスター内のインスタンスに障害が発生した場合は、インスタンスおよびアタッチされている EBS ボリュームの両方が、新しいものに置き換えられます。結果として、手動で EBS ボリュームをデタッチする場合、Amazon EMR はそれを失敗として扱い、インスタンスストレージ (該当する場合) とボリュームストアの両方を置き換えます。