虛擬化大獲成功,是因?yàn)樗鼘?shí)現(xiàn)了最初承諾的優(yōu)勢(shì),包括優(yōu)化硬件利用率,減少服務(wù)器泛濫和最大限度增加服務(wù)器硬件投資回報(bào)。這是通過(guò)以下途徑實(shí)現(xiàn)的:對(duì)服務(wù)器的計(jì)算資源(CPU和RAM內(nèi)存)進(jìn)行抽象化和虛擬化,供多種虛擬化應(yīng)用工作負(fù)載共享。迄今為止,業(yè)內(nèi)部署的虛擬機(jī)(VM)數(shù)量已達(dá)到4000萬(wàn)1,該技術(shù)的受歡迎程度可見(jiàn)一斑。
平滑的非破壞性虛擬機(jī)(VM)遷移技術(shù)于2003年面世,隨之而來(lái)的是出色的IT靈活性——以虛擬機(jī)移動(dòng)性和靈活的虛擬機(jī)部署為基礎(chǔ)。該技術(shù)的應(yīng)用范圍和功能不斷擴(kuò)展,變得更完善更快速——歷經(jīng)10年的發(fā)展,我們才能夠以最初設(shè)想的方式實(shí)現(xiàn)虛擬化的全部潛力。
虛擬化的網(wǎng)絡(luò)挑戰(zhàn)
然而,盡管我們一直努力開(kāi)發(fā)虛擬機(jī)遷移相關(guān)的功能,但網(wǎng)絡(luò)挑戰(zhàn)越來(lái)越嚴(yán)峻。其中包括:
· 虛擬機(jī)移動(dòng)性導(dǎo)致的繁雜網(wǎng)絡(luò)重新配置
· 將虛擬化擴(kuò)展到2層邊界之外的限制
· 擴(kuò)展安全的專用網(wǎng)絡(luò)所需的虛擬LAN(VLAN)ID不足
因此,實(shí)現(xiàn)真正IT靈活性的承諾只兌現(xiàn)了一部分。例如,用戶面臨兩種選擇:應(yīng)對(duì)全新類型的服務(wù)器泛濫,即虛擬服務(wù)器泛濫;或者在每次進(jìn)行虛擬機(jī)遷移后花費(fèi)1800美元2來(lái)重新配置多個(gè)網(wǎng)元。有證據(jù)顯示,用戶仍在堅(jiān)持實(shí)施工作負(fù)載虛擬化,以降低硬件成本,但在實(shí)現(xiàn)真正的靈活性方面并沒(méi)有什么進(jìn)展。
一個(gè)必然的結(jié)果是,虛擬機(jī)遷移和虛擬機(jī)間通信一般限于同一個(gè)機(jī)架或幾個(gè)機(jī)架(屬于同一個(gè)2層子網(wǎng))中的主機(jī)服務(wù)器,這是虛擬機(jī)2層通信要求所決定的。
最后,4096(實(shí)際上是4094+2個(gè)有限制的ID)VLANID的限制使我們無(wú)法向私有云基礎(chǔ)架構(gòu)中添加更安全的隔離用戶組,或向公共云/混合云中添加租戶。
重疊網(wǎng)絡(luò)成為救世主
重疊網(wǎng)絡(luò)的面世和部署最終使IT經(jīng)理們能夠釋放虛擬化的全部潛力,交付真正的IT靈活性——雖然迄今為止仍受到計(jì)算和存儲(chǔ)基礎(chǔ)架構(gòu)(程度稍輕一些)的限制。順理成章的是,一項(xiàng)VmwareCIO調(diào)查3顯示,將虛擬化擴(kuò)展到網(wǎng)絡(luò)和存儲(chǔ)基礎(chǔ)架構(gòu)是2015年的一項(xiàng)首要IT目標(biāo)。
我們完全可以做個(gè)這樣的類比,從2003年到2012年前后,人們一直努力通過(guò)數(shù)據(jù)中心虛擬化來(lái)實(shí)現(xiàn)真正無(wú)限制的IT靈活性;而1985年后的10年里從DOS遷移到Windows95,在增強(qiáng)界面體驗(yàn)方面的效果要遠(yuǎn)遠(yuǎn)好于前者!
什么是重疊網(wǎng)絡(luò)?
從根本上講,重疊網(wǎng)絡(luò)就是在3層網(wǎng)絡(luò)基礎(chǔ)上構(gòu)建虛擬2層(L2)網(wǎng)絡(luò),這就是”重疊”一詞的由來(lái)。來(lái)自虛擬機(jī)的流量被映射到該虛擬網(wǎng)絡(luò)中。網(wǎng)絡(luò)數(shù)據(jù)包封裝為MAC-in-IP格式,然后通過(guò)現(xiàn)有基礎(chǔ)架構(gòu)路由。
在如何構(gòu)建重疊網(wǎng)絡(luò)方面,目前有兩項(xiàng)建議(由于廣泛的行業(yè)支持,我們大可稱之為”事實(shí)”標(biāo)準(zhǔn))提交給互聯(lián)網(wǎng)工程工作組(IETF)。這就是微軟支持(從WindowsServer2012開(kāi)始)的使用通用路由封裝協(xié)議的NetworkVirtualization(NVGRE)和VMware支持(從vSphere 5.1開(kāi)始)的Virtual eXtensible Local Area Networks(VXLAN)。這兩種標(biāo)準(zhǔn)有著相同的目的:在基礎(chǔ)架構(gòu)內(nèi)實(shí)現(xiàn)虛擬工作負(fù)載的平滑遷移,幫助打造大規(guī)模和云規(guī)模虛擬機(jī)部署。
· NVGRE將以太網(wǎng)2層(L2)幀封裝到GRE數(shù)據(jù)包中。GRE是1994年首次提出的一種協(xié)議4。
[page]
· VXLAN將以太網(wǎng)2層(L2)幀封裝到UDP數(shù)據(jù)包中。VXLAN標(biāo)準(zhǔn)的一個(gè)優(yōu)勢(shì)是它還定義了一些控制平面功能。
這兩種建議都將以太網(wǎng)L2幀封裝到IP數(shù)據(jù)包中,并插入一個(gè)新的24位虛擬網(wǎng)絡(luò)標(biāo)識(shí)符(VNI)。這些標(biāo)識(shí)符使運(yùn)行的2層(L2)子網(wǎng)數(shù)量可超過(guò)1600萬(wàn);與前面提到的4,094個(gè)VLANID的限制相比,這意味著可擴(kuò)展性得到了大幅度提高。下圖顯示了VXLAN解決方案的概念拓?fù)鋱D。
解決與虛擬機(jī)移動(dòng)性相關(guān)的核心問(wèn)題為什么花了這么長(zhǎng)時(shí)間?
從技術(shù)層面講,重疊網(wǎng)絡(luò)本身并沒(méi)有什么特別復(fù)雜難懂的技術(shù),并不是這一點(diǎn)推遲了它的面世。重疊網(wǎng)絡(luò)的兩大關(guān)鍵技術(shù)創(chuàng)新,即隧道(tunneling)和MAC-in-IP封裝,本可以早些實(shí)現(xiàn),幫助減輕上面提到的問(wèn)題。
例如,重疊傳輸虛擬化(OTV)實(shí)現(xiàn)了在3層擴(kuò)展2層域的相同目標(biāo);思科早在2009年5就在其交換機(jī)中開(kāi)始支持廣域網(wǎng)(WAN)功能;與虛擬專用LAN服務(wù)相關(guān)的一個(gè)類似行業(yè)標(biāo)準(zhǔn)化草案早在2006年6就提交給了IETF。
盡管如此,我們還是相信老話說(shuō)的,從2012年開(kāi)始的重疊網(wǎng)絡(luò)部署,是一件“晚做總比不做好”的事情。
虛擬機(jī)移動(dòng)性–結(jié)果好,萬(wàn)事好
重疊網(wǎng)絡(luò)技術(shù)的面世是不是意味著所有虛擬機(jī)遷移相關(guān)問(wèn)題都迎刃而解,IT靈活性問(wèn)題不復(fù)存在?確實(shí),兩種常用的重疊網(wǎng)絡(luò)格式在虛擬化程度漸高的數(shù)據(jù)中心內(nèi)日益受歡迎,可實(shí)現(xiàn)虛擬化技術(shù)的全部?jī)r(jià)值,同時(shí)幫助構(gòu)建大型可擴(kuò)展網(wǎng)絡(luò)。
然而,虛擬機(jī)移動(dòng)性和網(wǎng)絡(luò)重新配置問(wèn)題的解決又帶來(lái)了新的麻煩。在軟件中實(shí)施重疊網(wǎng)絡(luò)會(huì)增加服務(wù)器的CPU負(fù)擔(dān),占用通過(guò)虛擬化實(shí)現(xiàn)工作負(fù)載整合的資源!
在選擇服務(wù)器的網(wǎng)絡(luò)適配器(NIC)時(shí)深思熟慮,慎重選擇,可以緩解這一問(wèn)題。
建議:使服務(wù)器網(wǎng)絡(luò)I/O選擇成為戰(zhàn)略決策
大多數(shù)領(lǐng)先的網(wǎng)絡(luò)接口卡(NIC)適配器都包含一套TCP/IP卸載功能,以最大限度地降低服務(wù)器CPU占用率,進(jìn)而提高虛擬化密度,最大限度地增加服務(wù)器投資回報(bào)。然而,如果沒(méi)有專門(mén)設(shè)計(jì)的重疊網(wǎng)絡(luò)卸載支持功能,適配器的這些TCP/IP卸載功能將會(huì)“形同虛設(shè)”。這些適配器可以將CPU利用率提高50%,大大提高服務(wù)器效率和虛擬機(jī)可擴(kuò)展性。
選擇確定可支持重疊網(wǎng)絡(luò)卸載的NIC平臺(tái),就可以使您的數(shù)據(jù)中心面向未來(lái),幫助在將來(lái)輕松擴(kuò)展虛擬化項(xiàng)目范圍,順利開(kāi)始實(shí)施私有云或混合云基礎(chǔ)架構(gòu)。
為了使虛擬化成為真正有效的IT靈活性工具,您已經(jīng)等了10年;現(xiàn)在,您還愿意因?yàn)椴幻髦堑腘IC選擇而繼續(xù)等待嗎?