kvm虛擬機默認使用raw格式的鏡像格式,性能最好,速度最快,它的缺點就是不支持一些新的功能,如支持鏡像,zlib磁盤壓縮,AES加密等。
要使用鏡像功能,磁盤格式必須為qcow2。下面開始kvm虛擬機快照備份的過程。
本文出自:http://koumm.blog.51cto.com
進一步的學習參考:kvm+libvirt虛擬機快照淺析 http://itxx.sinaapp.com/blog/content/130
1. 查看現有磁盤鏡像格式與轉換
(1) 查看磁盤格式
# qemu-img info test01.img
raw格式需要轉換成qcow2
(2) 關閉虛擬機並轉換磁盤
# virsh shutdown oeltest01
(3) 轉換磁盤格式
# qemu-img convert -f raw -O qcow2 test01.img test01.qcow2
-f 源鏡像的格式
-O 目標鏡像的格式
查看轉換后的格式,已經轉換成了qcow2, 這里是拷貝一份,並將格式轉成qcow2
# qemu-img info test01.qcow2
2. 修改虛擬機配置文件
修改磁盤格式,與新qcow2格式的磁盤。
3. 對虛擬機進行快照管理
(1) 對oeltest01虛擬機創建快照
也可以virsh snapshot-create as oeltest01 snap1 創建后個快照別名。
(2) 查看虛擬機鏡像快照的版本
(3) 查看當前虛擬機鏡像快照的版本
可以看到為當前最新的快照版本。
[root@node1 data]#
[root@node1 data]# virsh snapshot-current oeltest01
<domainsnapshot>
<name>1378579737</name>
<state>shutoff</state>
<creationTime>1378579737</creationTime>
<memory snapshot='no'/>
<disks>
<disk name='hda' snapshot='internal'/>
<disk name='hdc' snapshot='no'/>
</disks>
<domain type='kvm'>
<name>oeltest01</name>
<uuid>8f2bb4a7-c7ed-32aa-3676-9fb05923269d</uuid>
<memory unit='KiB'>524288</memory>
<currentMemory unit='KiB'>524288</currentMemory>
<vcpu placement='static'>1</vcpu>
<os>
<type arch='x86_64' machine='rhel6.4.0'>hvm</type>
<boot dev='hd'/>
</os>
<features>
<acpi/>
<apic/>
<pae/>
</features>
<clock offset='localtime'/>
<on_poweroff>destroy</on_poweroff>
<on_reboot>restart</on_reboot>
<on_crash>restart</on_crash>
<devices>
<emulator>/usr/libexec/qemu-kvm</emulator>
<disk type='file' device='disk'>
<driver name='qemu' type='qcow2' cache='none'/>
<source file='/data/test01.qcow2'/>
<target dev='hda' bus='ide'/>
<address type='drive' controller='0' bus='0' target='0' unit='0'/>
</disk>
<disk type='block' device='cdrom'>
<driver name='qemu' type='raw'/>
<target dev='hdc' bus='ide'/>
<readonly/>
<address type='drive' controller='0' bus='1' target='0' unit='0'/>
</disk>
<controller type='ide' index='0'>
<address type='pci' domain='0x0000' bus='0x00' slot='0x01' function='0x1'/>
</controller>
<controller type='usb' index='0'/>
<interface type='bridge'>
<mac address='52:54:00:82:39:01'/>
<source bridge='br0'/>
<model type='virtio'/>
<address type='pci' domain='0x0000' bus='0x00' slot='0x03' function='0x0'/>
</interface>
<serial type='pty'>
<target port='0'/>
</serial>
<console type='pty'>
<target type='serial' port='0'/>
</console>
<input type='tablet' bus='usb'/>
<input type='mouse' bus='ps2'/>
<graphics type='vnc' port='5910' autoport='no' listen='0.0.0.0'>
<listen type='address' address='0.0.0.0'/>
</graphics>
<video>
<model type='cirrus' vram='9216' heads='1'/>
<address type='pci' domain='0x0000' bus='0x00' slot='0x02' function='0x0'/>
</video>
<memballoon model='virtio'>
<address type='pci' domain='0x0000' bus='0x00' slot='0x04' function='0x0'/>
</memballoon>
</devices>
</domain>
</domainsnapshot>
[root@node1 data]#
(4) 查看當前虛擬機鏡像文件
又創建了一個,快照的版本也記錄在鏡像文件中了。
快照配置文件在/var/lib/libvirt/qemu/snapshot/虛擬機名稱/下
4. 恢復虛擬機快照
(1) 恢復虛擬機快照必須關閉虛擬機。
確認虛擬機是關機狀態
(2) 確認需要恢復的快照時間,這里恢復到1378579737
(3) 執行恢復,並確認恢復版本
# virsh snapshot-revert oeltest01 1378579737
5. 刪除虛擬機快照
(1) 查看虛擬機快照
# qemu-img info test01.qcow2
這里刪除第一個快照1378579737
(2) 刪除快照
到此kvm虛擬機快照測試完畢。kvm虛擬化學習筆記進行到這里了,感覺到kvm虛擬化的內容真的很多。水是越來越深了。