[トップページ] [FAQ 一覧]

対象:インスタンス

EC2インスタンスが初期化される順番 | EC2Launch,ユーザデータ,スタートアップスクリプト





インスタンスが初期化される順番


AMIからEC2インスタンスを起動した場合には様々な初期化処理が行われます。とあるシステムでアプリケーションの初期化などの必要が発生したため、どのような順番で呼ばれるか確認してみました。あくまでも実験結果です。

「EC2Launch」→「ユーザデータ内のスクリプト」→「Windowsスタートアップスクリプト」の順番でした。ただし数秒の違いでありほぼ同時に実行されるような感じです。


(1)EC2Launch による初期化
PC名の変更、DNS Suffixの追加、管理者パスワードの初期化などが行われます。EC2Launch 実行時の設定に従います。

以下のログで実行日時を確認しました。
EC2Launchの実行ログ:
C:\ProgramData\Amazon\EC2-Windows\Launch\Log\Ec2Launch.log

参考:
EC2Launchとは

(2)ユーザデータ内のスクリプト実行
ユーザデータ内で<script>〜</script> や <Powershell>〜</Powershell>タグが存在する場合、スクリプトが実行されます。
EC2Launchの次に実行されるようです。


以下のログで実行日時を確認しました。
スクリプト実行のログ:
C:\ProgramData\Amazon\EC2-Windows\Launch\Log\UserdataExecution.log


参考:
ユーザデータ内のスクリプトが実行されないときに確認する事項


(3)Windowsスタートアップスクリプト
グループポリシーでスタートアップスクリプトを指定した場合に実行されます。
ユーザデータ内のスクリプトの後で実行されました。

EC2インスタンスでWindowsスタートアップスクリプト



スタートアップスクリプトで eventcreate コマンドによりイベントを記録するバッチを組み込みました。これにより実行時刻を確認しました。

【超重要】本ページは2019/06/07に記載されました。情報が古くなっている可能性があります。




[ 一覧に戻る]


【注意事項】本ページの内容は個人的に調査した結果がであり内容が正しいことは保証されません。
またAWSサービスは常に改良、アップデートされており本ページの内容が古く誤った内容になる可能性もあります。変更になっても本ページが正しく更新されるとは限りません。
あくまでも参考程度でご覧ください。内容により発生したいかなる時間的損害、金銭的損害、その他の損害に関しても何人も保証しません。