ec2sshを試してみた
結論
チョー便利。
大まかには作者のブログに乗ってるんですが一部訂正が必要だったので。
http://blog.mirakui.com/entry/20101205/1291551625
概要
中身はgemのライブラリです。
sshでec2に接続する時は
~/.ssh/config
を設定して
ssh app1
とかでつなぐと思いますが。
ec2はstopするとipが変わって一々書き換えるのが面倒くさい。 それを
ec2ssh init
ec2ssh update
の二回だけで全部のconfigを作ってくれる。
initは最初だけだから実質 「ec2に繋がらんな」と思ったら updateするだけで済む。
まじで便利。 これは色々流用出来そう。
導入
インストール
gem install ec2ssh
以上。 自分はbundler使ってる。
環境変数を設定
export AMAZON_ACCESS_KEY_ID="..." export AMAZON_SECRET_ACCESS_KEY="..."
イニシャライズ
ec2ssh init
bundlerだったら
bundle exec ec2ssh init
設定読み込み
ec2ssh update
元記事だとこれで行けるんだけど。
Set aws keys at ~/.ec2ssh
と出る。
何か設定ファイルが必要みたいだから開いてみると。
vim ~/.ec2ssh
--- path: ~/.ssh/config aws_keys: default: access_key_id: secret_access_key: regions: - ap-northeast-1
yamlファイルだった。
アクセスキーと シークレットキーをセットして。
ec2ssh update
キター
という事で
export AMAZON_ACCESS_KEY_ID="..." export AMAZON_SECRET_ACCESS_KEY="..."
これは不要みたい。
作者のgithubを読んだらちゃんと変わってた。
configに書き込まれたログがダーっと流れて。 configに書き込まれたと思います。
configが上書きされるので 心配な人は念のためバックアップ取っておいた方が良いと思います。 configを入力補完させれば完璧。
ちゃんとec2インスタンスに解りやすい名前を付けようと思った次第です。 これからは
- インスタンスstop or start
- ec2ssh update
これで完璧。
デプロイとかに流用出来そう。
他にも
configに設定する
- IdentityFile
- user
とかも指定出来るから
作者のgithubを見てみると良い。