標籤:本機 vm 虛擬機器 操作 統一 EDA 緩衝區 cee uri res
一 靜態遷移一 概述 :
libvirt 提供了兩種方案
1 基於hypervisor native transport 的遷移
一般的遷移方式
2 基於libvirt tunnelled transport 的遷移 (使用RPC協議可以實現加密功能,在傳遞時多了一個步驟,在單一的網路執行並發的操作)
二 遷移時的通訊控制
A 受管理的隨即轉移
(同時串連到源和目標主機的libvirt主機(使用者名稱,密碼,SSH,認證))如果遷移過程中鏈路發生故障,則源宿主機會回退到之前的情況,(極端情況,如果不能回退,則可以進行重新啟動)
B 受管理的點對點遷移((管理端和源建立串連,源和目標端建立串連進行認證並進行遷移))如果管理程式崩潰,則不會影響,因為指令已經發送
C 不受管理的隨即轉移((由兩台主機之前的hypervisor進行控制))
統一資源標識 URI
通過URI 串連遠端的服務
1 同一宿主機之間的遷移
通過編譯設定檔進行指定磁碟的指定路徑來保證正常啟動
修改前
修改後
2 不同宿主機之間的遷移
3 折中遷移方式1 遷移設定檔
2 其磁碟檔案必須在其中
二 動態遷移1 要求
1 確保兩台主機均啟用了libvirtd 服務
2 遷移的平台和版本符合相容性要求
3 正確配置防火牆,允許所需連接埠的通訊
4 兩個主機在相同的虛擬網路
5 如果是共用儲存,建議在兩個主機上的mount 路徑一致
2 基於共用儲存的動態遷移1 NFS 伺服器配置儲存
建立vm 並掛載:
rw : 讀寫
all_squash: 將遠端存取的所有普通使用者及組都映射為匿名使用者或者使用者組
no_all_squash: 與all_squash 相關
sync: 將資料同步寫入記憶體緩衝區與磁碟中,效率低,但可以保證資料的一致性
2 進行遠端掛載生效
3 修改設定檔和遷移磁碟到共用儲存
4 使用圖形化介面進行遷移
臨時遷移的意思是在源主機上保留相應的配置
源主機設定檔
如果選擇不可靠的,則在進行遷移時磁碟產生的緩衝在沒有被重新整理到磁碟上時提示已經成功,此時可能會造成一定的損失,但其效能好。生產中建議使用none
5 virsh migrate 命令線上遷移虛擬機器
遷移相關參數
--live 表示線上遷移
--unsafe 表示允許不可靠遷移
--persistent 表示永久遷移
--UNdefinesource
6 其他相關方式遷移
1 可指定專門的URI進行遷移
virsh migrate rhel7.3 qemu+ssh://[email protected]/system \
--migrateuri tcp://192.168.1.60 --live --persistent --undefinesource
2 p2p 的遷移方式
3 --direct
不支援qemu 必須是Xen
4 --tunnelled (必須同時使用--p2p參數)
隧道式的遷移,是隧道之間的遷移使用,必須使用SSH認證
3 基於本機儲存的動態遷移1 無共用儲存的必要條件
一 使用virsh 的 --copy-storage-all
二 需要有即時儲存遷移(塊遷移)支援
1 標準的RHEL/CentOS7的qemu-kvm 不支援
2 ovirt 或 RHEV 支援
centos 7.2 必須安裝一下兩個包
yum -y install centos-release-qemu-ev
yum -y install qemu-kvm-ev
三 虛擬機器要在儲存池中
2 使圖形化介面進行虛擬機器的遷移
注 :由此可知,隨即轉移因為其磁碟檔案不能同步而導致遷移失敗,可進行手工遷移實驗
3 命令列方式遷移A 安裝相關虛擬遷移需要軟體包,並重啟伺服器
[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 建立相關資源集區
C 遷移並進行測試
KVM 虛擬機器移轉