Amazon EMR マネージドセキュリティグループでの作業 - Amazon EMR

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

Amazon EMR マネージドセキュリティグループでの作業

注記

Amazon EMR では、「マスター」や「スレーブ」などの不快感を与える可能性のある、あるいは包括的でない業界用語の代わりに、包括的な用語を使用することを目指しています。より包括的なエクスペリエンスを促進し、サービスコンポーネントを理解しやすくするために、新しい用語に移行しました。

ここでは、「ノード」をインスタンスとして説明し、Amazon EMR インスタンスタイプをプライマリインスタンス、コアインスタンス、タスクインスタンスとして記述します。移行中は、Amazon EMR のセキュリティグループに関連する用語など、従来の古い用語への参照が残っている場合があります。

プライマリインスタンスと、クラスター内のコアインスタンスおよびタスクインスタンスには、異なるマネージドセキュリティグループが関連付けられています。サービスへのアクセスの追加マネージドセキュリティグループは、プライベートサブネットにクラスターを作成する場合に必要です。ネットワーク設定に関するマネージドセキュリティグループの役割の詳細については、「Amazon VPC オプション」を参照してください。

クラスターのマネージドセキュリティグループを指定する場合は、すべてのマネージドセキュリティグループに対して、デフォルトまたはカスタムの同じタイプのセキュリティグループを使用する必要があります。例えば、プライマリインスタンスにカスタムセキュリティグループを指定して、コアインスタンスとタスクインスタンスにカスタムセキュリティグループを指定しないということはできません。

デフォルトのマネージドセキュリティグループを使用する場合、クラスターの作成時にそれらを指定する必要はありません。Amazon EMR では、デフォルトが自動的に使用されます。さらに、クラスターの VPC にデフォルトがまだ存在しない場合、Amazon EMR によって作成されます。Amazon EMR は、明示的に指定した場合やまだ存在しない場合にもそれらを作成します。

クラスターの作成後にマネージドセキュリティグループでルールを編集できます。新しいクラスターを作成するときは、Amazon EMR によって指定したマネージドセキュリティグループのルールがチェックされ、以前追加された可能性があるルールに加えて、新しいクラスターに必要な不足しているインバウンドルールが作成されます。特に明記しない限り、デフォルトの Amazon EMR マネージドセキュリティグループ用の各ルールも、指定したカスタム Amazon EMR マネージドセキュリティグループに追加されます。

デフォルトのマネージドセキュリティグループは次のとおりです。

プライマリインスタンスの Amazon EMR マネージドセキュリティグループ (パブリックサブネット)

パブリックサブネットのプライマリインスタンスのデフォルトのマネージドセキュリティグループのグループ名ElasticMapReduce-プライマリ です。これには、以下のルールが含まれています。カスタムマネージドセキュリティグループを指定すると、Amazon EMR によってすべての同じルールがカスタムセキュリティグループに追加されます。

タイプ プロトコル ポート範囲 ソース 詳細
インバウンドルール
すべての ICMP-IPv4 すべて 該当なし プライマリインスタンスのマネージドセキュリティグループのグループ ID。言い換えると、ルールが表示される同じセキュリティグループです。

反射的なルールにより、指定されたセキュリティグループに関連付けられた任意のインスタンスからのインバウンドトラフィックが許可されます。複数のクラスターに対してデフォルトの ElasticMapReduce-primary を使用することにより、クラスターのコアノードとタスクノードは、どの ICMP、TCP、UDP ポートでも相互に通信できます。カスタムのマネージドセキュリティグループを指定して、クラスター間のアクセスを制限します。

すべての TCP TCP すべて
すべての UDP UDP すべて
すべての ICMP-IPV4 すべて 該当なし コアノードとタスクノードに指定されたマネージドセキュリティグループのグループ ID。

これらのルールでは、インスタンスが異なるクラスターにある場合でも、すべてのインバウンド ICMP トラフィックと、指定されたセキュリティグループに関連付けられたすべてのコアインスタンスとタスクインスタンスからの TCP、UDP ポート経由のトラフィックが許可されます。

すべての TCP TCP すべて
すべての UDP UDP すべて
カスタム TCP 8443 さまざまな Amazon IP アドレス範囲 これらのルールにより、クラスターマネージャーはプライマリノードと通信できます。
コンソールを使用して、信頼できるソースにプライマリセキュリティグループへの SSH アクセスを許可するには

