起動時に新しい EC2 Windows インスタンスでコマンドを実行する方法を教えてください。

最終更新日: 2020 年 10 月 12 日

新しい Amazon Elastic Compute Cloud (Amazon EC2) Windows インスタンスを起動するときに、カスタムスクリプトを実行したいと考えています。これはどのように実行できますか?

簡単な説明

インスタンスの起動時に開始するスクリプトを実行するには、スクリプトをユーザーデータに追加します。ユーザーデータは、EC2Config (Windows Server 2012 R2 以前) または EC2Launch (Windows Server 2016 以降) によって処理されます。

解決方法

スクリプトをユーザーデータに追加するときは、特別なタグで囲む必要があります。このタグで、コマンドプロンプトウィンドウで実行するか、Windows PowerShell を使用するかを決定します。詳細については、「 Windows インスタンスでの起動時のコマンドの実行」を参照してください。

新しい EC2 Windows インスタンスを起動する際、設定時にユーザーデータを指定し、起動時にカスタムスクリプトを実行できます。

重要: カスタム AMI からインスタンスを起動する場合、AMI の作成元のインスタンスは EC2Launch または EC2Config を使用してシャットダウンする必要があります。EC2Launch または EC2Config 設定から、[Shutdown with Sysprep] または [Shutdown without Sysprep] を選択します。

1.    Amazon EC2 コンソールを開き、ナビゲーションペインから AMI を選択します。

2.    AMI を選択し、[Launch] をクリックします。

3.    インスタンスタイプを選択して、[Next: Configure Instance Details] をクリックします。

4.    [Advanced Details] の [User data] テキストボックスに、カスタムスクリプトを入力します。必ず正しいタグを使用してください。
       注意: インスタンスを再起動または再開するたびにユーザーデータスクリプトを実行するには、以下を追加してください。

<persist>true</persist>

5.    起動ウィザードを完了して、インスタンスを起動します。

追加のトラブルシューティングを行うために、EC2Launch と EC2Config ログファイルには、標準出力と標準エラーストリームからの出力が含まれます。ログファイルは次のように配置されます。

  • EC2Launch: C:\ProgramData\Amazon\EC2-Windows\Launch\Log\UserdataExecution.log
  • EC2Config: C:\Program Files\Amazon\Ec2ConfigService\Logs\Ec2Config.log