李慧穎
【摘要】 在云計(jì)算技術(shù)日益發(fā)展的今天,虛擬化技術(shù)已經(jīng)成為云計(jì)算的重要支撐技術(shù)之一,其特點(diǎn)是能快速進(jìn)行資源整合,進(jìn)而最大限度的對(duì)已整合資源進(jìn)行分配。KVM虛擬化是基于Linux內(nèi)核的開源虛擬機(jī)平臺(tái),是硬件虛擬化的擴(kuò)展及QEMU的升級(jí)版,在很大程度上已取代Xen,成為L(zhǎng)inux系統(tǒng)上創(chuàng)建和支持虛擬機(jī)的默認(rèn)開源方案。本文將針對(duì)虛擬化技術(shù)中的KVM進(jìn)行介紹,使讀者對(duì)KVM有初步認(rèn)識(shí)。
【關(guān)鍵字】 Linux內(nèi)核 KVM虛擬化 半虛擬化
據(jù)報(bào)告分析早前70%的IT預(yù)算都花費(fèi)在基礎(chǔ)設(shè)施上,并且在許多情況下還會(huì)更糟。為了解決這個(gè)問(wèn)題,目前的數(shù)據(jù)中心已普遍采用虛擬化技術(shù)解決各企業(yè)對(duì)于操作系統(tǒng)單一用途的部署需求而導(dǎo)致的服務(wù)器大規(guī)模增長(zhǎng)。虛擬化技術(shù)既能將各企業(yè)的應(yīng)用隔離開來(lái),又能解決服務(wù)器超低利用率導(dǎo)致碳排放激增的問(wèn)題,為企業(yè)節(jié)省了開銷。
一、虛擬化技術(shù)
根據(jù)韋氏字典的解釋,虛擬現(xiàn)實(shí)是“通過(guò)由電腦提供的感官刺激(例如視覺和聽覺),使用戶產(chǎn)生一種人工環(huán)境的體驗(yàn),并且在這人工環(huán)境中,用戶的行動(dòng)部分地由該環(huán)境中所發(fā)生的事情所決定”。虛擬化正是這樣做的:虛擬機(jī)軟件在一臺(tái)真正的物理系統(tǒng)上創(chuàng)建一個(gè)或多個(gè)虛擬工作站或服務(wù)器。磁盤空間、處理器性能、網(wǎng)絡(luò)適配器及大量隨機(jī)訪問(wèn)存儲(chǔ)器(RAM)均取決于真正物理機(jī)上的資源。
如圖1所示,一般的計(jì)算機(jī)模型可以抽象成為一定的物理資源和運(yùn)行其上的計(jì)算機(jī)元件,它們之間通過(guò)定義好的物理資源接口進(jìn)行交互。虛擬化層必須能夠捕捉到計(jì)算機(jī)元件對(duì)物理資源的直接訪問(wèn),并將其重新定向到虛擬資源池中。
二、KVM虛擬化
KVM的全稱是Kernel Virtual Machine,翻譯成中文就是基于內(nèi)核的虛擬機(jī),是一個(gè)開源的虛擬化模塊。
2.1 KVM的產(chǎn)生
KVM最早是由以色列的Qumranet公司開發(fā)的,后于2008年被Linux的發(fā)行版提供商Redhat收購(gòu),從而成為KVM開源項(xiàng)目的新主人,開始著手用KVM替換掉早前已經(jīng)集成在系統(tǒng)中卻由于其自身管理系統(tǒng)資源架構(gòu)的問(wèn)題引起內(nèi)核開發(fā)人員不滿的Xen。2010年后,RedHat在其新推出的Redhat Enterprise Linux 6.0 以后2.6.20以上版本的系統(tǒng)內(nèi)核中集成了KVM虛擬機(jī),摒棄了早前RHEL 5.X系列中集成的Xen。
2.2 KVM的特點(diǎn)
KVM是基于Linux內(nèi)核的完全原生的全虛擬化解決方案。與半虛擬化(準(zhǔn)虛擬化)不同,全虛擬化提供了完整的X86平臺(tái),包括處理器、磁盤空間、網(wǎng)絡(luò)適配器及RAM等,其無(wú)須對(duì)客戶機(jī)操作系統(tǒng)做任何修改便可運(yùn)行已存在的基于X86平臺(tái)下的操作系統(tǒng)和應(yīng)用程序。
與Xen相比,其優(yōu)勢(shì)顯而易見:1)KVM是開源平臺(tái),大幅降低了虛擬機(jī)的部署成本;2)KVM在內(nèi)核2.6.20版之后,自動(dòng)整合到Linux內(nèi)核中;Xen所需的內(nèi)核源代碼補(bǔ)丁與特定的內(nèi)核版本綁定,而且安裝時(shí)需要大量的軟件包,卻仍然無(wú)法保證每個(gè)Xen的正常運(yùn)行;3)Xen的虛擬機(jī)管理程序是一段單獨(dú)的源代碼,并提供一組專門的管理命令,不是所有Linux使用者都熟悉;KVM的命令行管理工具繼承自QEMU,已經(jīng)被Linux學(xué)習(xí)者廣泛接受;
2.3 KVM的適用范圍
作為開源虛擬化平臺(tái),KVM適用于規(guī)模較大的環(huán)境,如虛擬主機(jī)達(dá)到2500臺(tái)以上的情況,旨在節(jié)約平臺(tái)采購(gòu)與部署的成本;規(guī)模在500臺(tái)虛擬主機(jī)以下時(shí),不妨使用商業(yè)平臺(tái),畢竟此時(shí)在穩(wěn)定性與性價(jià)比上商業(yè)平臺(tái)能達(dá)到平衡;當(dāng)主機(jī)數(shù)目在兩者之間時(shí),不妨考慮以商用平臺(tái)為主,開源平臺(tái)為輔的方法更能很好的發(fā)揮二者的優(yōu)勢(shì)。
三、結(jié)論
目前KVM已經(jīng)得到了相當(dāng)廣泛的支持,除了一線的商業(yè)Linux廠商的支持外,藍(lán)色巨人IBM的鼎力支持也是KVM發(fā)展中不可或缺的一個(gè)環(huán)節(jié)。其完善了X86架構(gòu)上進(jìn)行虛擬的限制,并推出了多種KVM的虛擬化解決方案,意在迅速將虛擬化系統(tǒng)轉(zhuǎn)化為私有云。不得不說(shuō),KVM已經(jīng)很大程度上成為L(zhǎng)inux系統(tǒng)上創(chuàng)建和支持虛擬機(jī)的默認(rèn)開源方案,將Xen取而代之,成為未來(lái)能與Hype-V乃至VMware相抗衡的有力勁旅。
參 考 文 獻(xiàn)
[1] Danielle Ruest等著 陳奮譯.虛擬化技術(shù)指南[M].北京:機(jī)械工業(yè)出版社,2011.15-16
[2]任永杰等著.KVM虛擬化技術(shù)實(shí)戰(zhàn)與原理解析[M].北京:機(jī)械工業(yè)出版社,2014.8-9
[3] William von Hagen. 使用 KVM 虛擬化技術(shù)[J/OL]. http://www.ibm.com/developerworks/cn/linux/l-using-kvm/,2015-8-22