EMR クラスタにデプロイされたオープンソースコンポーネントの Web UI には、EMR コンソールのクラスタの [アクセスリンクとポート] タブからアクセスできます。このトピックでは、EMR クラスタにデプロイされたオープンソースコンポーネントの Web UI にアクセスするためのセキュリティグループルールとアクセスリンクを設定する方法について説明します。
オープンソースコンポーネントの Web UI にアクセスするために使用できるメソッドについては、「オープンソースコンポーネントの Web UI にアクセスする」をご参照ください。
前提条件
EMR クラスタが作成されていること。詳細については、「クラスタを作成する」をご参照ください。
[アクセスリンクとポート] タブに移動する
[アクセスリンクとポート] タブでは、オープンソースコンポーネントと、対応する Web UI へのアクセスに使用されるアドレスを表示できます。
EMR コンソール にログインします。左側のナビゲーションウィンドウで、[EMR on ECS] をクリックします。
上部のナビゲーションバーで、ビジネス要件に基づいて リージョンとリソースグループを選択します。
目的のクラスタを見つけ、[クラスタ ID/名前] 列でクラスタの名前をクリックします。
クラスタの詳細ページで、[アクセスリンクとポート] タブをクリックします。
ネイティブ UI アドレスを使用してオープンソースコンポーネントの Web UI にアクセスする
オープンソースコンポーネントの Web UI にアクセスできるポートを有効にし、そのポートをセキュリティグループに追加するだけで済みます。このようにして、対応するネイティブ UI アドレスを使用して、オープンソースコンポーネントの Web UI に直接アクセスできます。この方法は操作が簡単です。ただし、オープンソースコンポーネントの Web UI にアクセスできるポートを有効にする必要があります。
1. ポートを有効にする
使用するクライアントと EMR クラスタ内のノードが同じ内部ネットワーク環境にあることを確認してください。
ポートを有効にするには、使用するクライアントの IP アドレスとオープンソースコンポーネントのポートを EMR クラスタのセキュリティグループルールに追加します。
[基本情報] タブに移動します。
基本情報タブの [セキュリティ] セクションで、[クラスタセキュリティグループ] の右側のリンクをクリックして、Elastic Compute Service (ECS) コンソールの [セキュリティグループの詳細] タブに移動します。
[セキュリティグループの詳細] タブの [受信] サブタブで、[ルールの追加] をクリックします。次に、必須パラメータを設定し、その他のパラメータのデフォルト値を保持します。次の表にパラメータを示します。
パラメータ
説明
例
ポート範囲
オープンソースコンポーネントの Web UI がアクセスされるポート。
たとえば、YARN の Web UI にアクセスするには、[ポート範囲] 列に
8088/8088と入力します。他のオープンソースコンポーネントのポートの詳細については、「オープンソースコンポーネントの Web UI にアクセスする」をご参照ください。承認オブジェクト
クライアントの内部 IP アドレス。
クライアントの内部 IP アドレスを入力します。使用するクライアントと EMR クラスタ内のノードが同じ内部ネットワーク環境にあることを確認してください。
説明パラメータの詳細については、「セキュリティグループルール」をご参照ください。
2. ネイティブ UI アドレスを使用してオープンソースコンポーネントの Web UI にアクセスする
[アクセスリンクとポート] タブで、目的のオープンソースコンポーネントの [ネイティブ UI アドレス] をコピーします。
クライアントでブラウザを開き、コピーしたネイティブ UI アドレスにアクセスします。クライアントが Linux オペレーティングシステムを実行している場合は、
curl -L http://IP アドレス:ポート/コマンドを実行して、ネイティブ UI アドレスを使用してオープンソースコンポーネントの Web UI にアクセスできるかどうかを確認します。
内部または外部 Knox プロキシアドレスを使用してオープンソースコンポーネントの Web UI にアクセスする
オープンソースコンポーネントの Web UI に内部または外部 Knox プロキシアドレスを使用してアクセスするには、ポート 8443 を有効にし、[ユーザー] タブで追加したユーザー名を使用して身元認証を実行します。このメソッドは 1 つのポートのみを必要とし、身元認証に基づいて高いセキュリティを確保しますが、複雑な操作が必要になります。
この方法を使用して、次のオープンソースコンポーネントの Web UI にアクセスできます: YARN、HDFS、Spark 2、Spark 3、Flink、HBase、Impala、Trino、Presto、Tez、Ranger。
1. Knox を追加する
EMR クラスタに Knox がデプロイされていない場合は、次の手順を実行して Knox を追加します。
[サービス] タブに移動します。
[サービス] タブで、[サービスの追加] をクリックします。[サービスの追加] パネルで、KNOX と OpenLDAP を選択し、[OK] をクリックします。
サービスが追加されたら、[アクセスリンクとポート] タブをクリックします。[アクセスリンクとポート] タブで、Knox プロキシアドレスを表示できます。
2. (オプション) ECS インスタンスに EIP を関連付ける
内部 Knox プロキシアドレスのみを使用してオープンソースコンポーネントの Web UI にアクセスする場合、または Elastic IP Address (EIP) が目的の ECS インスタンスに関連付けられている場合は、この手順をスキップします。
[ノード] タブをクリックします。
[ノード] タブで、emr-master ノードグループを見つけ、
アイコンをクリックし、次に master-1-1 ノードの ID をクリックします。[インスタンスの詳細] タブの 構成情報 セクションで、[パブリック IP アドレス] を見つけ、[EIP の関連付け] をクリックして EIP を ECS インスタンスに関連付けます。詳細については、「EIP」をご参照ください。
EMR コンソールのクラスタ詳細ページの右上隅にある [すべての操作] をクリックし、[クラスタ操作] セクションの [ホスト情報の同期] をクリックします。
[アクセスリンクとポート] タブで、パブリック Konx プロキシアドレスを表示します。
3. ポート 8443 を有効にする
ポート 8443 を EMR クラスタのセキュリティグループに追加します。詳細については、このトピックの ポートを有効にする をご参照ください。次の表に主要なパラメータを示します。
パラメータ | 説明 | 例 |
ポート範囲 | Knox のポート。 |
|
承認オブジェクト | クライアントの内部 IP アドレス。 |
|
4. ユーザーを追加する
[ユーザー] タブで追加したユーザーのユーザー名とパスワードは、オープンソースコンポーネントの Web UI にアクセスするために必要です。ユーザーを追加する方法については、「OpenLDAP ユーザーを管理する」をご参照ください。
5. 内部または外部 Knox プロキシアドレスを使用してオープンソースコンポーネントの Web UI にアクセスする
[アクセスリンクとポート] タブに移動します。
パブリック Knox プロキシ アドレス: 目的のオープンソース コンポーネントの [パブリック Knox プロキシ アドレス] をクリックします。表示されるページで、ユーザー名とパスワードを入力します。
内部 Knox プロキシ アドレス: 目的のオープン ソース コンポーネントの [内部 Knox プロキシ アドレス] をクリックします。表示されるページで、ユーザー名とパスワードを入力します。クライアントが Linux オペレーティング システムを実行している場合は、
curl -k -u username:password https://Internal IP address:8443/gateway/cluster-topo/xxコマンドを実行して、Web UI にアクセスできるかどうかを確認できます。
特別なオープンソースコンポーネントの Web UI にアクセスする
Ranger の Web UI にアクセスする
Ranger がクラスタにデプロイされた後、デフォルトのユーザー名とパスワードを使用して Ranger の Web UI にアクセスできます。詳細については、「概要」をご参照ください。
データレイクシナリオ (DataLake クラスタ)
古いデータレイクシナリオ (Hadoop クラスタ)
デフォルトのユーザー名とパスワードは admin です。デフォルトのパスワードを忘れた場合は、「FAQ」を参照して問題を解決してください。
Flink の Web UI にアクセスする (EMR V3.29.0 より前のマイナーバージョン)
EMR V3.29.0 より前のマイナーバージョンでは、SSH トンネルを使用してのみ Flink の Web UI にアクセスできます。詳細については、「SSH トンネルを作成してオープンソースコンポーネントの Web UI にアクセスする」をご参照ください。
FAQ
[アクセス リンクとポート] タブをクリックした後、空白のページが表示されるのはなぜですか? タブをクリックした後、空白のページが表示されるのはなぜですか?
支払い遅延がないか確認してください。支払い遅延がある場合は、支払い遅延を解消し、しばらく待つ必要があります。
ネイティブ UI アドレスを使用してオープンソースコンポーネントの Web UI にアクセスできないのはなぜですか?
使用するクライアントと EMR クラスタ内のノードが同じ内部ネットワーク環境にあるかどうかを確認してください。
ログイン認証のユーザー名とパスワードは何ですか?
追加したユーザーと、そのユーザーに指定したパスワードを使用してログイン認証を実行します。ユーザーを追加する方法については、「OpenLDAP ユーザーを管理する」をご参照ください。
正しいユーザー名とパスワードを入力した後、ユーザー名とパスワードのページが再表示されるのはなぜですか?
[サービス] タブで、OpenLDAP を停止します。
master-1-1 ノードにログインします。
repair_ldap_service.sh スクリプトを master-1-1 ノードにコピーします。
ルートユーザーとして
bash repair_ldap_service.shスクリプトを実行します。EMR コンソールの OpenLDAP サービスページの右上隅で、 を選択します。
内部または外部 Knox プロキシアドレスを使用してオープンソースコンポーネントの Web UI にアクセスできない場合はどうすればよいですか?
前のステップに基づいて、ポート 8443 が有効になっているかどうかを確認します。
特定のオープンソースコンポーネントは Knox に適応していません。そのため、内部または外部 Knox プロキシアドレスを使用してこれらのオープンソースコンポーネントの Web UI にアクセスすることはできません。他の方法を使用して、これらのオープンソースコンポーネントの Web UI にアクセスできます。適応の問題は、次のオープンソースコンポーネントで発生します。
EMR V5.10.X から V5.12.X にデプロイされた HBase。
EMR V5.10.X から V5.14.X にデプロイされた Presto と Trino。
参照
サービス関連の問題については、「FAQ」をご参照ください。