私はvirt-manager仮想マシン(すべてのスナップショットを含む)をバックアップ/復元/復元する方法を見つけるために約1週間を過ごしました。
qcow2ファイルを確認すると、作成されたすべてのスナップショットが含まれます。
sudo qemu-img snapshot -l '../LinuxLiteV3.8.qcow2'
Snapshot list:
ID TAG VM SIZE DATE VM CLOCK
1 LinuxLite38_PreUD01 0 B 2020-11-06 23:37:14 00:00:00.000
2 snapshot1 0 B 2020-12-27 15:59:03 00:00:00.000
このファイルをvirt-managerの他のインスタンスにインポートしてVMを再作成すると、実行できますが、virt-managerはスナップショットについて知らないようです。
元の仮想マシンがまだ存在するため(必要に応じて)、次を使用してxmlファイルを生成できます。
virsh dumpxml LinuxLiteV3.8 --security-info --migratable >LinuxLiteV3.8
virsh snapshot-dumpxml LinuxLiteV3.8 LinuxLite38_PreUD01 --security-info >LinuxLite38_PreUD01.xml
virsh snapshot-dumpxml LinuxLiteV3.8 snapshot1 --security-info >snapshot1.xml
しかし、定義をvirt-managerにインポートする方法がわかりません。
IIUC virsh snapshot-createは、既存のスナップショットを取得せずに新しいスナップショットを作成します。
この時点で、qemu:///sessionに移動したいqemu:///systemで定義された2台のマシンを再生成しようとしています。私はvirshにqemu:///systemとqemu:///sessionから選択できる-cオプションがあることを知っていますが、エクスポート/インポート方法がわかりません。
また、システムを新しいハードウェアに移行しているため、新しくインストールされたvirt-managerからVMとそのスナップショットを再ロードできる必要があります。あるシステムからエクスポートし、別のシステムからインポートすることを除いて、これは本質的に同じ問題であると仮定します。
qcow2ファイルを使用する方が良いですが、元のジョブインストールはまだ残っているので、xmlファイルを使用するオプションがあります。
答え1
「sled9」という以前のVM(2台のディスクと2つのスナップショットを含む)に対して、次のことを行いました。
ソースマシンから:
~$ virsh dumpxml sled9 > sled9.xml
~$ virsh snapshot-list sled9
Name Creation Time State
--------------------------------------------------
snapshot1 2021-01-10 20:58:45 +0100 shutoff
vor grub 2019-05-03 12:43:30 +0200 running
~$ virsh snapshot-dumpxml sled9 snapshot1 > snapshot1.xml
~$ virsh snapshot-dumpxml sled9 'vor grub' > vor_grub.xml
2つのディスクファイルと3つのxmlファイルを、ターゲットマシンの新しく作成されたディレクトリにコピーします。/var/lib/libvirt/images/sled9
ターゲットマシンで:
まず、3つのxmlファイルを変更して、ディスクファイルへのさまざまなパス(〜/var/lib/libvirt/images/local
)を反映します/var/lib/libvirt/images/sled9
。これは、パスがコンピュータごとに異なる場合にのみ重要です。それから
~$ virsh define sled9.xml
~$ virsh snapshot-create sled9 --xmlfile vor_grub.xml --redefine
~$ virsh snapshot-create sled9 --xmlfile snapshot1.xml --redefine
~$ virsh snapshot-list sled9
Name Creation Time State
--------------------------------------------------
snapshot1 2021-01-10 20:58:45 +0100 shutoff
vor grub 2019-05-03 12:43:30 +0200 running
ターゲットマシンのvirtmanagerにドメインが表示され、スナップショットが表示され、両方のマシンで異なるネットワークインターフェイスを変更した後、VMを正常に起動できます。
正しい順序でスナップショットをオーバーライドすることが重要です。そうでなければ、virshは文句を言うでしょう(親欠落)。