セキュリティグループを編集するには、クラスターが存在する VPC のセキュリティグループを管理する権限が必要です。詳細については、「IAM ユーザーガイド」の「IAM ユーザーのアクセス許可の変更」と、EC2 セキュリティグループを管理できるようにする「ポリシーの例」を参照してください。

  1. にサインインし AWS Management Console、https://console.aws.amazon.com/emr で Amazon EMR コンソールを開きます。

  2. [Clusters] を選択します。変更するクラスターの ID を選択します。

  3. ネットワークとセキュリティペインで、EC2 セキュリティグループ (ファイアウォール) ドロップダウンを展開します。

  4. プライマリノード で、セキュリティグループを選択します。

  5. [Edit inbound rules] (インバウンドルールの編集) を選択します。

  6. 次の設定で、パブリックアクセスを許可するインバウンドルールを確認します。存在する場合は、[Delete] (削除) をクリックして削除します。

    • タイプ

      SSH

    • [ポート]

      22

    • ソース

      Custom 0.0.0.0/0

    警告

    2020 年 12 月以前は、すべてのソースからのインバウンドトラフィックをポート 22 で許可する事前設定されたルールがありました。このルールは、プライマリノードへの最初の SSH 接続を簡素化するために作成されたものです。このインバウンドルールを削除して、信頼できる送信元のみにトラフィックを制限することを強くお勧めします。

  7. ルールのリストの下部までスクロールし、[Add Rule] (ルールの追加) を選択します。

  8. [Type (タイプ)] で、[SSH] を選択します。

    SSH を選択すると、[Protocol] (プロトコル) に [TCP] が、[Port Range] (ポート範囲) に [22] が自動的に入力されます。

  9. [source] (送信元) には、[My IP] (マイ IP) を選択して、IP アドレスを送信元アドレスとして自動的に追加します。[Custom] (カスタム) で信頼済みクライアントの IP アドレスの範囲を追加することも、他のクライアントに追加のルールを作成することもできます。多くのネットワーク環境では IP アドレスを動的に割り当てるため、将来的に信頼済みクライアントの IP アドレスを更新することが必要になる場合があります。

  10. [保存] を選択します。

  11. 必要に応じて、ネットワークとセキュリティペインの Core ノードとタスクノードで他のセキュリティグループを選択し、上記のステップを繰り返して、SSH クライアントがコアノードとタスクノードにアクセスできるようにします。

コアインスタンスとタスクインスタンスの Amazon EMR マネージドセキュリティグループ (パブリックサブネット)

パブリックサブネットのコアインスタンスとタスクインスタンスのデフォルトのマネージドセキュリティグループのグループ名ElasticMapReduce-core です。デフォルトのマネージドセキュリティグループには次のルールがあり、カスタムマネージドセキュリティグループを指定すると、Amazon EMR により同じルールが追加されます。

タイプ プロトコル ポート範囲 ソース 詳細
インバウンドルール
すべての ICMP-IPV4 すべて 該当なし コアインスタンスとタスクインスタンスのマネージドセキュリティグループのグループ ID。言い換えると、ルールが表示される同じセキュリティグループです。

反射的なルールにより、指定されたセキュリティグループに関連付けられた任意のインスタンスからのインバウンドトラフィックが許可されます。複数のクラスターに対してデフォルトの ElasticMapReduce-core を使用することにより、クラスターのコアインスタンスとタスクインスタンスは、どの ICMP、TCP、UDP ポートでも相互に通信できます。カスタムのマネージドセキュリティグループを指定して、クラスター間のアクセスを制限します。

すべての TCP TCP すべて
すべての UDP UDP すべて
すべての ICMP-IPV4 すべて 該当なし プライマリインスタンスのマネージドセキュリティグループのグループ ID。

これらのルールでは、インスタンスが異なるクラスターにある場合でも、すべてのインバウンド ICMP トラフィックと、指定されたセキュリティグループに関連付けられたすべてのプライマリインスタンスからの TCP または UDP ポート経由のトラフィックが許可されます。

すべての TCP TCP すべて
すべての UDP UDP すべて

プライマリインスタンスの Amazon EMR マネージドセキュリティグループ (プライベートサブネット)

