kvm快照,分兩種:
1種lvm快照,若是分區是lvm,能夠利用lvm進行kvm的快照備份
2種因爲raw格式不支持鏡像,因此須要將格式轉換爲qcow2才能夠建立快照。
方法2具體操做以下:
kvm虛擬機默認使用raw格式的鏡像格式,性能最好,速度最快,它的缺點就是不支持一些新的功能,如支持鏡像,zlib磁盤壓縮,AES加密等。
要使用鏡像功能,磁盤格式必須爲qcow2。下面開始kvm虛擬機快照備份的過程。
查看磁盤格式
raw格式須要轉換成qcow2服務器
關閉test-script
轉換磁盤格式dom
[
root@localhost images]# qemu-img convert -f raw -O qcow2 test-script.img test-script.qcow2
-f 源鏡像的格式
-O 目標鏡像的格式性能
查看轉換後的格式,已經轉換成了qcow2, 這裏是拷貝一份,並將格式轉成qcow2測試
.修改虛擬機配置文件:ui
修改磁盤格式,與新qcow2格式的磁盤。加密
3. 對虛擬機進行快照管理
對oeltest01虛擬機建立快照spa
也能夠virsh snapshot-create as oeltest01 snap1 建立後個快照別名。命令行
[root@localhost images]# virsh snapshot-create test-script
Domain snapshot 1419995560 created
查看虛擬機鏡像快照的版本3d
[root@localhost images]# virsh snapshot-list test-script
查看當前虛擬機鏡像快照的版本rest
能夠看到爲當前最新的快照版本。
[root@localhost images]# virsh snapshot-current test-script
查看當前虛擬機鏡像文件
又建立了一個,快照的版本也記錄在鏡像文件中了。
[root@localhost images]# virsh snapshot-create test-script
[root@localhost images]# qemu-img info test-script.qcow2
快照配置文件在/var/lib/libvirt/qemu/snapshot/虛擬機名稱下
當前的仍是最新的快照:
恢復虛擬機快照
恢復虛擬機快照必須關閉虛擬機。
[root@localhost test-script]# virsh domstate test-script
確認須要恢復的快照時間,這裏恢復到1419995560
[root@localhost test-script]# virsh snapshot-list test-script
執行恢復,並確認恢復版本
[root@localhost test-script]# virsh snapshot-revert test-script 1419995560
[root@localhost test-script]# virsh snapshot-current test-script
查看虛擬機快照
[root@localhost images]# qemu-img info test-script.qcow2
這裏刪除第一個快照1419995560
刪除快照
[root@localhost images]# virsh snapshot-delete test-script 1419995560
[root@localhost images]# qemu-img info test-script.qcow2
因爲把當前的快照刪除了:顯示沒有快照了。
[root@localhost images]# virsh snapshot-current test-script
error: domain ‘test-script’ has no current snapshot
[root@localhost images]# virsh snapshot-revert test-script 1419995769
[root@localhost images]# virsh snapshot-current test-script
再次還原到快照2,而後查看當前快照。
到此kvm虛擬機快照測試完畢。
開啓測試虛擬機:
[root@localhost images]# virsh start test-script
virsh經常使用命令:
命令 說明
help 顯示該命令的說明
quit 結束 virsh,回到 Shell
connect 鏈接到指定的虛擬機服務器
create 啓動一個新的虛擬機
destroy 刪除一個虛擬機,直接拔電源。
start 開啓(已定義的)非啓動的虛擬機,開啓虛擬機。
define 從 XML 定義一個虛擬機
undefine 取消定義的虛擬機
dumpxml 轉儲虛擬機的設置值
list 列出虛擬機
reboot 從新啓動虛擬機
save 存儲虛擬機的狀態
restore 回覆虛擬機的狀態
suspend 暫停虛擬機的執行
resume 繼續執行該虛擬機
dump 將虛擬機的內核轉儲到指定的文件,以便進行分析與排錯
shutdown 關閉虛擬機
setmem 修改內存的大小
setmaxmem 設置內存的最大值
setvcpus 修改虛擬處理器的數量
1)virsh list 列出當前虛擬機列表,不包括未啓動的
2)virsh list –all 列出全部虛擬機,包括全部已經定義的虛擬機
3)virsh destroy vm-name 關閉虛擬機
4)virsh start vm-name 啓動虛擬機
5)virsh edit vm-name 編輯虛擬機xml文件
6)virsh undefine vm-name 刪除虛擬機
7)virsh shutdown vm-name 中止虛擬機
8)virsh reboot vm-name 重啓虛擬機
9)virsh autostart vm-name 虛擬機隨宿主機啓動
PS:
kvm虛擬機刪除報錯:
error: Failed to undefine domain test
error:Requested operation is not valid: cannot undefine transient domain
直接命令行操做解決: 關閉kvm虛擬機後記得重啓圖形管理virtual manager,不然可能會出現卡死的狀況,關閉了kvm虛擬機而沒法刪除虛擬機。