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のマネジメントコンソールから「インスタンス」を選択後「インスタンスを起動」をクリック。
file

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

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

<powershell>
New-Item C:\Users\Administrator\UserDataTest -itemType Directory 
New-Item C:\Users\Administrator\UserDataTest\Test.txt -itemType File
</powershell>
  • 1行目と4行目はそれぞれpowershellタグを利用して開始と終了を示し、その中に実行をするコマンドを記述します
  • 3行目のNew-Item C:\Users\Administrator\UserDataTest -itemType Directory
    フォルダ又はファイル作成のコマンドです。
    Windowsインスタンス起動時に作成される初期のAdministratorユーザーの中にUserDataTestというフォルダを作成します。
  • 4行目のNew-Item C:\Users\Administrator\UserDataTest\Test.txt -itemType File
    フォルダ又はファイル作成のコマンドです。
    3行目で作成したフォルダの中にさらにTest.txtというファイルを作成します。

file
ユーザーデータを入力後「タグの追加」に移り、今回の要件がわかるように「userdata-test」というNameタグを設定しました。
file
「セキュリティグループの設定」では、RDP接続を許可する「SG-userdata-test」という名前のセキュリティグループを作成します。(セキュリティの観点からソースをマイIPだけに絞っています)
file
最後に「確認」の画面に移り、既存のキーペア又は新しいキーペアを作成のどちらかを選択しインスタンスを作成します。(私は既存のものを持っていたため、既存のキーペアを選択しています)
file

パスワード取得

Windowsインスタンスを起動できたのを確認したら、次にWindowsの管理パスワードを取得します。
「今回作成したインスタンスのチェックボックス→アクション→セキュリティ→Windowsパスワードを取得」をクリックしていきます。
file
「Windowsパスワードを取得」の画面に移りましたら、「Browse」から今回関連付けたキーペアを選択し、パスワードを復号化をクリック。
file
下記の画像のとおり、パスワードを取得できたため、これを使ってRDP接続でWindowsインスタンスにログインします。
file

RDP接続

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

パブリックIPv4アドレスを確認し、
file
「コンピューター(C):」に入力し、「接続」をクリック。
file
先ほど取得したユーザ名である「Administrator」とパスワードを入力後、「OK」をクリックし接続します。
file
Windowsインスタンスに接続できました。
file

ユーザーデータ確認

ユーザーデータで入力したコマンドが実行できているかの確認のため、タスクバーからエクスプローラーを選択。
file
エクスプローラーが開いたら、赤枠に今回作成したフォルダがあるAdministratorユーザまで「C:\Users\Administrator」を入力して移動します。
file

移動後、確認すると「UserDataTest」のフォルダが作成されており、
file
中身を確認すると「Test.txt」のファイルも作成されていました。
file
確認後、「Disconnect」をクリックして、切断します。
file

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

Last modified: 2022-04-26

Author