[Windows Azure][IT鐵人賽系列] Day 3 - Cloud Infrastructure (Infrastructure as a Service)

雲端運算現在已被視為具有提供公用運算(Utility Computing)以及無所不在運算(Ubiquitous Computing)的成功實踐,透過使用者隨選的運算能量,使用者不再要自行建置運算環境,即可直接取用,而只需要依使用量來付費,如同生活上的水電使用一般,這就是公用運算的精神,而利用分散在世界各地的資料中心以及日漸成熟的網路環境,使用者可以在任何地方使用手上擁有的用戶端設備連接到服務所在的資料中心存取服務,而不受地域以及環境的影響。這就是雲端運算所帶來的生活型態的改變。要做到這樣的改變,雲端運算本身就必須要提供可實現這樣的改變的能量,在NIST的定義中,雲端運算有三種服務模型,而這三種服務相輔相成且有依賴關係,少了一個都不行。

雲端運算現在已被視為具有提供公用運算(Utility Computing)以及無所不在運算(Ubiquitous Computing)的成功實踐,透過使用者隨選的運算能量,使用者不再要自行建置運算環境,即可直接取用,而只需要依使用量來付費,如同生活上的水電使用一般,這就是公用運算的精神,而利用分散在世界各地的資料中心以及日漸成熟的網路環境,使用者可以在任何地方使用手上擁有的用戶端設備連接到服務所在的資料中心存取服務,而不受地域以及環境的影響。這就是雲端運算所帶來的生活型態的改變。要做到這樣的改變,雲端運算本身就必須要提供可實現這樣的改變的能量,在NIST的定義中,雲端運算有三種服務模型,而這三種服務相輔相成且有依賴關係,少了一個都不行。

首先我們要從雲端的基石-基礎建設來看,基礎建設層在NIST的定義稱為雲端基礎建設(Cloud Infrastructure),又稱為基礎建設即服務(Infrastructure as a Service),負責雲端供應商的硬體系統與網路資源的整合與供應,也是雲端平台層的核心功能,所有雲端的軟體與服務都要依賴基礎建設所供應的電腦運算能量、儲存能量以及網路資源等。雲端供應商的基礎建設均集中在資料中心(Datacenter)內,由數千台以上的機架型伺服器(Rack Server)串接,以及高頻寬的光纖網路與合作的ISP連接,以供應大量的運算與網路頻寬資源,內部也會劃分數個儲存分區,以支援儲存的功能,透過大型的SAN(Storage Area Networks)以及管理服務(軟體)管理與串聯這些儲存設備組合為分散式儲存(Distributed Storages),由雲端平台層的APIs呼叫存取使用,它也會作為運算資源的配置器。

未命名

除了伺服器以及所需的網路設備外,資料中心內還會再加上空調設備,因為必須要吸收伺服器以及網路設備等產生的熱能,以免設備因高熱而當機或停擺,近年來也由於環保風的盛行,資料中心也開始降低整體的電力需求,目前國際用以衡量資料中心用電的單位為PUE(Power Usage Effective,即資料中心總用電量除以IT設備用電量所得的值),Google以及微軟的資料中心目前均已做到PUE 1.2左右的耗能,台灣的資料中心PUE平均值約2.5,還有很大的空間。同時為了要靈活的運用資料中心的空間以及在短時間內處理故障伺服器送修與維護的工作需求,愈來愈多的資料中心開始採用貨櫃機房(Container),各主要硬體大廠也提供許多貨櫃機房的產品線,如HP的POD(Performance Optimized Datacenter)即是貨櫃機房的產品之一,貨櫃機房的特色就是整櫃模組化,在貨櫃內可放置數十至數百台機架伺服器、網路設備以及冷房設備,而只要插上電源以及網路即可直接上線,故障時只要整櫃移出即可,搬運僅需使用貨櫃車以及貨櫃起重機等,對資料中心頻繁的新增與移除設備的工作而言相當輕鬆。

微軟的芝加哥資料中心即是一座以貨櫃機房為主的資料中心,可容納數以百計的貨櫃機房,等於相當擁有數十萬台伺服器的硬體運算能量。

clip_image004

資料中心的選址也是一門學問,由於PUE的規範,許多大廠的資料中心都會選在擁有天然冷卻資源的地方,像是Google位於Dallas, Oregon的資料中心就位於哥倫比亞河邊,利用天然的河水進行水冷,可節省冷氣的電力費用。

clip_image006

而微軟則是在愛爾蘭(Ireland)設置了巨型的資料中心,作為Windows Azure Platform所屬的歐洲資料中心之一,利用天然的冷氣進行冷卻,讓PUE值可以降至1.25(冷卻設備用電佔0.25)。

clip_image008

像Google或微軟這類大廠的資料中心內一般都會有數千台伺服器,再利用虛擬化技術(Virtualization)讓一台實體伺服器再容納數台或數十台虛擬機器,而使用者實際使用的運算資源(Computes Resource)就是指這些虛擬機器,不同等級的虛擬機器會佔用不同實體伺服器的空間,因此雲端供應商都會設計內控的作業平台來控管虛擬資源的配置,以對外提供不同等級的運算資源。Windows Azure Fabric Controller就是作業平台的例子之一,Fabric Controller會決定使用者的運算資源所在的實體伺服器,以及所使用的資源量等等。而資料中心內也會有許多的網路設備以及網路服務(如DNS)以支援這樣的動態配置(Dynamic Allocation)與高度的可用/容錯性,同時也符合廠商自己所承諾的SLA服務水準。

Reference:

http://www.google.com/about/datacenters/locations/the-dalles/

http://blogs.technet.com/b/msdatacenters/archive/2011/02/22/microsoft-s-cloud-gets-even-greener-in-ireland.aspx