KVM 備份還原程序教學
KVM(Kernel-based Virtual Machine) 虛擬架構真的是一個很好的使用環境,不論是開發測試或是佈署成正式環境都很妥當,連 GCP 的 CE 也是採用 KVM 的架構。Guest 端可以支援不論是 Linux、FreeBSD、Solaris 甚至是 Microsoft Windows。
當然東西用下去正式跑的時候,備份就很重要了!
KVM 備份程序
先列出要備份的虛擬機器
ubuntu@host:/$ virsh list --all
Id Name State
----------------------------------------------------
1 kudocker running
2 nextcloud running
停止 kvm – nextcloud
ubuntu@host:/$ virsh shutdown nextcloud
Domain nextcloud is being shutdown
接下來將 VM 的資料備份成 XML 檔案
ubuntu@host:/$ virsh dumpxml nextcloud > /kvm_backup/nextcloud.xml
ubuntu@host:/$ ll /kvm_backup/nextcloud.xml
-rw-rw-r-- 1 ubuntu ubuntu 4943 Jan 19 16:40 /kvm_backup/nextcloud.xml
再來將 image 檔備份出來
sudo cp /var/lib/libvirt/images/nextcloud.qcow2 /kvm_backup
備份打完收工!
KVM 還原程序
virsh undefine nextcloud
sudo cp /kvm_backup/nextcloud.qcow2 /var/lib/libvirt/images
virsh define -file /kvm_backup/nextcloud.xml
virsh start nextcloud
- 先將原本的 VM undefine
- 將 image 檔還原
- 重新載入定義檔
- 開啟 VM