走出NFV與虛擬機(jī)誤區(qū) 或避免再陷“軟件壟斷”

責(zé)任編輯:editor005

作者:顧炯

2017-05-04 14:20:51

摘自:通信世界網(wǎng)

大多數(shù)設(shè)備廠商提出,運(yùn)營(yíng)商實(shí)現(xiàn)NFV所需要的虛擬化軟件必須是本廠提供。這點(diǎn)類似于運(yùn)營(yíng)商傳統(tǒng)核心網(wǎng)網(wǎng)元要采用同一個(gè)廠家提供的服務(wù)器要求,是典型的“捆綁銷售”,是“軟件壟斷”的前奏。

大多數(shù)設(shè)備廠商提出,運(yùn)營(yíng)商實(shí)現(xiàn)NFV所需要的虛擬化軟件必須是本廠提供。這點(diǎn)類似于運(yùn)營(yíng)商傳統(tǒng)核心網(wǎng)網(wǎng)元要采用同一個(gè)廠家提供的服務(wù)器要求,是典型的“捆綁銷售”,是“軟件壟斷”的前奏。

IHS 近期發(fā)布的報(bào)告顯示,包括硬件、軟件和服務(wù)在內(nèi)的全球NFV市場(chǎng)規(guī)模,將在2020年達(dá)到155億美元。近年來(lái),移動(dòng)運(yùn)營(yíng)商在軟件領(lǐng)域的投入要遠(yuǎn)遠(yuǎn)大于在服務(wù)器、存儲(chǔ)以及交換機(jī)硬件方面的投入,足以見(jiàn)得電信行業(yè)想通過(guò)NFV技術(shù)將重心從硬件轉(zhuǎn)移到軟件的決心。

不過(guò)運(yùn)營(yíng)商在發(fā)展NFV的過(guò)程中,由于對(duì)新興技術(shù)理解不足、現(xiàn)網(wǎng)商用經(jīng)驗(yàn)匱乏等原因,會(huì)產(chǎn)生諸多誤區(qū)。比如,很多運(yùn)營(yíng)商認(rèn)為NFV需要用虛擬機(jī)承載,并且只能用某家設(shè)備廠商提供的軟件虛擬出來(lái)的虛擬機(jī)。這就造成很多設(shè)備廠商打著“底層優(yōu)化”的幌子,對(duì)運(yùn)營(yíng)商進(jìn)行產(chǎn)品的“捆綁銷售”。本文將針對(duì)“NFV與虛擬機(jī)的誤區(qū)”進(jìn)行詳細(xì)解析。

虛擬機(jī)應(yīng)按需求部署

在網(wǎng)絡(luò)架構(gòu)中,虛擬機(jī)的出現(xiàn)是因?yàn)槲锢矸?wù)器處理能力太強(qiáng),某個(gè)應(yīng)用獨(dú)立占用過(guò)于浪費(fèi),所以將物理機(jī)的處理能力“一分為N”,在物理服務(wù)器上部署一個(gè)虛擬化軟件,將物理服務(wù)器的CPU、內(nèi)存和I/O設(shè)備進(jìn)行“虛擬化”后再次共享,模擬出多臺(tái)虛擬的服務(wù)器。

走出NFV與虛擬機(jī)誤區(qū) 或避免再陷“軟件壟斷”

但是虛擬化的過(guò)程本身是需要消耗不小的性能。為了模擬出一個(gè)“虛擬機(jī)”,也需要額外的附件,這些附件包括虛擬化軟件、東西防火墻、防病毒軟件等。這些附件都是需要額外購(gòu)買的產(chǎn)品,并且運(yùn)行這些軟件還需要占用物理服務(wù)器的計(jì)算資源,并且消耗資源。

