サイトアイコン 協栄情報ブログ

Windowsインスタンスでのユーザーデータの利用について


この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので十分ご注意ください。

皆様こんにちは。
今回はWindowsインスタンスでのユーザーデータの利用についての紹介をしていきます。

ユーザーデータについて

Amazon EC2 で Windows インスタンスの起動時にインスタンスに渡すユーザーデータを使用して、インスタンスの起動後に自動設定タスクを実行したり、スクリプトを実行したりできます。インスタンスユーザーデータは、非透過的なデータとして扱われますが、その解釈はインスタンスに依存します。ユーザーデータは、EC2Launch v2 (サポートされているプレビュー AMI およびダウンロード)、EC2Launch (Windows Server 2016 以降)、EC2Config (Windows Server 2012 R2 以前) によって処理されます。 AWS公式ドキュメントより

ユーザーデータを利用することにより、あらかじめ設定したコマンドを起動時に自動的に実行させることができます。

また、Windowsインスタンスで利用できるユーザーデータスクリプトにはバッチスクリプトとWindows PowerShell スクリプトの2つがありますが、今回は後者のWindows PowerShell スクリプトを使ってユーザーデータを利用します。

ユーザーデータ利用

Windowsインスタンス起動

では実際にWindowsインスタンスでユーザーデータを利用してみましょう。
EC2のマネジメントコンソールから「インスタンス」を選択後「インスタンスを起動」をクリック。

今回はWindowsインスタンスを利用したいのでAMIは下記のWindowsのAMIを選択します

インスタンスタイプはt2.microを利用します。

「インスタンスの設定」に移り、ページ下部にある「ユーザーデータ」項目に実行したいコマンドを入力します。
今回入力するコマンドは下記のとおりです。

<powershell>
New-Item C:\Users\Administrator\UserDataTest -itemType Directory 
New-Item C:\Users\Administrator\UserDataTest\Test.txt -itemType File
</powershell>


ユーザーデータを入力後「タグの追加」に移り、今回の要件がわかるように「userdata-test」というNameタグを設定しました。

「セキュリティグループの設定」では、RDP接続を許可する「SG-userdata-test」という名前のセキュリティグループを作成します。(セキュリティの観点からソースをマイIPだけに絞っています)

最後に「確認」の画面に移り、既存のキーペア又は新しいキーペアを作成のどちらかを選択しインスタンスを作成します。(私は既存のものを持っていたため、既存のキーペアを選択しています)

パスワード取得

Windowsインスタンスを起動できたのを確認したら、次にWindowsの管理パスワードを取得します。
「今回作成したインスタンスのチェックボックス→アクション→セキュリティ→Windowsパスワードを取得」をクリックしていきます。

「Windowsパスワードを取得」の画面に移りましたら、「Browse」から今回関連付けたキーペアを選択し、パスワードを復号化をクリック。

下記の画像のとおり、パスワードを取得できたため、これを使ってRDP接続でWindowsインスタンスにログインします。

RDP接続

今回RDP接続にはWindowsに初期搭載されている「リモートデスクトップ接続」を利用します。

パブリックIPv4アドレスを確認し、

「コンピューター(C):」に入力し、「接続」をクリック。

先ほど取得したユーザ名である「Administrator」とパスワードを入力後、「OK」をクリックし接続します。

Windowsインスタンスに接続できました。

ユーザーデータ確認

ユーザーデータで入力したコマンドが実行できているかの確認のため、タスクバーからエクスプローラーを選択。

エクスプローラーが開いたら、赤枠に今回作成したフォルダがあるAdministratorユーザまで「C:\Users\Administrator」を入力して移動します。

移動後、確認すると「UserDataTest」のフォルダが作成されており、

中身を確認すると「Test.txt」のファイルも作成されていました。

確認後、「Disconnect」をクリックして、切断します。

以上で、Windowsインスタンスでのユーザーデータの利用についての説明は終わりです。

モバイルバージョンを終了