【AWS】EC2にWebベースで複数同時にssh接続できるオモシロアプリ「EC2Box」

2013.08.08

この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので、ご注意ください。

暑い日々で溶けそうなうえじゅんです。

今日は面白いアプリ「EC2Box」を紹介したいと思います。
タイトルにもあるようにWebベースで利用でき、複数のEC2に対して同時に操作が可能なアプリケーションです。
ではさっそく動かせるところまで進めて行きましょう。

だいたい10分もあれば試せるのでみなさんもぜひ実際に動かしてみてください。

インストール

インストールといってもダウンロードして解凍するだけですw
ダウンロード先はこちら

この記事を書いている時点での最新バージョンは「0.05.04」です。

必要な環境は以下になります。

  • Java JDK 1.6 以上
  • Maven 3 以上

また環境変数に以下を指定しておいてください。

  • export JAVA_HOME=/path/to/jdk
  • export PATH=$JAVA_HOME/bin:$PATH

 実行

用意ができたらさっそく実行してみましょう。

コード

$ ./startEC2Box.sh

ログがずらっと出力されますが、最終行に「oejs.AbstractConnector:Started SelectChannelConnector@127.0.0.1:8090」って出ていたら成功です。
実行も簡単ですね!

使ってみよう!

ブラウザから「http://127.0.0.1:8090/」にアクセスしてみると以下のようなログイン画面が表示されます。

EC2Box_-_Login

起動時は、以下の情報でログインできます。
Username: admin 
Password: changeme

ログインするとパスワード変更画面が開きます。
任意のパスワードに変更してしまいましょう。

EC2Box_-_Set_Admin_Password

パスワードを変更するとメインメニューが開きます。

EC2Box_-_Main_Menu

行う必要がある設定はあと2つです。
まずは、「Set AWS Credentials」を選択しましょう。

EC2Box_-_Set_Amazon_Credentials

AWSを利用するためには必ず必要なキー情報ですね。
ご自身のキー情報を登録してください。

登録すると次に「Set EC2 Keys」の画面に遷移します。

EC2Box_-_Manage_EC2_Keys_1

「Import Private Key」をクリックするとサブウィンドウが表示されます。

  • EC2 Reagion
    利用したいReagionを指定してください。
  • Key Name
    選択したReagionに紐付いたキーペアが表示されるので、sshで接続したいキーペアを指定します。
  • Private Key Value
    選択したKey Nameの中身を貼り付けてください。

登録するとこんな感じになります。
何個でも登録できるので、複数の管理も大丈夫ですね!

EC2Box_-_Manage_EC2_Keys_2

登録が完了したら、「Composite SSH Terminals」をクリックするとキーペアに紐付いたインスタンスが一覧に表示されます。
今回はブログ用のシンガポールにEC2を2台立ててみました。

EC2Box_-_Manage_Systems

2台ともチェックをつけて、「Create SSH Terminals」をクリックしましょう。

EC2Box_-_Composite_Terms_6

選択した2台が1画面に表示されていますね。
このアプリの面白いところは、全部のTerminalを同時に操作可能な点です。

EC2Box_-_Composite_Terms_1

ファイルアップロードにも対応しているのが便利ですね。
上部の「Upload & Push」をクリックすると以下のサブウィンドウが表示されます。

EC2Box_-_Composite_Terms_2

ファイルを選択して、配置したい場所も任意で指定できます。

EC2Box_-_Composite_Terms_3

各インスタンスにStatusが表示され「Success」と表示されればアップロード完了です。

EC2Box_-_Composite_Terms_4

ちゃんとアップロードされていることが確認できますね。

もう一つの機能として、「Composite Scripts」があります。

EC2Box_-_Manage_Scripts_2

「Add Script」をクリックします。

EC2Box_-_Manage_Scripts

特に意味はないですが、「tomcat」を入れるスクリプトを作ってみます。

EC2Box_-_Manage_Scripts_1

さっそく実行してみましょう。
実行はちょっとわかりにくいのですが、スクリプト名のリンクです。

EC2Box_-_Manage_Systems_1

実行したいインスタンスを選んで「Execute Script」をクリックします。

EC2Box_-_Composite_Terms_5

あっという間に「tomcat」のインストールが完了しました!

これは便利ですね。
簡単なものならわざわざ「chef」じゃなくてもこれでいいじゃんとすら思えます。

まとめ

いかがだったでしょうか。
興味を持った方はぜひ試してみてください。

バージョンが「0.05.04」なのでバグ等もあるかもしれませんが、お試しには十分遊べる感じです。
プロキシ経由の接続とかも対応してくれると嬉しいんですが。

vim等のエディタ操作も完全同期できますので、設定ファイル等を各インスタンスに書かなきゃいけない時もこれを使えば便利ですね!
個別部分はその端末だけを指定することもできるのでいろんなことに利用できますね。

それでは!