🐳

AWSのWindowsインスタンスでAMIを作る時はSysprepを忘れずに

2024/12/31に公開

経緯

使用ライブラリの都合上、Windowsインスタンスを利用していました。環境構築が終わり、カスタムAMIを作ったところ、このAMIを使って起動したインスタンスにFleetManagerのキーペアを指定して接続できなくなりました。
結論から言うと、WindowsインスタンスからAMIを作るときにはSysprepを使用してからAMIを作る必要がありました。

環境と前提

  • WindowsServer 2016 (環境古いです。。)
  • SessionManagerの設定が済んでいること
  • FleetManagerのキーペアで接続できるようにインスタンスにIAMとキーペアが指定されていること

手順

AMIを作る前にsysprepでインスタンスを停止する

AMIを作りたいインスタンスに接続し、 EC2 Launch Settings を開きます。
![EC2 Launch Settings.png](/images/5a31d163c7badcf68cce/EC2 Launch Settings.png)

Administrator の Password を後で復号化するために Random を指定し、Sysprepを使ってシャットダウンします。

AMIを作成する

停止したインスタンスを指定してAMIを作ります
Create_AMI.png

パスワードを復号化する

AMIからインスタンスを作った後、Windowsのパスワードを取得を行います。
![Get Windows Password.png](/images/5a31d163c7badcf68cce/Get Windows Password.png)

元のインスタンスで利用していたFleetManagerのキーペアを指定してパスワードを復号化します。
Encrypt_Password.png

参考

https://repost.aws/ja/knowledge-center/ec2-windows-password-not-available-error

https://repost.aws/ja/knowledge-center/sysprep-create-install-ec2-windows-amis

Discussion