接続する前に: インバウンドトラフィックを承認する
Amazon EMR クラスターに接続する前に、コンピュータの IP アドレスなどの、信頼できるクライアントからのインバウンド SSH トラフィック (ポート 22) を承認する必要があります。これを行うには、接続先のノードのマネージドセキュリティグループルールを編集します。たとえば、次の手順は、SSH アクセスのインバウンドルールをデフォルトの ElasticMapReduce-master セキュリティグループに追加する方法を示します。
Amazon EMR でセキュリティグループを使用する詳細については、「セキュリティグループを使用してネットワークトラフィックを制御する」を参照してください。
- New console
-
新しいコンソールを使用して、信頼できるソースにプライマリセキュリティグループへの SSH アクセス許可を付与するには
セキュリティグループを編集するには、クラスターが存在する VPC のセキュリティグループを管理する権限が必要です。詳細については、「IAM ユーザーガイド」の「IAM ユーザーのアクセス許可の変更」と、EC2 セキュリティグループを管理できるようにする「ポリシーの例」を参照してください。
-
AWS Management Consoleにサインインし、Amazon EMR コンソール (https://console.aws.amazon.com/emr
) を開きます。 -
左側のナビゲーションペインの [EMR on EC2] で [クラスター] を選択し、更新するクラスターを選択します。選択すると、クラスターの詳細ページが開きます。このページの [プロパティ] タブは事前に選択されます。
-
[プロパティ] タブの [ネットワーク] で、[EC2 セキュリティグループ (ファイアウォール)] の横にある矢印を選択してこのセクションを展開します。[プライマリノード] で、セキュリティグループリンクを選択します。これにより、EC2 コンソールが開きます。
-
[インバウンドルール] タブを選択してから、[インバウンドルールの編集] を選択します。
-
次の設定で、パブリックアクセスを許可するインバウンドルールを確認します。存在する場合は、[Delete] (削除) をクリックして削除します。
-
タイプ
SSH
-
ポート
22
-
ソース
Custom 0.0.0.0/0
警告
2020 年 12 月以前は、ElasticMapReduce-master セキュリティグループには、ポート 22 ですべての送信元からのインバウンドトラフィックを許可するルールが事前に設定されていました。このルールは、プライマリノードへの最初の SSH 接続を簡素化するために作成されたものです。このインバウンドルールを削除して、信頼できる送信元のみにトラフィックを制限することを強くお勧めします。
-
-
ルールのリストの下部までスクロールし、[Add Rule] (ルールの追加) を選択します。
-
[Type (タイプ)] で、[SSH] を選択します。SSH を選択すると、[プロトコル] に [TCP] が、[ポート範囲] に [22] が自動的に入力されます。
-
[source] (送信元) には、[My IP] (マイ IP) を選択して、IP アドレスを送信元アドレスとして自動的に追加します。[Custom] (カスタム) で信頼済みクライアントの IP アドレスの範囲を追加することも、他のクライアントに追加のルールを作成することもできます。多くのネットワーク環境では IP アドレスを動的に割り当てるため、将来的に信頼済みクライアントの IP アドレスを更新することが必要になる場合があります。
-
[Save (保存)] を選択します。
-
必要に応じてステップ 3 に戻り、[コアノードとタスクノード] を選択し、ステップ 4~8 を繰り返します。これにより、コアノードとタスクノードに SSH によるクライアントアクセス許可が付与されます。
-
- Old console
-
古いコンソールで信頼できるソースにプライマリセキュリティグループへの SSH アクセス許可を付与するには
セキュリティグループを編集するには、クラスターが存在する VPC のセキュリティグループを管理する権限が必要です。詳細については、「IAM ユーザーガイド」の「IAM ユーザーのアクセス許可の変更」と、EC2 セキュリティグループを管理できるようにする「ポリシーの例」を参照してください。
新しい Amazon EMR コンソールに移動し、サイドナビゲーションから [古いコンソールに切り替え] を選択します。古いコンソールに切り替えたときの動作の詳細については、「Using the old console」を参照してください。
[Clusters] を選択します。変更するクラスターの [Name] (名前) を選択します。
[Security and access] (セキュリティとアクセス) の下の [Security groups for Master] (マスターのセキュリティグループ) リンクを選択します。
リストから [ElasticMapReduce-master] を選択します。
[Inbound rules] (インバウンドルール) タブを選択し、[Edit inbound rules] (インバウンドルールの編集) を選択します。
次の設定で、パブリックアクセスを許可するインバウンドルールを確認します。存在する場合は、[Delete] (削除) をクリックして削除します。
-
タイプ
SSH
-
ポート
22
-
ソース
Custom 0.0.0.0/0
警告
2020 年 12 月以前は、ElasticMapReduce-master セキュリティグループには、ポート 22 ですべての送信元からのインバウンドトラフィックを許可するルールが事前に設定されていました。このルールは、プライマリノードへの最初の SSH 接続を簡素化するために作成されたものです。このインバウンドルールを削除して、信頼できる送信元のみにトラフィックを制限することを強くお勧めします。
-
ルールのリストの下部までスクロールし、[Add Rule] (ルールの追加) を選択します。
-
[Type (タイプ)] で、[SSH] を選択します。
SSH を選択すると、[Protocol] (プロトコル) に [TCP] が、[Port Range] (ポート範囲) に [22] が自動的に入力されます。
-
[source] (送信元) には、[My IP] (マイ IP) を選択して、IP アドレスを送信元アドレスとして自動的に追加します。[Custom] (カスタム) で信頼済みクライアントの IP アドレスの範囲を追加することも、他のクライアントに追加のルールを作成することもできます。多くのネットワーク環境では IP アドレスを動的に割り当てるため、将来的に信頼済みクライアントの IP アドレスを更新することが必要になる場合があります。
[Save (保存)] を選択します。
オプションで、[ElasticMapReduce-slave] をリストから選択し、上記の手順を繰り返して、コアノードとタスクノードへの SSH クライアントアクセスを許可します。