Amazon EMR を使用して VPC にクラスターを起動する - Amazon EMR

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

Amazon EMR を使用して VPC にクラスターを起動する

Amazon EMR クラスターをホストするように設定されたサブネットが作成されたら、クラスターの作成時に関連するサブネット ID を指定して、そのサブネットでクラスターを起動します。

注記

Amazon EMR は、リリースバージョン 4.2 以降のプライベートサブネットをサポートします。

クラスターが起動された場合、Amazon EMR はクラスターが VPC プライベートサブネットまたはパブリックサブネット内で起動しているかどうかに基づいて、セキュリティグループを追加します。すべてのセキュリティグループでは、Amazon EMR サービスとの通信にポート 8443 での受信を許可しますが、IP アドレスの範囲はパブリックサブネットとプライベートサブネットで異なります。Amazon EMR はこれらのセキュリティグループをすべて管理し、時間の経過とともに AWS 範囲に IP アドレスを追加する必要がある場合があります。詳細については、「Amazon EMR クラスターのセキュリティグループを使用してネットワークトラフィックを制御する」を参照してください。

VPC 上のクラスターを管理するために、Amazon EMR はネットワークデバイスをプライマリノードにアタッチし、このデバイスを通じて管理を行います。このデバイスは、Amazon EC2 API アクション DescribeInstances を使用して確認できます。このデバイスをいずれかの方法で変更すると、クラスターに障害が発生する可能性があります。

Console
コンソールを使用して VPC 内でクラスターを起動するには
  1. にサインインし AWS Management Console、https://console.aws.amazon.com/emr で Amazon EMR コンソールを開きます。

  2. 左側のナビゲーションペインの [EMR on EC2] で、[クラスター] を選択し、[クラスターの作成] を選択します

  3. [ネットワーク][仮想プライベートクラウド (VPC)] フィールドに移動します。VPC の名前を入力するか、[参照] を選択して VPC を選択します。または [VPC の作成] を選択して、クラスターに使用できる VPC を作成します。

  4. クラスターに適用するその他のオプションを選択します。

  5. クラスターを起動するには、[クラスターの作成] を選択します。

AWS CLI
を使用して VPC でクラスターを起動するには AWS CLI
注記

AWS CLI では、NAT インスタンスを自動的に作成してプライベートサブネットに接続する方法はありません。ただし、サブネットで S3 エンドポイントを作成するには、Amazon VPC CLI コマンドを使用できます。コンソールを使用して NAT インスタンスを作成し、プライベートサブネットでクラスターを起動します。

VPC の設定が完了したら、create-cluster サブコマンドと --ec2-attributes パラメータを使用して、VPC 内で Amazon EMR クラスターを起動できます。クラスターに VPC サブネットを指定するには、--ec2-attributes パラメータを使用します。

  • 特定のサブネットにクラスターを作成するには、次のコマンドを入力し、myKey を Amazon EC2 キーペアの名前に置き換え、77XXXX03 をサブネット ID に置き換えます。

    aws emr create-cluster --name "Test cluster" --release-label emr-4.2.0 --applications Name=Hadoop Name=Hive Name=Pig --use-default-roles --ec2-attributes KeyName=myKey,SubnetId=subnet-77XXXX03 --instance-type m5.xlarge --instance-count 3

    --instance-groups パラメータを使用せずにインスタンス数を指定すると、1 つのプライマリノードが起動され、残りのインスタンスはコアノードとして起動されます。すべてのノードで、コマンドで指定したインスタンスタイプが使用されます。

    注記

    以前にデフォルトの Amazon EMR サービスロールと EC2 インスタンスプロファイルを作成していない場合は、「aws emr create-default-roles」と入力してそれらを作成してから、create-cluster サブコマンドを入力します。

EC2 上の EMR クラスターで使用可能な IP アドレスを確認する

起動時に十分な空き IP アドレスを持つサブネットが利用可能であることを確認するために、EC2 サブネットの選択は IP の可用性をチェックします。作成プロセスでは、必要な数の IP アドレスを持つサブネットを使用して、必要に応じてコアノード、プライマリノード、タスクノードを起動します。これは、最初の作成時であっても、クラスターのコアノードのみが作成されます。EMR は、作成時にプライマリノードとタスクノードを起動するために必要な IP アドレスの数と、コアノードを起動するために必要な IP アドレスの数を個別に計算します。必要なプライマリインスタンスとタスクインスタンスまたはノードの最小数は、Amazon EMR によって自動的に決定されます。

重要

VPC に、必須ノードに対応するのに十分な IP を持つサブネットがない場合、エラーが返され、クラスターは作成されません。

ほとんどのデプロイケースでは、コアノード、プライマリノード、タスクノードの起動ごとに時間差があります。さらに、複数のクラスターがサブネットを共有することもできます。このような場合、IP アドレスの可用性は変動し、例えば後続のタスクノード起動は、使用可能な IP アドレスによって制限される可能性があります。