スナップショットからAMIを作成してスナップショットを作成した時点の状態に
EC2インスタンスを復元するという対応はしているのですが、
スナップショットからWindowsのAMIを作成することは現時点では対応できていません。

これにより、定期的にスナップショットは取得しているいますが、実際に復元する場合は、
AMIを作成することはできないので、Windows自体の復元はできず、Root Device(Cドライブ)を
任意にアタッチして、ファイルを取り出すことしかできないと思っていました。

しかし、cloudpack Night #1@oko_chang が、それに近い内容を発表してくれました。
(ありがとうございます!)

発表内容は、Windows AMIのリージョン間移行だったのですが、
移行元リージョンにあるWindowsのスナップショットを取得して移行先リージョンのWindowsで
復元するという部分は、まさに上記の問題の解決方法となります。

基本的な考え方として、インスタンスはストップするとRoot DeviceのEBSも交換できるので、
AMIを作るのではなく、スナップショットから作成したRoot DeviceのEBSを、
適当なWindowsのものと差し替えてしまうものです。

具体的な手順は下記となります。

はじめに、バックアップになります。

(1)スナップショットを取得するインスタンス(バックアップ元)を停止します。

(2)停止したインスタンスのEBS(Root Device)のスナップショットを取得します。

(3)スナップショットが取得できたら、取得元のインスタンスをターミネートします。

そして、復元となります。

(4)スナップショットからEBSを作成します。

※サイズはスナップショットと同じ(30G)にします。
※ゾーン(AZ)は復元に使うインスタンスと同じ(a)にします。

(5)予め起動していた復元用インスタンス(Windows)を停止します。

(6)復元用インスタンスのEBS(Root Device)をデタッチします。

(7)復元用インスタンスにスナップショット(バックアップ元)から作成したEBS(Root Device)をアタッチします。

※デバイスはRoot Deviceとしてアタッチするので /dev/sda1 とします。

(8)復元用インスタンスをスタートします。

リモートデスクトップでログインすると、スナップショットを取得したWindowsが
復元されていることを確認することができます。

今までは、できないと思っていたので再インストールしていました。

こちらの記事はなかの人(suz-lab)監修のもと掲載しています。
元記事は、こちら