Lazuli

らずり

EC2-Connect というツールを作った

はじめに

少々煩わしさを軽減させる EC2-Connect というツールを作った。

app2641/EC2-Connect

名前の通り、EC2 への接続を多少助けるツールになっている。
EC2 でスケールアウトとか使い出すとインスタンスがバンバン立ち上がって、不具合とか起きたインスタンスにログインするのにマネージメントコンソールいってー該当のインスタンス探して―ホスト名こぴっってーとかしなくちゃいけない。しんどい。
そもそも純正のマネージメントコンソールが使いにくいことこの上ないので壊滅的にあかん。

そういう背景を背負って作られた。

使い方

設定の仕方は適当に README 見るとよい。
こうやって使う。

立ち上がっているインスタンスのリストを表示する場合。

$ EC2-Connect
0:  running  WebServiceApp  
1:  running  DatabaseApp  
2:  terminated  ScaleOutApp  
3:  running  ScaleOutApp  
4:  stopped  TestServer  
5:  terminated

running とか terminated とかステータスも見れる。
右にあるのが名前ね。空白のやつは Name タグ付けられてないから見れないやつ。

EC2-Connect 0

ってやったあと Ctrl + v すると、

$ ssh ec2-user@ec2-xxx-xx-xx-xx.ap-northeast-1.compute.amazonaws.com -i /Users/hoge/.ssh/a_1.pem

ってなる。
指定した番号のインスタンスへログインするコマンドがクリップボードにコピーされる。
コピーじゃなくて SSH 接続したかったんだけど俺のスキルでは無理であった。
どうやってやんの?

番号じゃなくてもインスタンスの名前でも出来る。

$ EC2-Connect WebServiceApp

そういうわけで、多少煩わしさが軽減出来るツールとなっているのがお分かり頂けたはずだ。
俺のような弱小 AWS ユーザはたかだか 10 インスタンスも立ち上げれば大変な事態なのでヘビーユーザーの人々がインスタンスを何百とか立ち上げてる状況で使ったらどうなるか知らん。
うまく動くと良いと思いつつ、ここで筆を置く。