sshログインするとき、ssh_configにHostを設定して便利な使い方をしますが、EC2インスタンスのIPが変わる度に修正しないといけなかったりして、ちょいと手間が発生したりします。
ec2sshはその手間を解消してくれる便利Gemでした。
READMEの記述通りに作業して、さくっとインストール&初期化
$ gem install ec2ssh $ rbenv rehash $ ec2ssh init
何故か忘れやすいrehash
。
rbenvを使っていたのですが、rehashを忘れたままec2ssh
コマンドを叩いて怒られました。
rbenv-gem-rehashを使ってしまえば解消されるんですけどね…。
参考:Ruby - rbenv を使っているなら rbenv-gem-rehash を使おう - Qiita
initした段階で.ec2ssh
というファイルが作成されます。
この中でAWSのキーなどを指定しています。
デフォルトでは環境変数として指定されているので、環境変数に必要なものをexportします。
ここまで出来ればあとはコマンド1つ叩くだけ。
$ ec2ssh update
これで.sshディレクトリ配下のconfigファイルの中に、EC2上にあるインスタンスのHostを設定してくれます。
IPが変わった場合もec2ssh update
を叩くだけで更新してくれるので、書き換える手間もなし。便利。