Amazon EC2インスタンスの自身のUserdataを簡単に取得する
Amazon EC2のユーザデータを簡単に取得する方法
Amazon EC2はたくさんのメタデータを持っています。SDKやAPIを経由して取得する方法が一般的ですが、自身のインスタンス内で簡単に問い合わせる方法があります。以下のアドレスにアクセスすることです。
http://169.254.169.254/
実際にどんな情報が取得できるのか試してみたいと思います。
EC2インスタンス起動時にユーザデータを指定する
インタンス起動時にユーザデータの指定をすることができます。テキスト形式で入力ができます。base64にする事もできるようです。以下の画面をご覧ください。
改行コードで区切ったり、カンマ(,)で区切ったりできますので、受け取る側で適当に解釈してあげれば良いかと思います。
EC2インスタンス内で自身のユーザデータを確認する
メタデータ取得と同じ方法です。
$ wget -q -O - http://169.254.169.254/latest/user-data param1=1000 param2=2000 param3=abc
見事にユーザデータが取得できました。
まとめ
Amazon EC2インスタンス起動時にユーザデータを指定できる事が分かりました。また、取得も簡単であることが分かりました。具体的な使いどころですが、ユーザデータにSimpleDBのアドレスやRDSのアドレスなどを入れておいて、インスタンス起動後に内部の初期値を設定したり連携先を指定してはいかがでしょうか?ということで、ユーザデータを活用してインスタンスごとの初期の動きを指定してしまいましょう!