AmazonEC2でUbuntu8.10サーバーインスタンスをセットアップしました。サーバーにejabberdをインストールしましたが、インスタンスを再起動するたびにクラウド上のホスト名が変わるため、ejabberdノードを起動できないという問題が発生します。このリンクをたどった後 http://blog.kenweiner.com/2008/05/ejabberd-on-Amazon-ec2-ubuntu-AMI.html /etc/hostsファイルのホスト名を編集して追加します、 できます。残念ながら、サーバーを再起動するたびに、/ etc/hostsファイルがデフォルトにリセットされます。
どうすればこの問題を解決できますか?
これは、CanonicalによってビルドされたEC2用の現在のUbuntuイメージの既知の問題です。
https:// bugs.launchpad.net/ubuntu-on-ec2/+bug/371936
Canonicalからの次のリリースを待つか、http:// alestic.comで公開しているEC2用のUbuntuイメージを実行できます(同じ問題はありません)。
Alestic.comイメージでejabberdを正常に実行しました。
CloudInit を試して、インスタンスの起動中にホストファイルのクリーンアップを実行できます。これは、現在のすべての公式Ubuntu EC2イメージに含まれており、--user-data
のec2-run-instances
スイッチ(またはAWSコンソールウィザードのそれぞれの入力フィールド)によって渡される初期化スクリプトを実行できます。起動時に実行されます。 rc.local
のようなものです。
編集:最初は、他のコメントを書いたのはエリック自身だとは思いませんでした。彼のブログには、 前述のUserDataに関するもの など、役立つエントリがたくさんあります。
私はこれが非常に古いスレッドであることを知っていますが、1つはgglにポップアップします、はい、それはcloud-initです、私のdebianAMIにカスタムエントリを追加しました:
/etc/cloud/templates/hosts.debian.tmpl
それが次の自動再起動で機能するかどうかを確認しましょう
aws ec2 create-AMI ...