1.虛擬化技術的一般性描述
從云計算提出以來虛擬化技術就被提到了很高的地位,虛擬化技術被稱為云計算的核心技術,但廣義的來講虛擬化技術的范圍非常的寬,它不但是云計算的核心技術、同樣也是計算機科學的核心技術、甚至是整個工業領域的核心技術。
我們在開汽車的時候其實就用到了機械的虛擬化技術,汽車機械運動的復雜形態被邏輯上簡化為方向盤、油門、剎車、離合器的簡單運動方式,這種簡化使汽車機械系統的復雜性被全面屏蔽,方向盤、油門、剎車、離合器成為了人機交互設備。
不只在工業領域就是在金融領域也有虛擬化技術的身影,如復雜的股市變化規律被幾個簡單的指數所描述,通過指數的變化就能反應股票市場的運行情況,甚至整個經濟的運行規律。
物理學也虛擬化技術用的最多的地方,原子核內部的復雜運動情況通過各種宏觀物理設備如:拉曼譜、正電子譜、核磁共振等表現出來,其實我們誰也沒有真正的看到原子核的形態,但我們能通過對這些物理量的分析得到原子核的結構,那么這些物理設備就實現了對原子核內部結構的虛擬化工作。
以上的描述我們可以看出,虛擬化技術是一門應用很廣泛的技術,甚至可以說是一門相當基礎的學科。廣義的定義虛擬化技術可以這么來看:虛擬化技術就是一種邏輯簡化技術,實現物理層向邏輯層的變化。從這個定義來看一個系統采用虛擬化技術后其對外表現出的運動方式是一種邏輯化的運動方式,而不是真實的物理運動方式。所以采用虛擬化技術能實現對物理層運動復雜性的屏蔽,使系統對外運行狀態呈現出簡單的邏輯運動形態。
2.虛擬化角度下的云計算架構
虛擬化技術是一項非常綜合的技術,對于計算機科學來說大部分工作都是在做虛擬化的工作,網絡的七層協議是對物理通訊的虛擬化、傳統的操作系統是對單個計算機物理硬件的虛擬化、計算機高級語言是對機器語言的虛擬化、人工智能則是更高級的虛擬化技術。計算機科學的虛擬化層次我們用下圖進行了簡單的描述,節點的物理硬件和網絡物理硬件通過多層虛擬化的邏輯簡化過程形成了彈性化的計算、存儲和網絡帶寬三者整合的虛擬資源池,也就是我們今天講的云計算模式。
云計算的概念位與整個邏輯的最上層,是底層物理硬件經過多次虛擬化抽象而形成的一個邏輯概念。這也就說明了為什么云計算是未來的幾年的技術發展方向,因為技術的發展就是一個不斷抽象簡化的過程,越上層的技術邏輯就是越高級的邏輯,因為這個邏輯是站在了很多巨人肩上的,這些巨人就是下層的虛擬化技術。
所以可以說云計算系統是運行在一個多層虛擬化協議棧上的高度抽象系統,云計算不是新瓶裝舊酒,而是更高一級的技術發展,這個酒是面少不了老酒的調味作用。
3.用戶和云計算應用開發人員眼中的云計算
用戶眼中的云計算就是通過層層虛擬化后的一個邏輯形象,就像汽車駕駛員看到的方向盤和油門一樣,用戶只需要生活在一個他們熟悉的邏輯環境下就行了,這和電影Matrix中的描述的一樣:用戶自己應該根本不知道自己是存在于一個虛擬的邏輯環境中的。用戶不用知道方向盤是如何使汽車發生轉向的,也不用知道油門是如使汽車加速的,這是汽車上的一套機械電子虛擬化層去完成的工作。油門的踩下邏輯上對應用速度的增加,方向盤的順時針運動邏輯上對應于右轉;而真實的物理過程卻是油門的踩下對應給油量的增加,方向盤的順時針運動對應汽車前輪的右偏。在這個比喻下用戶看到的云計算系統就是一個可以按自己目前使用習慣使用的一臺功能全面的邏輯計算機。
從云計算應用開發人員的眼中看來云計算就是一批工作在不同邏輯層的API,他們要做的就是調用API完成自己的應用邏輯,他們也不用關心下層的邏輯是如何運行的,工作在不同邏輯層的開發人員只負責自己這一層的應用邏輯。如應用開發人員要存儲一個文件只需要調用一個write()函數就行了,文件的分割、備份、安全、網絡傳送由下層邏輯負責。應用開發人員本身做的也是虛擬化工作,只是他們是在向自己的上一層提供虛擬化邏輯。
總結
從虛擬化的角度看云計算可以使我們對云計算的本質有一個清晰的邏輯,虛擬化技術遠比我們上面描述的框架復雜,云計算是技術發展的趨勢但也面臨著巨大的技術壁壘,需要整個產業的全面協作,決不是一兩家虛擬化企業能解決的問題,對于我國來說可能是一個戰略性的產業方向,需要從國家層面來解決產業鏈及協議棧的問題。