2015/02/19

Hyper-V 仮想マシンのバックアップは VSS 非対応でも止まらないんだ

Hyper-V は仮想マシンの VSS オンライン バックアップに対応していますが、VSS バックアップに対応していないゲストは、一時的に保存状態になると思っていました。

右の画面は、Windows Server 2012 Hyper-V のときの Linux 仮想マシンのバックアップの様子。Windows Server 2012 Hyper-V は Linux ゲストのオンライン バックアップには対応しておらず、ボリューム シャドウ コピーを作成するために、仮想マシンを一時的に保存してました。

この動作は Windows Server 2012 Hyper-V までで、Windows Server 2012 R2 Hyper-V からは VSS バックアップに対応していないゲストでも一時的な停止が無いように、変更されてました。(知らなかった、なんでいままで情報出てこなかったんだろう)

Ben Armstrong7s Virtualization Blog > Hyper-V Backup doesn't interrupt running virtual machines (anymore)
[URL] http://blogs.msdn.com/b/virtual_pc_guy/archive/2015/02/16/hyper-v-backup-doesn-t-interrupt-running-virtual-machines-anymore.aspx

やってみました...
Windows Server 2012 R2 Hyper-V からは Linux ゲストでも VSS バックアップが可能になったので (hv_vss_daemon があれば)、VSS バックアップに対応していないゲストのほうがレアですが、今回は Debian 7 で試してみました。Debian 7 は、古いバージョンの Linux 統合サービスをビルトインしていて、VSS バックアップ (hv_vss_daemon) には対応していません。

バックアップ対象として選択するとオフライン(Offline) 扱いですし、説明にも「バックアップの実行時に、バックアップに含まれている仮想マシンは一時的に保存済みの状態になる場合があります」と忠告されます。


Ben さん (↑のブログの人)の言うとおり、保存済みの状態ではなく、ボリューム シャドウ コピーの作成のために、仮想マシンのチェックポイント「仮想マシン名 - バックアップ - (日時)」が自動作成されました。
ボリューム シャドウ コピーの作成が完了するとチェックポイントは消えて元通りに。 ボリューム シャドウ コピーのほうには、仮想マシンのチェックポイントのイメージが保存されるようです。

バックアップ完了後に、元の場所にバックアップから仮想マシンを復元してみると、保存完了状態で復元されました。



こちらの (↓)正式ドキュメントにはそんなこと書いてないんですけどね。

Considerations for backing up and restoring virtual machines
[URL] https://technet.microsoft.com/en-us/library/dn798286.aspx
・ Virtual machines that do not have integration services installed or enabled will be put in a saved state while the VSS snapshot is created.
・ Virtual machines that are running operating systems that do not support VSS will be put in a saved state while the VSS snapshot is created. 

FAT32 やダイナミック ディスクも同じ仕組みでノー ダウンタイムってこと?

このドキュメントには、こうも書いてます。
・ All disks being used by the virtual machine are NTFS-formatted basic disks. Storage partitions that have been formatted as dynamic disks or FAT32 prevent a live backup. "
・ Virtual machines that contain dynamic disks (not dynamically expanding) must be backed up offline.

Hyper-V の VSS バックアップの常識だと思っていましたが、 やっぱり、チェックポイントを自動作成することで、ダウンタイムを避けるようになってました。こちら、ダイナミック ディスクを含む Windows Server 2008 R2 仮想マシンのオンライン バックアップの様子。


第 2 世代仮想マシンの EFI パーティションは FAT32 ですが、この仕組みを使ってオンライン バックアップを実現しているっぽい。なんでできてるんだろうと、なんとなく思っていたんですが、こういうことだったみたい。ちなみに、FAT32 パーティションが無い第 1 世代仮想マシンの場合は、バックアップ時にチェックポイントは作成されません。


“ボリューム チェックポイント”の恥ずかしいミスは訂正されるみたい

ところで、Hyper-V マネージャーの仮想マシンの「統合サービス」プロパティでは、Windows Server 2012 R2 Hyper-V だと「バックアップ (ボリューム チェックポイント)」と書いてます。英語だと、「Backup (volume checkpoint)」。

“ボリューム チェックポイント”って何?って感じですが、Hyper-V でこのとき仮想マシンの状態を保存する「スナップショット(Snapshot)」機能の名称が「チェックポイント(Checkpoint)」に変更になったことで、単純にテキストを一括で置換しちゃったんでしょうか。Windows Server 2012 Hyper-V までは「バックアップ(ボリューム スナップショット)」という表現でした。

Windows Server Technical Preview はどうなっているかというと、「Backup (volume shadow copy)」「バックアップ (ボリューム シャドウ コピー)」になってました。
 

↑左から、2012 Hyper-V、2012 R2 Hyper-V、Windows Server Technical Preview、Windows 10 Technical Preview Build 9926 です。

0 件のコメント: