🪟
Azure Windows VMからキャプチャしたVMイメージからVMを作成するとエラーになった
事象
Windows VMの更新管理としてUpdate Management Centerを試そうとしていて、カスタムイメージを利用する際の挙動を確認すべく、VMをもとにしたカスタムイメージを作成(キャプチャ)した。そのイメージからVMを作成すると、このようなエラーが発生。
OS Provisioning for VM 'vm-win22-ja-acg' did not finish in the allotted time. However, the VM guest agent was detected running. This suggests the guest OS has not been properly prepared to be used as a VM image (with CreateOption=FromImage). To resolve this issue, either use the VHD as is with CreateOption=Attach or prepare it properly for use as an image:
Instructions for Windows: https://azure.microsoft.com/documentation/articles/virtual-machines-windows-upload-image/
Instructions for Linux: https://azure.microsoft.com/documentation/articles/virtual-machines-linux-capture-image/
仮想マシンを削除して再作成すると、問題が解決する可能性があります。
原因
- VMにカスタマイズを施した後、Azure PortalのVM作成画面、「キャプチャ」からAzure Compute Galleryにイメージを吐き出すという処理をしていた
- その際に「一般化」のオプションがあるため裏でSysprep的なことをしてくれいているのかと思ったら、そうでもないらしい
Azure ポータルからキャプチャを実行した仮想マシンは、Azure 上でも「一般化された仮想マシンである」というフラグが立てられる旨をご案内しましたが、こちらは、あくまで Azure 上にてフラグが立てられるのみの動作となります。
Windows OS や Linux OS としての一般化を実行するわけではないため、キャプチャを実行した仮想マシンと紐づく OS ディスクから仮想マシンを再作成し、仮想マシンの起動を行うことができます。
解決策
- OS上でのSysprepをきちんと実施することにした
- 横着せずにここの手順をやりましょうって話
- この手順をやると、OS側のシャットダウンが入るため、Azure Portal側で「停止」によって「割り当て解除」しておく
おわり
「クラウド…オウチャク…ダメゼッタイ」
Discussion