kvm虛擬機遷移

說明:kvm虛擬機遷移我的總結分爲三種:

冷遷移

熱遷移

圖形遷移



下面說各種遷移的步驟和注意事項:




冷遷移: 這個和克隆還是有區別的:克隆是把源虛擬機關閉,那麼內存的數據都沒了;而遷移是遷過去成功,然後打開後,還保持原來的內存數據
熱遷移:

172.16.21.9 172.16.21.120
老舊的宿主機 新的宿主機

虛擬機 ---->



一、冷遷移過程:

1,虛擬機kvm1是開啓狀態
2,保存當前的運行狀態
# virsh save kvm1 /etc/libvirt/qemu/kvm1.xml.save

Domain kvm1 saved to /etc/libvirt/qemu/kvm1.xml.save

3,scp或者rsync把相關的文件都拷貝到被遷移的宿主機
# scp /etc/libvirt/qemu/kvm1.xml.save 172.16.21.120:/etc/libvirt/qemu/
# scp /etc/libvirt/qemu/kvm1.xml 172.16.21.120:/etc/libvirt/qemu/
# scp /var/lib/libvirt/images/kvm1.qcow2 172.16.21.120:/var/lib/libvirt/images/


4,到172.16.21.120(也就是遷移的目標宿主機)上操作

# virsh define /etc/libvirt/qemu/kvm1.xml --define一下,然後就可以用virsh list --all查看到


5,# virsh restore /etc/libvirt/qemu/kvm1.xml.save





二、熱遷移過程:

1,做熱遷移需要使用共享存儲(也就是說這些虛擬機都安裝在宿主機的共享存儲設備上);我們這裏只能使用nfs來替代

172.16.21.9        172.16.21.120
            \                /
             \              /
              \            /
            storage(SAN)


2,在源宿主機器上把虛擬機的磁盤文件路徑用nfs導出
# vim /etc/exports
/var/lib/libvirt/images *(rw,no_root_squash,sync)

# systemctl restart nfs

3,在目標宿主機器上把源共享的目錄掛載,保證路徑一致(目標宿主機的掛載目錄一定要與源宿主機的目錄一致)
# mount 172.16.21.9:/var/lib/libvirt/images/ /var/lib/libvirt/images/



4,進行遷移,下面的操作是在源172.16.21.9上的操作(注意檢查一下防火牆和selinux要關閉)
命令遷

# virsh migrate --live kvm1 qemu+ssh://172.16.21.120/system
--(可能會有很多問題:如kvm1有橋接網絡,但172.16.21.120那邊沒有,會報錯:或者本地有iso鏡像,但對方那裏iso路徑不一樣,會報錯;或者kvm1內存較大,172.16.21.120那邊沒有足夠的內存分配,則也會報錯等等;雙方主機名沒有綁定,也有可能報錯;還有可能是因爲網絡的問題,造成一次不成功;畢竟我們是實驗環境@_@多試幾次看看)




三、圖形遷
virt-manager --》右鍵點kvm1-->點遷移


遷移回來可能出現下面錯誤
錯誤信息:
Unable to migrate guest: Unsafe migration: Migration may lead to data corruption if disks use cache != none
解決方法:
在高級選項裏把allow unsafe打勾就可以了






kvm虛擬機遷移說完了,覺得可行的朋友請評論下。如有問題,請在評論區指出,我將盡力解答。


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章