web-dev-qa-db-ja.com

とにかく、VMを一時停止せずにライブqcow2バックアップを実行することはできますか?

システムを停止せずにライブバックアップを実行するサーバー用のKVMバックアップソリューションをセットアップしようとしています。

私がテストしたいくつかの準備ができたスクリプトを見つけましたが、それらはすべて、メモリ状態を保存するために、VMをしばらくの間停止または「フリーズ」します。しかし、これは私たちにとって良くありません。

ログを書き込むカスタムアプリケーションはほとんどなく、一貫性が必要であり、バックアップの期間中システムが「フリーズ」している間は10〜60秒の一時停止を行うことはできません。また、この「フリーズ」によりVMのクロックが同期しなくなります(クロックその機能の1つがいくつかの測定機器のタイムスタンプを監視することであるカスタムソフトウェアを用語で混乱させる「フリーズ」の期間が遅れています。

したがって、質問がある場合、VM)をフリーズせずに一貫して実行できる完全なVMバックアップを実行する方法はありますか?バックアップの復元も同様に機能するはずです:)

これは私が例として試したいくつかのスクリプトの1つです: KVM QCOW2ライブバックアップ

1
Nanoni

別のアプローチを採用します。VM全体の状態を保存する代わりに、念のため、新しくインストールしたVM)の元のイメージを保持します。安全を確保するために、関心のあるデータの定期的なバックアップを実行します。このようなバックアップを実行するための具体的な手法は、使用しているツール(MySQL?InfluxDB?)によって異なります。

VMのストレージにLVMを使用している場合は、LVMスナップショットを使用することもできます。これは、迅速で中断を伴うものではありません。これには、VMのRAMが考慮されていないため、任意の時点で無効なデータが含まれる可能性があるという欠点があります。

1
niglesias

最も簡単で一般的な解決策は、VM(fsfreeze/flush/qemu-gaを使用してスナップショットを取得する前にfsの一貫性を維持する)のライブスナップショットを作成し、基になるイメージをバックアップすることです。 、VMはスナップショットに書き込み、バックアップが完了したら2つをマージします。

1
dyasny