プライベートサブネットのプライマリインスタンスのデフォルトのマネージドセキュリティグループには、グループ名 ElasticMapReduce-Primary-Private があります。デフォルトのマネージドセキュリティグループには次のルールがあり、カスタムマネージドセキュリティグループを指定すると、Amazon EMR により同じルールが追加されます。

タイプ プロトコル ポート範囲 ソース 詳細
インバウンドルール
すべての ICMP-IPv4 すべて 該当なし プライマリインスタンスのマネージドセキュリティグループのグループ ID。言い換えると、ルールが表示される同じセキュリティグループです。

反射的なルールにより、指定されたセキュリティグループに関連付けられた任意のインスタンスからのインバウンドトラフィックが許可され、プライベートサブネット内からアクセス可能です。複数のクラスターに対してデフォルトの ElasticMapReduce-Primary-Private を使用することにより、クラスターのコアノードとタスクノードは、どの ICMP、TCP、UDP ポートでも相互に通信できます。カスタムのマネージドセキュリティグループを指定して、クラスター間のアクセスを制限します。

すべての TCP TCP すべて
すべての UDP UDP すべて
すべての ICMP-IPV4 すべて 該当なし コアノードとタスクノードのマネージドセキュリティグループのグループ ID。

これらのルールでは、インスタンスが異なるクラスターにある場合でも、すべてのインバウンド ICMP トラフィックと、指定されたセキュリティグループに関連付けられたすべてのコアインスタンスとタスクインスタンスからの TCP、UDP ポート経由のトラフィックが許可され、プライベートサブネット内からアクセス可能です。

すべての TCP TCP すべて
すべての UDP UDP すべて
HTTPS (8443) TCP 8443 プライベートサブネット内のサービスアクセスのマネージドセキュリティグループのグループ ID。 このルールにより、クラスターマネージャーはプライマリノードと通信できます。
アウトバウンドルール
すべてのトラフィック すべて すべて 0.0.0.0/0 インターネットへのアウトバウンドアクセスを提供する。
カスタム TCP TCP 9443 プライベートサブネット内のサービスアクセスのマネージドセキュリティグループのグループ ID。

上記の「すべてのトラフィック」のデフォルトのアウトバウンドルールを削除した場合、このルールが Amazon EMR 5.30.0 以降の最小要件になります。

注記

カスタムマネージドセキュリティグループを使用する場合、Amazon EMR はこのルールを追加しません。

カスタム TCP TCP 80 (http) または 443 (https) プライベートサブネット内のサービスアクセスのマネージドセキュリティグループのグループ ID。

上記の「すべてのトラフィック」のデフォルトのアウトバウンドルールを削除した場合、このルールが Amazon EMR 5.30.0 以降で HTTPS 経由で Amazon S3 に接続するための最小要件になります。

注記

カスタムマネージドセキュリティグループを使用する場合、Amazon EMR はこのルールを追加しません。

コアインスタンスとタスクインスタンスの Amazon EMR マネージドセキュリティグループ (プライベートサブネット)

プライベートサブネットのコアインスタンスとタスクインスタンスのデフォルトのマネージドセキュリティグループのグループ名ElasticMapReduce-Core-Private です。デフォルトのマネージドセキュリティグループには次のルールがあり、カスタムマネージドセキュリティグループを指定すると、Amazon EMR により同じルールが追加されます。

タイプ プロトコル ポート範囲 ソース 詳細
インバウンドルール
すべての ICMP-IPV4 すべて 該当なし コアインスタンスとタスクインスタンスのマネージドセキュリティグループのグループ ID。言い換えると、ルールが表示される同じセキュリティグループです。

反射的なルールにより、指定されたセキュリティグループに関連付けられた任意のインスタンスからのインバウンドトラフィックが許可されます。複数のクラスターに対してデフォルトの ElasticMapReduce-core を使用することにより、クラスターのコアインスタンスとタスクインスタンスは、どの ICMP、TCP、UDP ポートでも相互に通信できます。カスタムのマネージドセキュリティグループを指定して、クラスター間のアクセスを制限します。

すべての TCP TCP すべて
すべての UDP UDP すべて
すべての ICMP-IPV4 すべて 該当なし プライマリインスタンスのマネージドセキュリティグループのグループ ID。

