web-dev-qa-db-ja.com

chef-soloで作成したknifeec2サーバーからパブリックインスタンスアドレスを取得する方法

どういうわけかknife ec2 create ...からパブリックインスタンスのアドレスまたはホスト名を取得したいのですが、そのためのメカニズムが見つかりません。

現在chef-soloを使用しているので、knife ec2 createのノードを準備するためにbootstrapテンプレートを使用してchef-soloを実行する簡単なスクリプトを作成しました。そのスクリプトの中間点(knife ec2 createが終了した後)で、インスタンスのパブリックIPをコピーして貼り付ける必要があります。これは、ノードに「プッシュ」するために使用されます(クックブック、ロール、data_bags、 Host-dnaなどをノードまで実行し、chef-solo)を実行します。

bootstrap chef-clientおよびchef-serverのノードの場合、新しいノードがchef-serverに到達してプルするため、この問題は発生しません。設定しますが、今のところはchef-soloを使い続けたいと思います。

1

http://docs.amazonwebservices.com/AWSEC2/latest/UserGuide/AESDG-chapter-instancedata.html をご覧ください

何かのようなもの:

wget http:// 169.254.169.254/latest/meta-data/public-hostname

または最後の部分をに変更します

public-ipv4

2
blaine