Hyper-Vおよびその他の仮想プラットフォームでは、仮想マシンのHyper-Vバックアップとして、Hyper-VチェックポイントおよびAutoProtectチェックポイント機能を使用することを推奨していません。その理由と代替案を以下にまとめました。まず、チェックポイントやAutoProtect機能が何をするもので、何をしないものなのかを知っておくことで、十分な情報を得た上で判断することができます。
Hyper-Vチェックポイントとは?
Hyper-Vのチェックポイントとは、仮想マシンのユーザーがマシンを「フリーズ」させ、後の時点でそのフリーズした状態に戻ることを可能にするメカニズムです。当然、この機能はソフトウェア開発者やソフトウェア・テスターに非常に人気があります。なぜなら、すべてのテストの開始点とシステム条件をまったく同じに定義してテストを繰り返すことができるからです。しかし、社内ではどのように行われているのだろうか。これが、チェックポイントをバックアップ・メカニズムとして認識してはいけない理由です。
Hyper-Vでは、仮想ディスクや仮想マシンの内部メモリの状態などを、チェックポイントファイルと呼ばれる別のファイルに保存することで、チェックポイントを実装しています。例えば、VHDX(仮想マシンのハードディスクファイル)ごとに、そして仮想マシンに取ったチェックポイントごとに、新しいVHDXが作られます。仮想マシンのチェックポイントを取って仮想マシンを「フリーズ」させると、Hyper-Vは元の仮想ディスクへのディスク変更の書き込みを停止し、代わりに新しい仮想ディスクファイルを開始します。チェックポイントが作成された後、元のVHDXはそのまま残ります。
Hyper-Vのチェックポイントを復元するとどうなりますか?
Hyper-Vのチェックポイントをリストアすることで、Hyper-Vは変更が保存されたセカンダリVHDXを削除し、内部メモリやその他の構造を以前の仮想マシンの状態からロードします。これらの情報はすべて、いくつかのチェックポイント関連ファイルに含まれています。仮想マシンが再び動作可能になると、チェックポイント・ファイルは削除されます。
Hyper-Vのチェックポイントを削除するとどうなりますか?
チェックポイントを削除すると、より多くの作業が必要になります。なぜなら、Hyper-Vが「ありえないと思っていた」変更を維持したいと伝えているからです。そのため、Hyper-Vは元の仮想ディスクとその後に発生した変更をマージする必要があります。多くの変更が行われた場合、このマージには時間がかかる可能性があります。完了すると、チェックポイントファイルは削除されます。
ここで少し考えてみましょう。Hyper-Vや他のプラットフォームがチェックポイントを実装する方法は、チェックポイントがバックアップのために使われるものではなく、本番システムにも適していないという証拠です。もし、Hyper-Vの設計者がチェックポイントを保護メカニズムとして使用して欲しいと思っていたら、変更点を元のディスクに書き込み、元のブロックを「preserve the original」ファイルに書き込むことを選択したでしょう。 そうすれば、その後の読み取りや書き込みによるパフォーマンスへの影響はなく、チェックポイントのトラッシュも非常に迅速かつ簡単に行うことができます。その理由は、チェックポイントはバックアップのためのものではないからです。
チェックポイントは本番環境でも使用できますか?いいえ。
多くの経験豊富なITシステム管理者は、本番用のVMにチェックポイントを作成すると、上記のような非効率性や管理の複雑さから、怒るでしょう。チェックポイントのないVMには、設定ファイルとVHDX仮想ディスクの2つのファイルしか存在しません。チェックポイントのあるVMでは、数十から数百のファイルで構成されることもあります。当然ながら、これらの非効率性が積み重なり、サーバの速度を低下させます。VMのデータ構造の管理が複雑になりすぎて、エラーが発生しやすくなります。このような理由から、本番環境ではHyper-Vチェックポイントを使用しないことが最善かつ最も効率的です。
Hyper-VチェックポイントとAutoProtect機能がHyper-Vバックアップとして推奨されない理由は何ですか?
仮想マシンのバックアップは、単にチェックポイントを取得するよりも、はるかに完全で信頼性の高いプロセスです。まず第一に、チェックポイントは新しい依存関係を導入するため、仮想マシン自体を変化させますが、Hyper-Vバックアップにはそれがありません。チェックポイントが追加されると、より多くのファイルが作成され、Hyper-Vはディスクの変更を別のファイルに書き込み始めるなどの現象が発生します。チェックポイントはほとんどの場合、同じディスクに保存されているため、単純なディスク障害はチェックポイントにも影響を与えます。しかし、チェックポイントだけが破損し、元のファイルに問題がなかったとしても、いずれの場合も仮想マシンは壊れてしまいます。
Hyper-Vのバックアップは別のストレージを使用し、理想的には別のデバイスやクラウドアカウントのどこかに保存されます。これにより、ハードウェア、ソフトウェア、マルウェア、オペレーティングシステムの障害、さらには不満を持った従業員による偶発的または意図的な損害など、あらゆる種類の障害から保護することができます。Hyper-Vバックアップは、仮想マシンの復元に必要なすべての情報の信頼性の高いコピーを取ることで、仮想マシンの構成、仮想ディスク、仮想マシンに属するすべてのチェックポイントなど、あらゆるHyper-Vホスト上で仮想マシンを再構築するために必要なすべてのものを完全に含んでいます。
チェックポイントに対するHyper-Vバックアップの利点
自動化されたライブHyper-Vバックアップは、技術的に優れており、チェックポイントよりもはるかに信頼性があります。Hyper-Vバックアップは、仮想マシンの実行中またはシャットダウン時に取ることができ、どちらの方法でも問題なく動作します。Hyper-Vバックアップをリストアすることができ、リストアされたVMは元のVMのクローンとして設定できるので、並べて比較することができます。チェックポイントが作成されるとVMのすべてのディスクアクセスが遅くなるのとは異なり、Hyper-Vバックアップはバックアップが終了した後のパフォーマンスに影響を与えません。チェックポイントのもう一つの重要な効果は、チェックポイントのビットマップを追跡するために、Hyper-V内部のトレースファイルが非常に頻繁にディスクに書き込まれることで、SSDの場合、これがより早く消耗し、ひいてはディスク障害につながる可能性があります。
推奨される戦略とは?
チェックポイントは、ソフトウェアやオペレーティング・システムのテストという本来の目的には最適です (Automatic Hyper-V Backup)。しかし、特に本番システムにおいては、チェックポイントを使用することは良いアイデアではありません。重要な本番用VMは、優れたHyper-Vバックアップソリューションによって保護されるべきです。そうすれば、長期的に仮想マシンホストのパフォーマンスに影響を与えたり、管理を複雑にしたりすることなく、何が起こっても、どのホストでもVMを確実にリストアすることができます。Hyper-Vのバックアップソフトウェアは、Hyper-Vのデータストアを無駄なく効率的に保ち、VMはオーバーヘッドなしに最高のパフォーマンスで動作します。チェックポイントはパフォーマンスに悪影響を与え、ストレージ管理を複雑にし、エラーの可能性を高め、ホストが確実にサービスを提供できるVMの数を大幅に減少させるため、バックアップ目的では推奨されません。
2021年9月9日木曜日
Hyper-Vチェックポイント(およびAutoProtect)をバックアップに使用しないでください。
登録:
コメントの投稿 (Atom)
0 件のコメント:
コメントを投稿