コツコツといろいろ作ってます。
mirakuiさんのAmazon EC2インスタンスに簡単にSSHできるようになるツールec2sshを公開しましたに触発されて、Nameタグをホスト名としてひとしきりのサーバにsshしてhostsを更新するツールを書きました。だいぶ時間差だけどね!
ec2_update_hosts
https://bitbucket.org/netmarkjp/ec2_update_hosts
使い方は簡単。
REGION, AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY を設定して実行すると、各ホストのプライベートIPにsshしてhostsを書き換えます。
INSTANCE IDまたはTAGのNAMEの値でローカルIPが解決できるようになります。
(NAMEタグが空の場合はインスタンスIDのみ定義)
PRIVATE_IP INSTANCE_ID TAG_NAME_VALUE #generated PRIVATE_IP INSTANCE_ID #generated
動作としては #generated
って書いてある行を全削除して、生成したものをすべて追記します。
実装はfabricなので、 -P
オプションで並列実行もラクチン!
hg clone https://bitbucket.org/netmarkjp/ec2_update_hosts cd ec2_update_hosts pip install -r requirements.txt vim ec2_update_hosts.py # REGION, AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY を設定 fab -f ec2_update_hosts.py distribute
boto + fabric素晴らしい。ご活用ください。