こしぞーのひとり情シス

Windows/仮想化の小規模環境を運用するリーマンの日々を綴っています。

無償で実用的なHyper-V2016無人バックアップ手順(共有フォルダ・NASへのバックアップ)

Hyper-V仮想化環境のバックアップ運用はとても簡単でHyper-V仮想環境は構築も運用も非常に簡単でお手頃価格で実現できます
一方で仮想環境上には 複数のサーバ 仮想マシンとして構築されるので
1台のサーバが障害が発生した場合の影響は甚大 です

今回はそのWindows Server 2016 Hyper-Vの無償バックアップ(Windows Server バックアップ)について記載します

外付けHDDへのバックアップ方法はこちらをご確認ください

www.hitoriit.com

無償でかつ確実な Hyper-V バックアップ手順

Windows Server 2016でIPアドレス「192.168.10.1」共有名「share1」配下のbackupフォルダにバックアップデータを保存する方法

Windows Server標準バックアップ機能がリリースされてWindowsサーバOS領域のバックアップが非常に簡単に実施できるようになりました
ステートレスなサーバ(WebサーバやAPサーバなど)は本機能で十分バックアップ運用が可能です
DBサーバは別途DBツールのダンプファイルや有償バックアップソフトを活用したバックアップを推奨しますが、有償バックアップソフトをDBサーバやファイルサーバに限定することでバックアップ実装コストを下げることが出来ます

今回はバックアップ取得先として NAS/共有フォルダ を対象としています

外付けHDDにバックアップを取りたい場合はこちらを参照ください

www.hitoriit.com

無人実効用のスクリプト仮想マシンバックアップ)

スタンドアロンHyper-V上にある全ての仮想マシンを自動バックアップするスクリプト

無人実行できなければ意味がありません
PowerShellスクリプトを作成します

  • ファイル名:backupjob1.ps1
Set-Location $PSScriptRoot
start-transcript console.log
wbadmin.exe get virtualmachines | Select-String "VM 名" | % {$_ -replace "VM 名: ","" } | Out-File .\vm.txt
$S = (Get-Content .\vm.txt -raw).Replace("`r`n",",") |% {$_ -Replace(",Host Component,","")}
wbadmin.exe start backup -allCritical -systemState -hyperv:"$S" -backupTarget:\\192.168.10.1\share1\backup\folder1 -quiet
stop-transcript

これで「\192.168.10.1\share1\backup\folder1」配下にバックアップ実行したサーバ物理OS(ハイパーバイザ)と仮想マシンまで含めたフルバックアップイメージが作成されます

  • システムで予約済み
  • ローカルディスク(C:)
  • システム状態
  • ベアメタル回復
  • サーバ上のすべての仮想マシン
  • Hyper-V設定

「\192.168.10.1\share1\backup\folder1」の部分だけ皆さんの環境に合わせて設定してください

実行中画面はGUIから確認できます

WindowsサーババックアップGUI画面から進行中の画面が確認できます

2世代以上残したい場合はどうすれば?

Windows Serverバックアップは大変便利ですがバックアップ先を共有フォルダにした場合世代管理ができません
そんな時はバックアップフォルダをもう一つ作りましょう

  • 「\192.168.10.1\share1\backup\ folder2 」フォルダを作成します
  • PowerShellスクリプトをもう一つ(backupjob2.ps1)作成します
Set-Location $PSScriptRoot
start-transcript console.log
wbadmin.exe get virtualmachines | Select-String "VM 名" | % {$_ -replace "VM 名: ","" } | Out-File .\vm.txt
$S = (Get-Content .\vm.txt -raw).Replace("`r`n",",") |% {$_ -Replace(",Host Component,","")}
wbadmin.exe start backup -allCritical -systemState -hyperv:"$S" -backupTarget:\\192.168.10.1\share1\backup\folder2 -quiet
stop-transcript

-backupTarget の後ろを folder2 にしてください

いつバックアップを取るべきか

Hyper-V仮想環境には、1台に複数のサーバが搭載されていることが通常でHDD容量と相談です

できれば毎日夜間実行して無人化バックアップ運用がベストです

リストアの手順は?

バックアップは元せてこそです
リストアの手順は非常に重要です

別のサーバや空き仮想マシンをターゲットとしたリストア試験は日頃から実施することが大事です

とくに共有フォルダ・NASへのWindows Serverバックアップ・リストアはネットワーク設定でハマる可能性があります
もし物理サーバ(ハイパーバイザ)OSからの復旧の場合はこちらをごらんください

www.hitoriit.com

確実に戻ることを確認しておけば何が起こっても安心です

関連記事です

Hyper-Vを使っていないWindowsであればこちらの手順でバックアップしてください

www.hitoriit.com

www.hitoriit.com

リストアはこちらの手順を参考に行ってください

www.hitoriit.com

以上