KVM 虚拟机迁移
一 靜態(tài)遷移
一 概述 :
libvirt 提供了兩種方案
1 基于hypervisor native transport 的遷移
一般的遷移方式
2 基于libvirt tunnelled transport 的遷移 (使用RPC協(xié)議可以實(shí)現(xiàn)加密功能,在傳遞時(shí)多了一個(gè)步驟,在單一的網(wǎng)絡(luò)執(zhí)行并發(fā)的操作)
二 遷移時(shí)的通信控制
A 受管理的直接遷移
(同時(shí)連接到源和目標(biāo)主機(jī)的libvirt主機(jī)(用戶名,密碼,SSH,證書))如果遷移過程中鏈路發(fā)生故障,則源宿主機(jī)會回退到之前的情況,(極端情況,如果不能回退,則可以進(jìn)行重新啟動(dòng))
B 受管理的點(diǎn)對點(diǎn)遷移((管理端和源建立連接,源和目標(biāo)端建立連接進(jìn)行認(rèn)證并進(jìn)行遷移))如果管理程序崩潰,則不會影響,因?yàn)橹噶钜呀?jīng)發(fā)送
C 不受管理的直接遷移((由兩臺主機(jī)之前的hypervisor進(jìn)行控制))
統(tǒng)一資源標(biāo)識 URI
通過URI 連接遠(yuǎn)端的服務(wù)
1 同一宿主機(jī)之間的遷移
通過編譯配置文件進(jìn)行指定磁盤的指定路徑來保證正常啟動(dòng)
修改前
修改后
2 不同宿主機(jī)之間的遷移
3 折中遷移方式
1 遷移配置文件
2 其磁盤文件必須在其中
二 動(dòng)態(tài)遷移
1 要求
1 確保兩臺主機(jī)均啟用了libvirtd 服務(wù)
2 遷移的平臺和版本符合兼容性要求
3 正確配置防火墻,允許所需端口的通信
4 兩個(gè)主機(jī)在相同的虛擬網(wǎng)絡(luò)
5 如果是共享存儲,建議在兩個(gè)主機(jī)上的mount 路徑一致
2 基于共享存儲的動(dòng)態(tài)遷移
1 NFS 服務(wù)器配置存儲
創(chuàng)建vm 并掛載:
rw : 讀寫
all_squash: 將遠(yuǎn)程訪問的所有普通用戶及組都映射為匿名用戶或者用戶組
no_all_squash: 與all_squash 相關(guān)
sync: 將數(shù)據(jù)同步寫入內(nèi)存緩沖區(qū)與磁盤中,效率低,但可以保證數(shù)據(jù)的一致性
2 進(jìn)行遠(yuǎn)端掛載生效
3 修改配置文件和遷移磁盤到共享存儲
4 使用圖形化界面進(jìn)行遷移
臨時(shí)遷移的意思是在源主機(jī)上保留相應(yīng)的配置
源主機(jī)配置文件
如果選擇不可靠的,則在進(jìn)行遷移時(shí)磁盤產(chǎn)生的緩存在沒有被刷新到磁盤上時(shí)提示已經(jīng)成功,此時(shí)可能會造成一定的損失,但其性能好。生產(chǎn)中建議使用none
5 virsh migrate 命令在線遷移虛擬機(jī)
遷移相關(guān)參數(shù)
--live 表示在線遷移
--unsafe 表示允許不可靠遷移
--persistent 表示永久遷移
--UNdefinesource
6 其他相關(guān)方式遷移
1 可指定專門的URI進(jìn)行遷移
virsh migrate rhel7.3 qemu+ssh://root@server6/system \
--migrateuri tcp://192.168.1.60 --live --persistent --undefinesource
2 p2p 的遷移方式
3 --direct
不支持qemu 必須是Xen
4 --tunnelled (必須同時(shí)使用--p2p參數(shù))
隧道式的遷移,是隧道之間的遷移使用,必須使用SSH認(rèn)證
3 基于本機(jī)存儲的動(dòng)態(tài)遷移
1 無共享存儲的必要條件
一 使用virsh 的 --copy-storage-all
二 需要有實(shí)時(shí)存儲遷移(塊遷移)支持
1 標(biāo)準(zhǔn)的RHEL/CentOS7的qemu-kvm 不支持
2 ovirt 或 RHEV 支持
centos 7.2 必須安裝一下兩個(gè)包
yum -y install centos-release-qemu-ev
yum -y install qemu-kvm-ev
三 虛擬機(jī)要在存儲池中
2 使圖形化界面進(jìn)行虛擬機(jī)的遷移
注 :由此可知,直接遷移因?yàn)槠浯疟P文件不能同步而導(dǎo)致遷移失敗,可進(jìn)行手工遷移實(shí)驗(yàn)
3 命令行方式遷移
A 安裝相關(guān)虛擬遷移需要軟件包,并重啟服務(wù)器
[qemu-kvm-rhev]
name=Virt rebuilds of qemu-kvm-rhev
baseurl=http://resources.ovirt.org/pub/ovirt-3.5/rpm/el7Server/
mirrorlist=http://resources.ovirt.org/pub/yum-repo/mirrorlist-ovirt-3.5-el7Server
enabled=1
skip_if_unavailable=1
gpgcheck=0
B 創(chuàng)建相關(guān)資源池
C 遷移并進(jìn)行測試
轉(zhuǎn)載于:https://blog.51cto.com/11233559/2311004
總結(jié)
- 上一篇: 基于OpencvTensorflow实现
- 下一篇: P4568 [JLOI2011]飞行路线