1、前言
題目并不吸引人,主要是作者犯懶,羅列了一下關鍵詞而已,當然好處是一看就知道文章要說啥。
簡單說下結構,首先講講云計算,其次是數據中心,再然后是網絡,重點還是技術。內容是循序漸進的,可以理解前面每個詞都是后面詞的定語。
本文希望能夠幫讀者對云計算的數據中心的網絡的技術建立起全面的結構性認識,因此除了總體思路的描述外,在介紹過程中也會力爭用三言兩語對前面部分中涉及的每個技術點都有所說明,至少讓人明白這個東東怎么來的,要干啥和怎么干。但由于受篇幅所限,無法做到很詳細,大家如果對某個技術點真感興趣時,還是去網上找些更細節的資料來理解,本文是打算沒有寫成一本書的。
力爭做到讓文檔讀起來不感到枯燥吧,對作者來說那是相當有挑戰的。
2、云計算
最早接觸這個詞好像是06年了,當時也是剛剛開始接觸數據中心不久,這幾年眼睜睜看著它被炒作得一塌糊涂,現在已經成為非常給力的一個概念。和別人談數據中心要是不提云計算,你還真不好意思張這個嘴。
服務器廠商在喊云計算,網絡、操作系統、應用軟件甚至存儲廠商都在喊。大家各喊各的,讓我們感覺聽上去都有那么點兒味道,但下來仔細一琢磨大都還在云里霧里。看看這張網上截取的云計算產業全景圖,估計沒有幾個能夠不頭暈的。
云計算的各方面定義很多,基于用戶的視角來看,目的就是讓使用者在不需了解資源的具體情況下做到按需分配,將計算資源虛擬化為一片云。站在高處看,當前的主流云計算更貼切于云服務,個人認為可理解為早先運營商提供數據中心服務器租用服務的延伸。以前用戶租用的是一臺臺物理服務器,現在租用的是虛擬機,是軟件平臺甚至是應用程序。公認的三個云計算服務層次是IaaS(Infrastructure as a Service)、PaaS(Platform as a Service)和SaaS(Software as a Service),分別對應硬件資源、平臺資源和應用資源。對于用戶來說:
1、當提供商給你的是一套a 個核CPU、b G大小內存的主機、c M帶寬網絡以及d G大小存儲空間,需要你自己去裝系統和搞定應用程序,那么這就是IaaS,舉例如Amazon EC2;
2、當提供的是包含基本數據庫和中間件程序的一套完整系統,但你還需要根據接口編寫自己的應用程序時,那么就是PaaS,舉例如Google AppEngine、Microsoft Azure和Amazon SimpleDB, SQS;
3、最傻瓜的方式自然是連應用程序都寫好了,例如你只需要告訴服務提供商想要的是個500人的薪酬管理系統,返回的服務就是個HTTPS的地址,設定好帳號密碼就可以訪問過去直接使用,這就是SaaS了,如SalesForce、Yahoo Hadoop和Cisco Webex: Collaboration SaaS等。
為啥舉例都是國外的呢,因為國內目前的云服務狀況是,能提供的都處于IaaS階段,有喊著要做PaaS的,但還沒聽說有SaaS的。
說完公共的,該講些私貨了。
個人理解云計算的核心首先是計算,什么網絡、存儲、安全等等都是外延,從技術上講云計算就是計算虛擬化。最早的云計算來自于網格計算,通過一堆性能較差的服務器完成一臺超級計算機才能完成的計算任務,簡單的說就是計算多虛一。但是現如今一虛多(VM/XEN等)也被一些廠商扯著大旗給忽悠進來,并且成為主流。但是單從技術角度來看,這兩者是南轅北轍的。因此云計算技術在下面被作者主觀的分為集中云與分散云兩個概念來闡述。