【云深知處】NFV理論與實踐(2)-虛擬化

記得剛出學校的第一份工作需要了解很多操作系統:Linux系統、Solaris系統等等。而自己當時手里只有一臺可憐的T20筆記本電腦(華為術語:便攜機)。于是,自己找來VMWare軟件,在筆記本電腦的Windows Professional操作系統上先裝上VMWare軟件。然后在VMWare軟件上創建“虛擬機”,也就是使用軟件在Windows操作系統的筆記本電腦上虛擬出兩臺主機,然后在這兩臺主機上分別安裝Linux和Solaris操作系統。
圖片來自vmware-converter.com,有修改
當時的VMWare軟件與運行在筆記本電腦操作系統上的其他應用軟件并沒有區別。打開VMWare軟件后,可以創建新的、或運行已經創建好的虛擬機。
創建虛擬機時可以為該虛擬機分配CPU、內存和硬盤等硬件資源。這些資源都是從“宿主”的筆記本電腦上“挖”出來的。你可以選擇虛擬機占用的硬盤空間在創建時就劃分給虛擬機,也可以隨著虛擬機內使用的存儲空間越來越大來動態擴充虛擬機在宿主機上占用的硬盤空間。
虛擬機一旦運行,筆記本電腦就變得非常“慢”,幾乎做不了其他的工作。虛擬機上所有的計算、存儲以及收發包的工作,都需要通過VMWare軟件轉換后轉到真正的Windows以及筆記本電腦硬件上進行處理。在筆記本電腦看來,是VMWare軟件在使用CPU的計算、內存和硬盤的存儲、網卡的網絡等資源。筆記本電腦的操作系統并不能意識到VMWare中Linux或者Solaris的存在。這種虛擬化技術后來被稱為寄居式全虛擬化技術。(Type-2或者hosted hypervisor)
處在最底層直接與硬件打交道的宿主操作系統被稱為Host OS;虛擬機上安裝的操作系統被稱為Guest OS;虛擬機上安裝的軟件被稱為Guest APP;
實現虛擬化的功能單元被稱為VMM( virtual machine monitor,虛擬機監視器 ),又被稱為Hypervisor。在上面的例子中,Hypervisor是軟件,但Hypervisor也可以是硬件或者固件。
A hypervisor or virtual machine monitor (VMM) is a piece of computer software, firmware or hardware that creates and runs virtual machines.
但這種虛擬機的實現非常低效:上層Guest APP的處理需要逐層轉換,發送到底層進行處理,反方向也是一樣。
所以發展出其他的虛擬化技術:Hypervisor直接運行在硬件上,直接與硬件交互提升效率。這種虛擬化技術被稱為type1,或者native裸金屬虛擬化(bare-metal hypervisors)。
Hypervisor在服務器上啟動后,為創建在其上面的每一臺虛擬機分配配置的內存、CPU、網絡和磁盤資源,并加載所有虛擬機的Guest OS。
除上述type1和type2兩種虛擬化技術外,Hypervisor可以在部分功能上與硬件直接交互,提升性能。比如在CPU性能較差的網絡IO方面與硬件直接交互。這種虛擬化技術被稱為硬件輔助虛擬化技術。
華為使用FusionSphere實現虛擬化功能。FusionSphere將物理機的處理器、內存、存儲器及網絡資源抽象化為多臺虛擬機。(Fusion應該念“few針”,目前發音方式太多,影響品牌傳播)。
嚴格來說,華為的Hypervisor虛擬化功能是UVP(Unified Virtualization Platform)完成的。UVP通常都集成在FusionSphere中,這種情況下,在客戶界面上只呈現FusionSphere即可。對上層業務來說,是由FS提供的虛擬化能力。
但FusionSphere的理想太遠大,想做增強的虛擬層“平臺”,可以適配其他Hypervisor,最終實現功能增強的虛擬層。
目前市場主要廠商及產品:VMware vSphere、微軟Hyper-V、Citrix XenServer 、IBM PowerVM、Red Hat Enterprise Virtulization、Huawei FusionSphere、開源的KVM、Xen、VirtualBSD等。
一句話,虛擬化解決了“將大分小”,將大粒度資源分割為眾多小粒度資源,使得整塊的資源可以分給不同的功能、不同的用戶。今天的IT服務器,已經走在虛擬化的路上。早期的“單機版”服務器,一臺服務器上可以安裝不同的應用,也可以實現對硬件資源的復用,為什么還要搞虛擬化?非虛擬化的服務器安裝多種應用軟件存在如下問題:
1.?不同應用安裝在相同的操作系統上,不能實現有效的業務隔離。而虛擬化通過Hypervisor構建不同的虛擬硬件資源環境,安裝不同的操作系統,實現不同應用的操作系統層級的隔離。
2.??應用以及操作系統和硬件緊耦合。不同的應用需要在操作系統上做參數優化,并且與硬件做適配。所以,在傳統IT架構下,當一個服務器或者操作系統出現問題時,應用無法迅速切換到另一個操作系統及硬件上。需要管理員在新的硬件上重新安裝和配置操作系統和應用。
虛擬化架構下,Hypervisor通過對底層能力的抽象,將硬件能力標準化為計算、存儲和網絡資源。虛擬化之后,Guest OS看到的硬件(Hypervisor虛擬之后的硬件)均是相同的。
當一套設備出現故障時,應用可以快速遷移到其他的硬件系統上,而不必考慮系統間的硬件結構差異。
虛擬化通過Hypervisor層將能力和功能分開,屏蔽了硬件對能力實現的差異,使得功能可以在不同類型的硬件之間快速復制,實現了業務能力的快速遷移。這就是IT服務器虛擬化(Server Virtualization)的原因。
今天網絡功能虛擬化NFV的全稱是Network Function Virtualization。同通服務器的虛擬化一樣,NFV實現了網絡功能的虛擬化。NFV的架構是將網絡功能(路由轉發、移動性管理、會話管理)從硬件中解耦(decouple)。網絡功能由軟件實現,安裝在被Hypervisor抽象標準化之后的虛擬硬件上。
所以,網絡功能虛擬化(NFV)的是CT行業參考IT行業的方式實現網絡設備功能的虛擬化,實現分層解耦。
兩個行業同樣經歷的虛擬化過程。只是IT行業原先分層做得稍好,且一直架構在通用硬件上,給人的感覺是“順理成章”。CT行業虛擬化與底層硬件通用化同時到來,虛擬化基于通用硬件實現。從軟件架構和硬件上都完全發生了變化,所以就會讓人感覺到 “滄海桑田”了。
虛擬化
版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。
版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。