虛擬化的目的是提高資源利用率,但不一定節(jié)約成本,只有合理的虛擬化才能達(dá)到節(jié)約成本的目的。虛擬機(jī)的一些特性,如HA((High Availability,高可用性)、遷移等,確實(shí)會(huì)帶來(lái)應(yīng)用管理上的便捷,但這是虛擬化帶來(lái)的“副產(chǎn)品”,如果為了“副產(chǎn)品”而選擇采用虛擬機(jī),比如,一個(gè)服務(wù)器上只開設(shè)一臺(tái)虛擬機(jī)或少量虛擬機(jī),那就是資源浪費(fèi)。

云計(jì)算的理念是按需分配,并不是一味追求全部使用虛擬機(jī)。因此我建議,對(duì)計(jì)算資源需求不大的小應(yīng)用適合采用虛擬化技術(shù),而對(duì)計(jì)算能力要求大于服務(wù)器能提供能力的四分之一以上的應(yīng)用,建議采用物理服務(wù)器。另外,由于不少傳統(tǒng)運(yùn)營(yíng)商的基礎(chǔ)核心網(wǎng)元承擔(dān)著基礎(chǔ)通信任務(wù),通俗地說(shuō)就是“很忙”,對(duì)計(jì)算、網(wǎng)絡(luò)帶寬都有很高的要求,在這種情況下,就要根據(jù)不同網(wǎng)元的實(shí)際情況,選擇物理機(jī)或虛擬機(jī)。甚至可以在同一個(gè)網(wǎng)元上采用物理機(jī)+虛擬機(jī)的混合部署模式,比如日?;A(chǔ)量用物理機(jī)承載,突發(fā)量采用虛擬機(jī)承載。

采用同廠家虛擬化軟件恐再陷壟斷

大多數(shù)設(shè)備廠商提出,運(yùn)營(yíng)商實(shí)現(xiàn)NFV所需要的虛擬化軟件必須是本廠提供。這點(diǎn)類似于運(yùn)營(yíng)商傳統(tǒng)核心網(wǎng)網(wǎng)元要采用同一個(gè)廠家提供的服務(wù)器要求,是典型的“捆綁銷售”,是“軟件壟斷”的前奏。

因?yàn)閼?yīng)用并不是直接部署在服務(wù)器上,而是部署在操作系統(tǒng)上。從架構(gòu)上來(lái)看,物理機(jī)和虛擬機(jī)的架構(gòu)完全一樣,虛擬化層只是對(duì)原來(lái)的硬件做了點(diǎn)“手腳”。除了CPU、網(wǎng)絡(luò)等資源是按照“時(shí)分”外,其他的如內(nèi)存、存儲(chǔ)等都是按照“空分”來(lái)實(shí)現(xiàn)。虛擬化層的“魔術(shù)”會(huì)讓操作系統(tǒng)完全區(qū)分不出用的是物理機(jī)還是虛擬機(jī),更何況是加載在操作系統(tǒng)之上的應(yīng)用。

而虛擬化軟件的差別只在于其本身運(yùn)行的穩(wěn)定性、安全性和兼容性。對(duì)于一個(gè)成熟的虛擬化軟件來(lái)說(shuō),只要是在x86服務(wù)器上能正常運(yùn)行的操作系統(tǒng),同樣就可以在虛擬機(jī)上運(yùn)行。目前,很多設(shè)備廠商的虛擬化軟件其實(shí)就是基于開源的XEN或者KVM(Linux虛擬化技術(shù)用戶目前可選擇的兩種免費(fèi)開源管理程序)上改造而來(lái),但這種類型的虛擬化軟件應(yīng)用場(chǎng)景少,也沒(méi)有經(jīng)過(guò)大范圍的驗(yàn)證,反而風(fēng)險(xiǎn)更大。另外,如果不同的NFV網(wǎng)元采用不同虛擬化軟件、建設(shè)不同的資源池,不但資源共享無(wú)從談起,可能再次形成了各種資源池的“豎井”,與傳統(tǒng)的服務(wù)器“豎井”架構(gòu)毫無(wú)區(qū)別,最后結(jié)果就是,好不容易打破的硬件“豎井”又改頭換面出現(xiàn)了。

虛擬機(jī)遷移功能并非代表高可靠保障

另外,大多數(shù)人也會(huì)對(duì)虛擬機(jī)的“遷移”(vMotion)功能產(chǎn)生誤區(qū)。遷移是虛擬機(jī)帶來(lái)的最重要特性。遷移是一項(xiàng)資源管理技術(shù),不能替代原來(lái)的高可靠性技術(shù)(如HA等)。遷移可以分為“熱遷移”和“冷遷移”。虛擬機(jī)的“冷遷移”本質(zhì)上就是虛擬機(jī)的HA,即每臺(tái)虛擬機(jī)和管理平臺(tái)都有“心跳”,當(dāng)管理平臺(tái)發(fā)現(xiàn)某臺(tái)虛擬機(jī)失去“心跳”,就會(huì)在合適的物理機(jī)上重建這臺(tái)虛擬機(jī)。這個(gè)過(guò)程實(shí)際上需要中斷業(yè)務(wù),而業(yè)務(wù)恢復(fù)的時(shí)間也是分鐘級(jí)的。

“熱遷移”指的是將一個(gè)正常的處于服務(wù)中的虛擬機(jī),從一臺(tái)物理服務(wù)器搬家到另一臺(tái)物理服務(wù)器的技術(shù)。虛擬機(jī)的“熱遷移”其實(shí)也是虛擬機(jī)本身維護(hù)手段,分為主動(dòng)熱遷移和被動(dòng)熱遷移。主動(dòng)熱遷移是維護(hù)人員為了維護(hù)主機(jī)等原因?qū)⑻摂M機(jī)遷移到其他服務(wù)器上;被動(dòng)熱遷移是指當(dāng)虛擬機(jī)所在的物理機(jī)利用率達(dá)到設(shè)置的閥值后采取的減負(fù)措施,遷移走的是本物理機(jī)上最空閑的虛擬機(jī)。不管是主動(dòng)還是被動(dòng)熱遷移,不是每次遷移都會(huì)成功的,CPU和內(nèi)存利用率高的虛擬機(jī)的遷移往往經(jīng)過(guò)長(zhǎng)時(shí)間的嘗試后失敗。

