一、kvm虛擬機靜態遷移
1.靜態遷移就是虛擬機在關機狀態下,拷貝虛擬機虛擬磁盤文件與配置文件到目標虛擬主機中,實現的遷移。
(1)虛擬主機各自使用本地存儲存放虛擬機磁盤文件
本文實現基於本地磁盤存儲虛擬機磁盤文件的遷移方式,
(2)虛擬主機之間使用共享存儲存放虛擬機磁盤文件
該方式只是在目標虛擬主機上重新定義虛擬機就可以了。
2.靜態遷移過程如下
(1)確定虛擬機關閉狀態
(2)准備遷移oeltest02虛擬機,查看該虛擬機配置的磁盤文件
(3)導入虛擬機配置文件
1
|
[root@node1~]# virsh dumpxml oeltest02 > /root/oeltest02.xml
|
(4)拷貝配置文件到目標虛擬主機上。
(5)查看虛擬機磁盤文件並拷貝到目標虛擬主機。
拷貝虛擬磁盤文件
3.目標虛擬主機上
上面已經將虛擬機磁盤文件與配置文件都已經復制到目標虛擬主機上了。下面開始配置與啟動。
(1)查看目標虛擬主機環境。
查看虛擬機磁盤文件,目錄結構與源虛擬主機一致。
(2)定義注冊虛擬主機
(3)啟動虛擬主機並確認
至此虛擬機靜態遷移完成。
二、kvm虛擬機動態遷移
相比KVM虛擬機靜態遷移中需要拷貝虛擬機虛擬磁盤文件,kvm虛擬機動態遷移無需拷貝虛擬磁盤文件,但是需要遷移到的虛擬主機之間需要有相同的目錄結構虛擬機磁盤文件,本文這部分內容通過nfs來實現,當然也可以采用GFS2集群文件系統來實現,本文的動態遷移是基於共享存儲動態遷移。KVM動態遷移目前有兩種,一種是基於共享存儲的動態遷移,一種是基於基於數據塊的動態遷移,需要qemu-kvm-0.12.2以上版本支持,OEL6.3版本是qemu-kvm-0.12.1.2,其它發行版可能有支持。
1.虛擬化平台架構
2.虛擬化環境介紹
(1)KVM虛擬化服務器node1
操作系統版本:OEL6.3x64
KVM虛擬化:自帶版本
橋接IP地址1:192.168.159.150
測試虛擬機:oeltest01
虛擬機IP地址:192.168.159.132
虛擬磁盤文件1:/data/test01.qcow2
虛擬磁盤文件2:/data/test01_add01.qcow2
nfs掛載目錄:/data
(2)KVM虛擬化服務器node2
操作系統版本:OEL6.3x64
KVM虛擬化:自帶版本
橋接IP地址1:192.168.159.160
nfs掛載目錄:/data
(3)nfs服務器(nfs配置略)
操作系統版本:OEL5.8x64
橋接IP地址1:192.168.169.180
nfs服務目錄:/mnt/vg/nfs/abc
3.kvm虛擬主機配置准備
(1)節點1掛載nfs目錄
(2)節點2掛載nfs目錄
確保兩節點都有相同的虛擬機磁盤文件存儲目錄。
4.kvm虛擬機遷移
(1)節點1虛擬機狀態,oeltest01虛擬機開機狀態
(2)節點2虛擬機狀態,無虛擬機運行
(3)在主機1上執行遷移命令
1
2
3
|
[root@node1~]#virsh migrate --live --verbose oeltest01 qemu+ssh:
//192.168.159.160/system tcp://192.168.159.160
root@
192.168
.
159.160
'spassword:
Migration:[
100
%]
|
過程有一個暫停與關閉的過程。
(4)客戶機一直ping查看遷移,可以看到中間有兩個包的中斷,基本上沒有太大影響。
(5)虛擬主機2上,可以看到虛擬機oeltest01已經啟動了。
雖然oeltest01虛擬機已經在節點2上啟動了,但是虛擬主機上還沒有oeltest01虛擬機的配置文件。所以需要創建配置文件並定義虛擬機。
(6)虛擬主機2上,通過遷移過來的虛擬機內存狀態創建虛擬機配置文件,並通過xml配置文件定義虛擬機。
在虛擬主機2上進入虛擬機沒有問題。
到此,kvm虛擬機動態遷移成功。