經濟的發展導致提供軟體和計算能力服務基礎架構的出現,俗稱雲服務或雲計算。 它是一種新興的共用基礎架構的方法,利用它使用者可以在任何地方通過連接的設備訪問其應用程式。 可以將巨大的系統池連接在一起以提供各種IT服務。 很多因素推動了對這類環境的需求,其中包括連接設備、即時資料流、SOA的採用以及搜索、開放協作、社會網路和移動商務等這樣的Web 2.0應用的急劇增長。 另外,數位元器件性能的提升也使IT環境的規模大幅度提高,從而進一步加強了對一個由統一的雲進行管理的需求。 毫無疑問,雲計算已經擁有了一個光明的前景。
雲計算實例分析
本文最後對引領雲計算潮流的兩大公司google和IBM的雲計算平臺做一個簡單的分析。
短時間內Google的在雲計算上的地位依然不可撼動,其開放式的平臺體現了雲計算模式的精髓。 Google的雲計算服務所需要的絕大部分基礎軟體都是開源的,這意味著使用者可以自由的得到那些代碼並修改。 從2003年開始,Google連續幾年在電腦系統研究領域的最頂級會議與雜誌上發表論文,揭示其內部的分散式資料處理方法,向外界展示其使用的雲計算核心技術。 Google的雲計算技術實際上是針對Google特定的網路應用程式而定制的。 針對內部網路資料規模超大的特點,Google提出了一整套基於分散式並行集群方式的基礎架構,利用軟體的能力來處理集群中經常發生的節點失效問題。 Google使用的雲計算基礎架構模式包括四個相互獨立又緊密結合在一起的系統。 包括Google建立在集群之上的檔案系統Google File System,針對Google應用程式的特點提出的Map/Reduce模式(映射/化簡程式設計模式), 分散式的鎖機制Chubby以及Google開發的模型簡化的大規模分散式資料庫BigTable.
GFS(Google檔案系統)是為Google應用程式本身而設計的。 一個GFS集群包含一個主伺服器和多個塊伺服器,可以被多個用戶端存取。
為了讓不熟悉分散式系統人們能夠有機會將應用程充建立在大規模的集群基礎之上,Google還設計並實現了一套大規模資料處理的程式設計規範Map/Reduce系統。 這樣,非分散式專業的程式編寫人員也能夠為大規模的集群編寫應用程式而不用去顧慮集群的可靠性、可擴充性等問題。 應用程式編寫人員只需要將精力放在應用程式本身,而關於集群的處理問題則交由平臺來處理。 Map/Reduce通過把對資料集的大規模操作分發給網路上的每個節點實現可靠性;每個節點會週期性的把完成的工作和狀態的更新報告回來。 如果一個節點保持沉默超過一個預設的時間間隔,主節點(類同Google File System中的主伺服器)記錄下這個節點狀態為死亡,並把分配給這個節點的資料發到別的節點。 每個操作使用命名檔的原子操作以確保不會發生平行線程間的衝突;當檔被改名的時候,系統可能會把他們複製到任務名以外的另一個名字上去。
第三個雲計算平臺就是Google關於將資料庫系統擴展到分散式平臺上的BigTable系統。 為了處理Google內部大量的格式化以及半格式化資料, Google構建了弱一致性要求的大規模資料庫系統BigTable.除了這三個部分之外,Google還建立了分散式程式的調度器,分散式的鎖服務等一系列相關的雲計算服務平臺。
藍色巨人IBM對此也投下了重注,並為此命名為「藍雲」計畫。 IBM具有發展雲計算業務 的一切有利因素:應用伺服器、存儲、管理軟體、中介軟體等等,因此IBM自然不會放過這樣 一個成名機會。 最近又推出了「新企業資料中心」的設想,該設想結合了以 Web 為中心的雲 計算模型和當前的企業資料中心的優勢。 中國雲計算網的一篇文章給出了「新企業資料中心」 模型以及其基礎架構服務框架。
新企業資料中心將是虛擬化、高效管理的中心,它將使用以 Web 為中心的雲所採用的 某些工具和技術,並進行一般化以便被範圍更廣的客戶採用,另外還進行增強以支援安全的事務性工作負載。 通過高效且共用的基礎架構,企業能夠對新的業務需求迅速做出反應,即時解析大量資訊,而且還能根據即時資料做出明智的業務決策。 新企業資料中心是一種演進的新模型,能提供有助於使 IT 和業務目標保持一致的高效且動態的新方法。 如圖 3 所示,從高級別的架構角度來看,新企業資料中心的基礎架構服務在邏輯上可分為不同的層次。 物理硬體層已虛擬化,以便能提供靈活且適應性強的平臺,從而提高資源利用率。 接下來的兩層是虛擬化環境層和管理層,它們是新企業資料中心基礎架構服務的關鍵。 通過將這兩層結合起來,可以確保資料中心內的資源得到有效的管理,並可以快速部署和配置。 另外,新企業資料中心旨在處理混合模式的工作負載。