資源描述:
《kvm虛擬機(jī)遷移技術(shù)研究.docx》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在教育資源-天天文庫(kù)。
1、KVM虛擬機(jī)遷移技術(shù)研究姓名:陳沖學(xué)號(hào):1415925640班級(jí):云計(jì)算四班目錄一、虛擬機(jī)遷移技術(shù)31.簡(jiǎn)介32.KVM虛擬機(jī)遷移原理33.虛擬機(jī)遷移過(guò)程中的控制流3二、虛擬機(jī)靜態(tài)遷移41.虛擬機(jī)靜態(tài)遷移簡(jiǎn)介42.靜態(tài)遷移53.目標(biāo)虛擬主機(jī)(node2)啟動(dòng)客戶虛擬機(jī)6三、虛擬機(jī)動(dòng)態(tài)遷移71.簡(jiǎn)介72.虛擬化平臺(tái)架構(gòu)83.配置實(shí)實(shí)驗(yàn)環(huán)境84.node1節(jié)點(diǎn)掛載NFS85.node2節(jié)點(diǎn)掛載NFS96.虛擬機(jī)遷移9四、NFS文件共享技術(shù)101.NFS簡(jiǎn)介102.NFS服務(wù)器搭建113.NFS客戶端搭建12一、虛擬機(jī)遷移技術(shù)1.簡(jiǎn)介系統(tǒng)的遷
2、移是指把源主機(jī)上的操作系統(tǒng)和應(yīng)用程序移動(dòng)到目的主機(jī),并且能夠在目的主機(jī)上正常運(yùn)行。在沒(méi)有虛擬機(jī)的時(shí)代,物理機(jī)之間的遷移依靠的是系統(tǒng)備份和恢復(fù)技術(shù)。在源主機(jī)上實(shí)時(shí)備份操作系統(tǒng)和應(yīng)用程序的狀態(tài),然后把存儲(chǔ)介質(zhì)連接到目標(biāo)主機(jī)上,最后在目標(biāo)主機(jī)上恢復(fù)系統(tǒng)。隨著虛擬機(jī)技術(shù)的發(fā)展,系統(tǒng)的遷移更加靈活和多樣化。虛擬機(jī)遷移技術(shù)為服務(wù)器虛擬化提供了便捷的方法。而目前流行的虛擬化工具如VMware,Xen,HyperV,KVM都提供了各自的遷移組件。盡管商業(yè)的虛擬軟件功能比較強(qiáng)大,但是開源虛擬機(jī)如Linux內(nèi)核虛擬機(jī)KVM和XEN發(fā)展迅速,遷移技術(shù)日趨完善
3、。虛擬機(jī)遷移有三種方式,分別是P2V、V2V和V2P,不同的方式又存在許多不同的解決方案。而本文是在v2v這種方式的基礎(chǔ)上完成KVM虛擬機(jī)的遷移。2.KVM虛擬機(jī)遷移原理虛擬機(jī)遷移過(guò)程中數(shù)據(jù)的傳輸(磁盤鏡像和內(nèi)存數(shù)據(jù))通常有兩種常用的數(shù)據(jù)傳輸方式:?--基于hypervisor的傳輸機(jī)制,即通過(guò)host之間連接來(lái)進(jìn)行數(shù)據(jù)傳輸?--基于libvirtd的傳輸機(jī)制,即兩個(gè)libvirtd進(jìn)程之間的數(shù)據(jù)傳輸(1)基于hypervisor的數(shù)據(jù)傳輸這種傳輸方式具有最低的overload,因?yàn)閭鬏數(shù)氖锹銛?shù)據(jù),不支持?jǐn)?shù)據(jù)的加密。另外,因?yàn)橐蕾囉趆y
4、pervisor的網(wǎng)絡(luò),所以需要對(duì)hypervisornetworks進(jìn)行一些特定的配置,比如打開某些端口。(2)基于libvirtd的數(shù)據(jù)傳輸這種傳輸方式支持加密,是通過(guò)libvirt內(nèi)建的RPC協(xié)議來(lái)進(jìn)行數(shù)據(jù)的傳輸?shù)?,但是缺點(diǎn)是除了傳輸裸數(shù)據(jù)外,還需要傳輸一些額外的數(shù)據(jù),這對(duì)鏡像尺寸很大的虛擬機(jī)來(lái)說(shuō)是個(gè)大問(wèn)題。優(yōu)點(diǎn)是由于不依賴與hypervisornetwork,所以不需要hypervisor對(duì)network做過(guò)多的配置,僅僅打開某個(gè)指定的port即可。3.虛擬機(jī)遷移過(guò)程中的控制流(1)帶有管理端的直接遷移這種遷移方式是由一個(gè)管理客
5、戶端發(fā)起,管理客戶端完全控制整個(gè)遷移流程,所以它必須能夠且有權(quán)限訪問(wèn)源主機(jī)和目的主機(jī)上libvirtd的權(quán)限,因?yàn)橥饧右粋€(gè)管理客戶端,所以不需要源libvirtd和目的libvirtd之間進(jìn)行直接的交流,只需要按照管理客戶端的指示來(lái)辦事就好了。(2)帶有管理端的點(diǎn)對(duì)點(diǎn)的遷移這種遷移方式下,管理客戶端至于源libvirtd交互,然后源libvirtd完全控制整個(gè)遷移過(guò)程。優(yōu)點(diǎn)是,即使管理客戶端掛掉了,遷移還是能正常完成的。二、虛擬機(jī)靜態(tài)遷移1.虛擬機(jī)靜態(tài)遷移簡(jiǎn)介靜態(tài)遷移也叫做常規(guī)遷移、離線遷移(OfflineMigration)。就是在虛
6、擬機(jī)關(guān)機(jī)或暫停的情況下從一臺(tái)物理機(jī)遷移到另一臺(tái)物理機(jī)。因?yàn)樘摂M機(jī)的文件系統(tǒng)建立在虛擬機(jī)鏡像上面,所以在虛擬機(jī)關(guān)機(jī)的情況下,只需要簡(jiǎn)單的遷移虛擬機(jī)鏡像和相應(yīng)的配置文件到另外一臺(tái)物理主機(jī)上;如果需要保存虛擬機(jī)遷移之前的狀態(tài),在遷移之前將虛擬機(jī)暫停,然后拷貝狀態(tài)至目的主機(jī),最后在目的主機(jī)重建虛擬機(jī)狀態(tài),恢復(fù)執(zhí)行。這種方式的遷移過(guò)程需要顯式的停止虛擬機(jī)的運(yùn)行。從用戶角度看,有明確的一段停機(jī)時(shí)間,虛擬機(jī)上的服務(wù)不可用。這種遷移方式簡(jiǎn)單易行,適用于對(duì)服務(wù)可用性要求不嚴(yán)格的場(chǎng)合。2.靜態(tài)遷移(1)確定虛擬機(jī)關(guān)閉狀態(tài)(2)準(zhǔn)備遷移vm2虛擬機(jī),查看該虛
7、擬機(jī)配置的磁盤文件(3)導(dǎo)入虛擬機(jī)配置文件(4)拷貝配置文件到目標(biāo)虛擬主機(jī)上。scp是Linux下的遠(yuǎn)程拷貝命令,首先需要安裝ssh服務(wù):#apt-getinstallapt-getinstallopenssh-server啟動(dòng)服務(wù)拷貝配置文件在目標(biāo)機(jī)器(node2)查看文件是否拷貝成功在拷貝的時(shí)候可能出現(xiàn)以下問(wèn)題:原因:scp是基于ssh的拷貝服務(wù),ssh在沒(méi)有密鑰登錄的情況下,禁用了密碼登錄,故出現(xiàn)如上錯(cuò)誤。解決辦法:修改目標(biāo)機(jī)器配置文件:vi/etc/ssh/sshd_config將其中的PermitRootLoginno修改為y
8、esPubkeyAuthenticationyes修改為noAuthorizedKeysFile.ssh/authorized_keys前面加上#屏蔽掉,PasswordAuthenticationno修改