管理人Kのひとりごと

デジモノレビューやプログラミングや写真など

プライベートサブネットに立てたEMRクラスタのGanglia等を表示したい(AWS,EMR)

プライベートサブネットに立てたEMRクラスタのGanglia等を表示したかったので試行錯誤したメモ。

手順は紹介されているけれど

EMRクラスタの性能情報や、Sparkジョブの状況などを調べるためのWebインターフェースの表示方法について、AWSのWebサイトに手順が紹介されていますが、パブリックサブネットにクラスタを立てていることが前提なのです。

プライベートサブネットにクラスタを立てた場合、上記手順ではダメで、一工夫が必要です。
今回は、FoxyProxy等、上記URLの設定を行った上で、プライベートサブネットに立てたEMRのWebインターフェースを自PCから表示可能とすることを目標とします。(EMRクラスタについては、22番ポートのみパブリックサブネットのEC2と通信可能)

確認環境

  • Windows10(1903)
  • Teraterm 4.97
  • EMR (emr-5.26.0)

確認構成

表示可能となった構成は以下の様な構成です。パブリックサブネットのEC2のみ、外部から接続可能なために段階で行きます。
①:パブリックサブネットのEC2→プライベートサブネットのEMRクラスタのポートフォワード設定
②:①のトンネルから、ダイナミックポートフォワーディングを用いて、EMRクラスタのWebインターフェースを表示

①MyPCのlocalhost:10022を、EMRクラスタ(192.168.2.221:22)に転送する設定を実施

localhost:10022を指定して、EMRクラスタに接続できることを確認


②上述のlocalhost:10022のコネクションに対し、ダイナミックポートフォワーディングを設定(localhost:8157)

ip-xxx...で始まるDNS名を用いて、Ganglia等が表示されることを確認(FoxyProxy等の設定は実施済みとする)