Azureバックアップから復元してみた
障害発生までの経緯
事の始まり Azure VM をオンプレに複製しようとした
下記サイトを見てAzureでVHDファイルを作成してそれをオンプレにダウンロードしようとした
C:\Windows\System32\Sysprep\sysprep.exe
RDPでVM(Windows Server 2012 R2 )にログイン後 sysprep.exeを実行
「システム準備ツール」ダイアログが開くので下のように設定して「OK」クリック
sysprep実行後 VMはシャットダウン、停止
VHDファイルエクスポート ダウンロードURLの作成
Azure ポータルの対象のVMを表示「ディスク」をクリック
「ディスクのエクスポート」をクリック
「URLの期限が切れるまでの秒数」を3600→36000(10時間)に設定変更後「URLの生成」クリック
エクスポートが始まるのでダウンロードURLをコピーしておく
エクスポート完了後「VHDファイルのダウンロード」を実行・失敗
結果的にダウンロードに失敗した。
VHDサイズが127ギガある。これをフレッツ光でダウンロードするのだから数時間以上は掛かると思われる。
挙句の果てに失敗。ちょっと実用的でない。
翌日、保存しておいたURLにて再トライしたが下記のエラーで失敗
VM起動できたがRDPでログオンできない。やっちまった~
sysprep したのが原因?
WEBアプリも起動せず
バックアップから復旧
Azureポータルにてサーバー停止 「バックアップ」クリック
「VMの復元」クリック
復元ポイントの選択
「復元の種類」は「ディスクの復元」選択「OK」
「復元」クリックにて復元開始
「通知」一覧 リンクをクリックにて復元状況が確認できる
復元の「処理中」
復元の完了
これで再利用可能なディスクが準備できました。
ディスクの差し替え 元のVMの削除は不要
「使ってみる」にて「Azure Cloud Shell」が開いてそこでPower Shell コマンドを投入できた。
Power Shell をインストールする手間が省けて便利に感じた。なかなか良い。
「Azure Cloud Shell」にてコマンド投入
PS Azure:\> $vm = Get-AzVM -ResourceGroupName testGroup -Name 'hostname' Azure:/ PS Azure:\> print Unescaped left brace in regex is deprecated, passed through in regex; marked by <-- HERE in m/%{ <-- HERE(.*?)}/ at /usr/bin/print line 528. Azure:/ PS Azure:\> Stop-AzVM -ResourceGroupName testGroup -Name 'hostname' -Force OperationId : abcdefg Status : Succeeded StartTime : 9/4/19 7:20:19 AM EndTime : 9/4/19 7:20:29 AM Error : Azure:/ PS Azure:\> $disk = Get-AzDisk -ResourceGroupName testGroup -Name 'hostname-osdisk-20190904-051154' Azure:/ PS Azure:\> Set-AzVMOSDisk -VM $vm -ManagedDiskId $disk.Id -Name $disk.Name ResourceGroupName : groupname Id : /subscriptions/abcdefg/resourceGroups/groupname/providers /Microsoft.Compute/virtualMachines/hostname VmId : 123456-abcdefg Name : hostname Type : Microsoft.Compute/virtualMachines Location : japaneast Tags : {} DiagnosticsProfile : {BootDiagnostics} Extensions : {enablevmaccess} HardwareProfile : {VmSize} NetworkProfile : {NetworkInterfaces} OSProfile : {ComputerName, AdminUsername, WindowsConfiguration, Secrets, AllowExtensionOperations} ProvisioningState : Succeeded StorageProfile : {ImageReference, OsDisk, DataDisks} Azure:/ PS Azure:\> Update-AzVM -ResourceGroupName testGroup -VM $vm RequestId IsSuccessStatusCode StatusCode ReasonPhrase --------- ------------------- ---------- ------------ True OK OK Azure:/ PS Azure:\> Start-AzVM -Name $vm.Name -ResourceGroupName testGroup OperationId : 1234567890 Status : Succeeded StartTime : 9/4/19 7:33:17 AM EndTime : 9/4/19 7:35:26 AM Error : Azure:/ PS Azure:\>
復元できた
元のVMに戻った。ホスト名、IPアドレスなど、そのまま戻せた様だ。
復元するときに「仮想マシンの作成」を選択すると元の仮想マシンを削除して新たにホスト名、IP等を設定するらしい。?検証はしていないが。今回は「ディスクの復元」を選択して正解と思われる。
Azureの仮想マシンをオンプレに複製がまだ。
今回の件は、本来の目的を達成途上でのトラブルに対応したもので、目的を達成していない。
コメント