也就是說(shuō),不管是冷遷移還是熱遷移,都無(wú)助于應(yīng)用訪問(wèn)進(jìn)行故障切換和快速恢復(fù)。遷移的目的是盡可能方便地為維護(hù)人員提供資源調(diào)度、轉(zhuǎn)移手段,當(dāng)物理服務(wù)器維護(hù)時(shí)需要關(guān)機(jī)重啟,當(dāng)物理服務(wù)器出現(xiàn)繁忙,當(dāng)數(shù)據(jù)中心需要擴(kuò)容重新安排資源,這種時(shí)候遷移就有用武之地了,但虛擬機(jī)的遷移并不給應(yīng)用帶來(lái)任何的高可靠或自愈特性。

虛擬機(jī)無(wú)法向應(yīng)用提供彈性伸縮能力

虛擬機(jī)在線“縱向”擴(kuò)容能力(在線增加CPU、內(nèi)存等資源)并不是虛擬機(jī)的貢獻(xiàn),而是操作系統(tǒng)的“功勞”。但并不是所有的操作系統(tǒng)都可以支持在線擴(kuò)容,并且所有的操作系統(tǒng)都不支持在線“縱向”縮容(在線減少CPU、內(nèi)存等資源),要完成縮容操作需要重啟虛擬機(jī),也就是需要中斷業(yè)務(wù),所以虛擬機(jī)并沒(méi)有像大家以為的那樣靈活。如果想要簡(jiǎn)單地利用虛擬機(jī)的“彈性”,是做不到基于實(shí)際業(yè)務(wù)需求進(jìn)行自動(dòng)部署、彈性伸縮的。

如果真想實(shí)現(xiàn)應(yīng)用的“橫向”彈性伸縮,可以借助負(fù)載均衡模式。負(fù)載均衡是網(wǎng)絡(luò)設(shè)備本身提供的,他們識(shí)別的是IP地址和端口號(hào),對(duì)于物理機(jī)和虛擬機(jī)來(lái)說(shuō)效果都是一樣的。只是虛擬機(jī)可以更省些資源,因?yàn)樘摂M機(jī)在關(guān)機(jī)的時(shí)候就變成共享存儲(chǔ)里的一個(gè)文件,并不需要占用實(shí)際的物理資源。

不管是“縱向”還是“橫向”伸縮能力都要結(jié)合應(yīng)用本身的特點(diǎn),而不是簡(jiǎn)單的監(jiān)控CPU和內(nèi)存。需要利用一些業(yè)務(wù)系統(tǒng)收集的日常數(shù)據(jù),進(jìn)行數(shù)據(jù)分析,建立合適的模型,防止誤判,實(shí)現(xiàn)彈性伸縮。實(shí)際應(yīng)用中,特別是“縮容” 可能會(huì)影響到內(nèi)存里的數(shù)據(jù)和進(jìn)程,隨便重啟或關(guān)機(jī)也會(huì)中斷或影響業(yè)務(wù)。

換了“馬甲”的NFV改造意義不大

目前,在運(yùn)營(yíng)商N(yùn)FV改造過(guò)程中,出現(xiàn)了很多“為了改造而改造”的現(xiàn)象。比如原來(lái)是設(shè)備上一張板卡,就對(duì)應(yīng)一臺(tái)虛擬機(jī)的的改造,把虛擬機(jī)直接封裝在容器里進(jìn)行容器部署的改造。特別是核心網(wǎng)元的改造,因?yàn)樘峁┑氖瞧毡榉?wù),日常的業(yè)務(wù)量巨大,硬件改造成為軟件后,本身的處理能力實(shí)際上是下降的,這種情況就需要一個(gè)能夠符合軟件定義特點(diǎn)的架構(gòu)和實(shí)現(xiàn)方式。

特別強(qiáng)調(diào)的是,“容器”的微服務(wù)架構(gòu)可以幫助解決核心網(wǎng)元長(zhǎng)期以來(lái)的“升級(jí)影響大”、“新業(yè)務(wù)開發(fā)慢”等難題。但是真正采用容器的微服務(wù)架構(gòu),需要將原來(lái)的應(yīng)用體系完全推倒重來(lái),而且短時(shí)間內(nèi)也達(dá)不到現(xiàn)有系統(tǒng)的功能和穩(wěn)定性。上述成本是運(yùn)營(yíng)商不愿意承擔(dān)的,所以現(xiàn)在運(yùn)營(yíng)商還是喜歡用“新瓶子裝老酒”,但這樣換了“馬甲”的NFV改造意義不大。

鏈接已復(fù)制,快去分享吧

企業(yè)網(wǎng)版權(quán)所有?2010-2024 京ICP備09108050號(hào)-6京公網(wǎng)安備 11010502049343號(hào)