Secure Shell (SSH) は、安全でないネットワークでリモートログオン操作を安全に実行し、コマンドを実行するために使用されるネットワークプロトコルです。 オンプレミスのマシンがSSHモードでクラスターのマスターノードに接続された後、Linuxコマンドを実行してクラスターを監視し、クラスターと対話できます。 SSHトンネルを作成して、webブラウザを使用してオープンソースコンポーネントのweb UIにアクセスすることもできます。 このトピックでは、SSHキーペアまたはパスワードを使用してE-MapReduce (EMR) クラスターにログインする方法について説明します。 EMRクラスターには、LinuxまたはWindowsオペレーティングシステムを実行するオンプレミスマシンからログインできます。
前提条件
ECS上のEMRページにクラスターが作成されます。 詳細については、「クラスターの作成」をご参照ください。
オンプレミスマシンは、クラスターのマスターノードに接続されています。 クラスターの作成中に [パブリックIPアドレスの割り当て] をオンにして、EIP (elastic IP Address) をクラスターに関連付けることができます。 クラスターの作成後、Elastic Compute Service (ECS) コンソールで、クラスターのマスターノードに固定パブリックIPアドレスまたはEIPアドレスを割り当てることもできます。 詳細については、「ENIのバインド」をご参照ください。
クラスターが属するセキュリティグループに対してポート22が有効になっています。
クラスターのマスターノードにログインします。
SSHキーペアを使用してクラスターにログインする
マスターノードのパブリックIPアドレスを取得する方法については、「マスターノードのパブリックIPアドレスと名前を取得する方法」をご参照ください。
次のいずれかの方法を使用して、クラスターにログインします。
Linuxオペレーティングシステムを実行しているオンプレミスマシンからログオンする
この例では、秘密鍵ファイルecs.pemが使用されます。
次のコマンドを実行して、秘密鍵ファイルの属性を変更します。
chmod 400 ~/.ssh/ecs.pem
~/.ssh/ecs.pem
は、ecs.pemファイルがオンプレミスマシンに保存されているパスです。次のコマンドを実行して、マスターノードに接続します。
ssh -i ~/.ssh/ecs.pem emr-user @ <マスターノードのパブリックIPアドレス>
PuTTYを使用して、Windowsオペレーティングシステムを実行しているオンプレミスマシンからログオンする
クラスターにログインするには、次の手順を実行します。
PuTTYとPuTTYgenをダウンロードします。
秘密鍵ファイルの形式をから変換します。にpem。ppk
PuTTYgenを実行します。 この例では、PuTTYgen 0.73が使用されます。
[操作] セクションで、[読み込み] をクリックして、クラスター作成時に保存される秘密鍵ファイルをインポートします。
インポートするファイルの形式がAll files (*.*) であることを確認してください。
特定のを選択します。pemファイルをクリックし、[開く] をクリックします。
[秘密鍵の保存] をクリックします。
表示されるダイアログボックスで、[はい] をクリックします。 の名前を指定します。ppkファイルをクリックし、[保存] をクリックします。
保存します。オンプレミスマシンへのppkファイル。 この例では、kp-123.ppkが使用されます。
PuTTY を起動します。
左側のナビゲーションウィンドウで、
を選択します。 [認証用秘密鍵ファイル] の下の [参照] をクリックし、ppkファイル。[セッション] をクリックします。 [ホスト名 (またはIPアドレス)] フィールドに、ログオンアカウントとマスターノードのパブリックIPアドレスを入力します。
形式はemr-user @ [マスターノードのパブリックIPアドレス] で、emr-user@10.10.** などです。
[開く] をクリックします。
コマンドプロンプトを使用して、Windowsオペレーティングシステムを実行しているオンプレミスマシンからログオンする
コマンドプロンプトを開き、次のコマンドを実行してクラスターにログインします。
ssh -i <のストレージパス。オンプレミスマシン上のpemファイル> emr-user @ <マスターノードのパブリックIPアドレス>
SSHパスワードを使用してクラスターにログインする
次の操作で使用されるユーザー名とパスワードは、クラスター作成時に指定したルートユーザーとパスワードです。 マスターノードのパブリックIPアドレスを取得する方法については、「マスターノードのパブリックIPアドレスと名前を取得する方法」をご参照ください。
手順:
Linuxオペレーティングシステムを実行しているオンプレミスマシンからログオンする
オンプレミスマシンのコマンドラインインターフェイス (CLI) で次のコマンドを実行して、マスターノードに接続します。
ssh root @ [マスターノードのパブリックIPアドレス]
Windowsオペレーティングシステムを実行しているオンプレミスマシンからログオンする
PuTTYをダウンロードしてインストールします。
ダウンロードリンク: PuTTY。
PuTTY を起動します。
Linuxインスタンスへの接続に必要なパラメーターを設定します。
ホスト名 (またはIPアドレス): インスタンスの固定パブリックIPアドレスまたはインスタンスに関連付けられているEIPアドレスを指定します。
ポート: ポート番号22を入力します。
接続タイプ: [SSH] を選択します。
保存セッション: オプション。 セッションの識別に役立つ名前を入力し、[保存] をクリックしてセッションを保存します。 これにより、インスタンスに再度接続するときに、パブリックIPアドレスなどのセッション情報を入力する必要がなくなります。
[開く] をクリックします。
ユーザー名を指定してEnterキーを押します。 デフォルトのユーザー名は root です。
パスワードを入力すると、パスワードの文字が非表示になります。 パスワードを入力したら、enterキーを押します。
クラスターの他のノードにログインする
方法1: パスワードなしのログオン
コアノードまたはタスクノードにログインするには、次の操作を実行します。
DataLakeクラスター、Dataflowクラスター、OLAPクラスター、DataServingクラスター、またはカスタムクラスター
クラスターのマスターノードにログインします。 詳細については、「クラスターのマスターノードへのログイン」をご参照ください。
マスターノードで、次のコマンドを実行してemr-userユーザーに切り替えます。
su emr-user
コアノードまたはタスクノードにパスワードフリーモードでログインします。
sshコア-1-1
その他のクラスター
クラスターのマスターノードにログインします。 詳細については、「クラスターのマスターノードへのログイン」をご参照ください。
マスターノードで、次のコマンドを実行してhadoopユーザーに切り替えます。
su hadoop
コアノードまたはタスクノードにパスワードフリーモードでログインします。
ssh emr-worker-1
方法2: ECSインスタンスへの接続
[ノード] タブに移動します。
EMRコンソールにログインします。 左側のナビゲーションウィンドウで、ECSのEMRをクリックします。
上部のナビゲーションバーで、クラスターが存在するリージョンを選択し、ビジネス要件に基づいてリソースグループを選択します。
[ECSのEMR] ページで、スケールアウトするクラスターを見つけ、[操作] 列の [ノード] をクリックします。
[ノード] タブで目的のノードを見つけ、ノードIDをクリックしてECSコンソールにリダイレクトします。
[インスタンス] ページで、目的のインスタンスを選択し、[インスタンスパスワードのリセット] をクリックします。 詳細については、「インスタンスのログインパスワードのリセット」をご参照ください。
重要デフォルトでは、コアノードとタスクノードにログインパスワードは指定されていません。 パスワードを使用してコアノードまたはタスクノードにログインする場合は、ECSコンソールでインスタンスのログインパスワードを変更します。
ECSインスタンスに接続する適切なツールを選択します。 詳細については、「接続方法」をご参照ください。
参考資料
オープンソースのコンポーネントのweb UIにアクセスするためのSSHトンネルを作成できます。 詳細については、「オープンソースコンポーネントのweb UIにアクセスするためのSSHトンネルの作成」をご参照ください。