Craftworks Tech Blog - Branch このページをアンテナに追加 RSSフィード Twitter

2010-07-17

動的に変わる EC2 のインスタンスの IP アドレスを自動収集するスクリプト書いた

| 17:18 | 動的に変わる EC2 のインスタンスの IP アドレスを自動収集するスクリプト書いたを含むブックマーク 動的に変わる EC2 のインスタンスの IP アドレスを自動収集するスクリプト書いたのブックマークコメント

EC2 は便利なのですが、プライベート IP アドレスが変更されない保証が無いので、/etc/hosts に他のインスタンスのアドレスを書いておいても、ある日変わっている可能性があります。

そこで、ec2-api-tools の ec2-describe-instances でサーバーインスタンス一覧が取得できることを利用して、各サーバーの hostname 情報から、/etc/hosts を自動生成するスクリプトを書きました。

http://gist.github.com/479339

大まかな流れは以下です。

  1. ec2-describe-instances でインスタンス一覧取得
  2. インスタンスの名前解決して IP アドレス取得
  3. ssh で繋ぎに行って hostname コマンドの結果を取得
  4. /etc/hosts の内容を生成

ひとつのサーバー上で cron でこのスクリプトを走らせて、その他のサーバーrsync などで配布すると良いと思います。

トラックバック - http://d.hatena.ne.jp/Craftworks/20100717/1279354708