これらのルールでは、インスタンスが異なるクラスターにある場合でも、すべてのインバウンド ICMP トラフィックと、指定されたセキュリティグループに関連付けられたすべてのプライマリインスタンスからの TCP または UDP ポート経由のトラフィックが許可されます。

すべての TCP TCP すべて
すべての UDP UDP すべて
HTTPS (8443) TCP 8443 プライベートサブネット内のサービスアクセスのマネージドセキュリティグループのグループ ID。 このルールにより、クラスターマネージャはコアノードおよびタスクノードと通信できます。
アウトバウンドルール
すべてのトラフィック すべて すべて 0.0.0.0/0 以下の「アウトバウンドルールの編集」を参照してください。
カスタム TCP TCP 80 (http) または 443 (https) プライベートサブネット内のサービスアクセスのマネージドセキュリティグループのグループ ID。

上記の「すべてのトラフィック」のデフォルトのアウトバウンドルールを削除した場合、このルールが Amazon EMR 5.30.0 以降で HTTPS 経由で Amazon S3 に接続するための最小要件になります。

注記

カスタムマネージドセキュリティグループを使用する場合、Amazon EMR はこのルールを追加しません。

アウトバウンドルールの編集

デフォルトでは、Amazon EMR は、すべてのプロトコルとポートですべてのアウトバウンドトラフィックを許可するアウトバウンドルールを使用して、このセキュリティグループを作成します。Amazon EMR クラスターで実行できるさまざまな Amazon EMR およびカスタマーアプリケーションには、異なる送信ルールが必要になる場合があるため、すべてのアウトバウンドトラフィックの許可が選択されています。Amazon EMR は、デフォルトのセキュリティグループを作成するときに、これらの特定の設定を予測できません。セキュリティグループの送信の範囲を制限して、ユースケースとセキュリティポリシーに合ったルールだけを含めることができます。少なくとも、このセキュリティグループには次のアウトバウンドルールが必要ですが、一部のアプリケーションでは追加の送信ルールが必要になる場合があります。

タイプ プロトコル ポート範囲 デスティネーション 詳細
すべての TCP TCP すべて pl-xxxxxxxx マネージド Amazon S3 プレフィクスリスト com.amazonaws.MyRegion.s3
すべてのトラフィック すべて すべて sg-xxxxxxxxxxxxxxxxx ElasticMapReduce-Core-Private セキュリティグループの ID。
すべてのトラフィック すべて すべて sg-xxxxxxxxxxxxxxxxx ElasticMapReduce-Primary-Private セキュリティグループの ID。
カスタム TCP TCP 9443 sg-xxxxxxxxxxxxxxxxx ElasticMapReduce-ServiceAccess セキュリティグループの ID。

サービスアクセスの Amazon EMR マネージドセキュリティグループ (プライベートサブネット)

プライベートサブネットのサービスアクセスのデフォルトのマネージドセキュリティグループのグループ名ElasticMapReduce-ServiceAccess です。インバウンドルールと、プライベートサブネット内の他のマネージドセキュリティグループへの HTTPS (ポート 8443、ポート 9443) 経由のトラフィックを許可するアウトバウンドルールがあります。これらのルールにより、クラスターマネージャーはプライマリノードとも、コアノードおよびタスクノードとも通信できます。カスタムセキュリティグループを使用している場合は、同じルールが必要です。

タイプ プロトコル ポート範囲 ソース 詳細
インバウンドルール (Amazon EMR リリース 5.30.0 以降の Amazon EMR クラスターに必要)
カスタム TCP TCP 9443 プライマリインスタンスのマネージドセキュリティグループのグループ ID。

このルールにより、プライマリインスタンスのセキュリティグループとサービスアクセスセキュリティグループの間で通信が可能になります。

アウトバウンドルール (すべての Amazon EMR クラスターに必要)
カスタム TCP TCP 8443 プライマリインスタンスのマネージドセキュリティグループのグループ ID。

これらのルールにより、クラスターマネージャーはプライマリノードとも、コアノードおよびタスクノードとも通信できます。

カスタム TCP TCP 8443 コアインスタンスとタスクインスタンスのマネージドセキュリティグループのグループ ID。

これらのルールにより、クラスターマネージャーはプライマリノードとも、コアノードおよびタスクノードとも通信できます。