虚拟化问答录
問:什么是虛擬化
答:虛擬化簡單來說就是用軟件的方式模擬硬件,這樣說著好像有點(diǎn)兒(貌似不止一點(diǎn)兒的程度)的抽象。應(yīng)該很多人玩過俗稱小霸王的游戲機(jī)把,以前我們要買小霸王那種硬件來才能玩小霸王的游戲,現(xiàn)在我們在電腦下載一個模擬器就行了,這就算是虛擬化的一種形式,當(dāng)計算機(jī)性能足夠了的時候可以通過軟件的形式模擬出了當(dāng)時的硬件然后實現(xiàn)當(dāng)時硬件的功能。如果還在說抽象的話,更加簡單表面點(diǎn)的(雖然這個并不是太準(zhǔn)確,但如果上面都無法理解的話就姑且這樣認(rèn)為吧)就是在一臺電腦上能同時運(yùn)行多個操作系統(tǒng)的技術(shù)就是虛擬化。
問:我一臺電腦一個系統(tǒng)就夠了,虛擬化有什么用?
答:正常使用的話的確一個系統(tǒng)就夠了,但有時候你想在不影響物理主機(jī)的情況下想體驗下其他系統(tǒng),比如現(xiàn)在不是出了個Windows Blue的泄露版么,如果你想試試那貨難不成要你重裝一個還bug滿天飛的系統(tǒng)?有了虛擬化的話你就可以不用影響你的物理主機(jī)卻又能體驗其他系統(tǒng)了。如果你是編程人員的話你想在其他系統(tǒng)測試下你的軟件的話虛擬化技術(shù)也是一個很好的技術(shù)。
問:那么虛擬化是不是就上面那些用途?好像也沒多大作用嘛?
答:上述用途僅僅是對個人而言,對企業(yè)來說就用途大了,虛擬化能夠整合物理服務(wù)器資源,提高服務(wù)器的資源利用率,同時虛擬化還是云計算的技術(shù)。
正規(guī)的來說在企業(yè)里是一個系統(tǒng)運(yùn)行一個業(yè)務(wù),但很多情況下一個業(yè)務(wù)并不會用盡服務(wù)器的資源,根據(jù)調(diào)查大部分的服務(wù)器的利用率不到15%,但如果使用虛擬化技術(shù)之后,則平均利用率能達(dá)到60%以上,這就意味著可以減少4倍的服務(wù)器硬件采購,空間占用以及制冷費(fèi)用卻能達(dá)到相同的效果。同時現(xiàn)在說的很火的云計算也是基于虛擬化為基礎(chǔ)的。
問:聽上去,是不是虛擬化只能虛擬操作系統(tǒng)?
答:不是的,只是虛擬操作系統(tǒng)是虛擬化的一個…比較基礎(chǔ)的特征,畢竟沒任何其他虛擬化條件的情況下一臺物理硬件只能同時運(yùn)行一個系統(tǒng)。
除了虛擬化系統(tǒng),虛擬化技術(shù)還有諸如應(yīng)用虛擬化,桌面虛擬化,網(wǎng)絡(luò)虛擬化等
問:你剛才說到云計算,近來好像一直在炒作這個,這個東西跟虛擬化有什么關(guān)系呢?
答:虛擬化是云計算的基礎(chǔ),見下圖
(圖片來自微軟mva)
從圖中可以看到,傳統(tǒng)數(shù)據(jù)中心跟云計算(包含私有云和公有云)之間就是隔了一個虛擬化。
因為虛擬化,將傳統(tǒng)數(shù)據(jù)中心的資源集合起來形成一個池,然后以互聯(lián)網(wǎng)為基礎(chǔ)向用戶提供服務(wù),這就是云計算的實質(zhì)。所以虛擬化是現(xiàn)代云計算的基礎(chǔ)(這里說的比較簡略,要詳情了解這個請自行搜索云計算的相關(guān)資料,本處由于涉嫌超綱所以就不多說了)
問:嗯,好像很牛的樣子,那虛擬化跟物理硬件相比性能怎樣呢?
答:由于虛擬化產(chǎn)品比較多,說產(chǎn)品方面的就真的兩天兩夜都說不完,僅僅說技術(shù)方面的。
總的來說,虛擬化技術(shù)分3種:
一種是以JVM(JAVA虛擬機(jī))為代表的程序虛擬化
其結(jié)構(gòu)如下(畫圖畫的有點(diǎn)丑,別見怪)
從圖可以看到通過JVM隔離了系統(tǒng)和來賓,只要對應(yīng)平臺上有JVM,那么其來賓就能運(yùn)行,這種虛擬化的目的是為了跨平臺,所以程序員不需要針對特定平臺或者硬件編寫,只要一次編譯即可隨處運(yùn)行(所以JAVA才如此牛叉)
第二種是以VM Workstation為代表的混合虛擬化,結(jié)構(gòu)如下圖
這種情況下,在系統(tǒng)底層(Ring0層)加入相應(yīng)的驅(qū)動,但在應(yīng)用層(Ring3層)還有對應(yīng)的交互(Ring0是系統(tǒng)內(nèi)核層,優(yōu)先級最高,Ring1-2是系統(tǒng)服務(wù)層,Ring3是應(yīng)用層,優(yōu)先級最低)。換句話說是依靠物理主機(jī)操作系統(tǒng)來模擬硬件,這樣的特點(diǎn)是對物理機(jī)硬件要求低,但性能比較差,“老一輩”的虛擬化產(chǎn)品基本都是用了這種技術(shù),比如微軟的VPC,VMware的Workstation,VirtualBox等。
第三種是現(xiàn)在開始越來越火的bare metal(裸金屬)架構(gòu),其結(jié)構(gòu)如下
對于這種結(jié)構(gòu),可能有人會問,物理機(jī)哪里去了?
這種虛擬化模式是直接在硬件上跑虛擬化管理層(VMM,裸金屬結(jié)構(gòu)的管理層一般也叫Hypervisor)在這種模式下物理機(jī)本身也被當(dāng)作了一個虛擬機(jī),只不過運(yùn)行著物理機(jī)的那塊叫根分區(qū),其他的虛擬機(jī)叫子分區(qū)。
在這種結(jié)構(gòu)下,Hypervisor是運(yùn)行在Ring -1級的,為什么這么說呢?因為運(yùn)行在其上面的所有虛擬機(jī)(含物理機(jī)操作系統(tǒng))是無法感知到自己是運(yùn)行在虛擬層上面的,上面的系統(tǒng)都會以為自己其實是跑在真實的硬件之上。這種結(jié)構(gòu)下的虛擬效率是最高的。關(guān)于這種裸金屬架構(gòu)還有2個比較大的分支,是以VM為代表的胖內(nèi)核以及以微軟為代表的瘦內(nèi)核,至于哪個優(yōu)劣這個還得看具體情況,具體兩者區(qū)別請自行搜索資料(又超綱了)
問:聽你說了一大堆神乎其神的東西,那么虛擬化產(chǎn)品哪一家的比較好呢?
答:這個的話,直接推哪家就有廣告嫌疑了,就分別說說各家的特點(diǎn)
目前虛擬化市場比較大的有3家,分別是VMware,Microsoft,Citrix。
VMware,這是傳統(tǒng)的虛擬化老字號,虛擬化市場的龍頭企業(yè)….(牛吹大了…)
VM作為虛擬化的先驅(qū),很多人認(rèn)識虛擬化就是從他開始的,其技術(shù)沉淀和具體的虛擬化經(jīng)驗是其他廠商所無法比擬的,其產(chǎn)品線齊全口碑好,但其產(chǎn)品往往比較昂貴,而且如果要VM最佳的產(chǎn)品的話還要購買其認(rèn)證硬件,這個往往開支會很大。
Microsoft,這就是操作系統(tǒng)的老字號了,現(xiàn)在這牌子基本無人不知無人不曉,但在虛擬化來說這只能說是一個新軍(不過現(xiàn)在來說其實也算有點(diǎn)資質(zhì)不新了)其有強(qiáng)大的研發(fā)能力導(dǎo)致其后勁十足,其新的Hyper-V比起VM來說一點(diǎn)都不落下風(fēng),且硬件兼容性好(基本上X86的意思就是等同于兼容微軟)而且微軟有一個是其他廠商無法比擬的優(yōu)勢就是其產(chǎn)品整合程度是最高的(試問有哪家公司能提供從系統(tǒng)到應(yīng)用軟件一條龍產(chǎn)品的?)
Citrix,這個基本來說就是應(yīng)用虛擬化的王者,其桌面虛擬化也更接近于應(yīng)用虛擬化,但由于筆者沒用過,僅僅了解到他應(yīng)用虛擬化是很牛(本著沒用過的人無法做過多評價的原則所以保留意見)。
附上2012年虛擬化占有率的餅圖
(圖片引用自IT168)
問:說了那么一大堆,那么我們企業(yè)是否應(yīng)該進(jìn)行虛擬化呢?虛擬化是否就一定是好的呢?
答:從長遠(yuǎn)來看,虛擬化是肯定能帶來效益的,但具體來說,如果你公司規(guī)模比較大且服務(wù)器利用率不高則應(yīng)該優(yōu)先進(jìn)行虛擬化,而如果公司規(guī)模不大服務(wù)器也沒幾臺那就沒多大需要虛擬化的必要了。
另外虛擬化不見得總是好的,因為雖然虛擬化能帶來硬件利用率提升并且減少硬件采購,增加靈活度減少IT管理人員,但也導(dǎo)致了在軟件方面的花費(fèi)增大,增加了管理的復(fù)雜度,對管理人員的要求也更高。
(圖片引用自微軟MVA)
具體是否應(yīng)該虛擬化,那還是要請管理層仔細(xì)斟酌權(quán)衡各個利弊之后決定,但無論怎樣,在稍微有點(diǎn)規(guī)模之后,虛擬化的效益就會慢慢體現(xiàn)出來,且其對數(shù)據(jù)中心的未來發(fā)展以及為了可能的向云計算過渡來說是有顯而易見的好處的。
轉(zhuǎn)載于:https://blog.51cto.com/virtualcca/1170985
總結(jié)
- 上一篇: NSIS打包软件(一)
- 下一篇: 网络排错模型之我见----模型,基线,协