Amazon EC2インスタンスのhostsを更新するツールec2_update_hostsを公開しました

コツコツといろいろ作ってます。

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素晴らしい。ご活用ください。


See also