作/查理
沒有兩家一模一樣的雲端基礎建設商,任何企業採購必學的第一堂課:評估他們的架構。
對雲端系統來說,每當出狀況時,就會凸顯整個架構的重要性。
雲端業者要完成一個架構,通常會經過一連串的小型決策,決定要提供哪些資源、然後捨棄哪些功能。
有時候,這些被捨棄的東西,會給客戶帶來嚴重的夢魘。
例如,目前雲端儲存業者Nirvanix表示他們已經破產、準備歇業,而他們的客戶這才發現,要把長期以來逐漸累積的資料移出雲端儲存系統,竟是如此的困難。
因為一直到該公司清算前的四星期,關於Nirvanix營運不善的謠言才開始流傳,然後只過了一週,公司就正式宣布退出市場的計畫,整個過程非常混亂。
雲端業者要準備多大的網路管道來移動雲端資料,這就是建立架構時的一個抉擇,而Nirvanix當時決定把資料輸入的管道做大,至於資料移出的管道則小一些(這樣的架構,通常反映了業者對於自家營運的偏見)。
最後,竟是由第三方業者出面協助,利用10Gbps的交換線來解救其客戶,或直接把這些客戶資料移到另一家業者的系統裡。
多數雲端業者的抉擇,並不見得會像Nirvanix的案例一樣充滿戲劇性,但重要的是,顧客應該要瞭解他們的IaaS(infrastructure as aService)供應商究竟使用哪一種架構,畢竟這可以讓IT團隊以更有效率的方式建立應用與設計工作量。
許多公司未來會投入更多資金在IaaS業者上,而這樣的效率,也應該更受重視。波士頓顧問公司Cloud Technology Partners資深副總裁David Linthicum表示,「你應該要瞭解公有雲系統的運作模式,但一般人總不願思考這些東西。」
為了瞭解IaaS服務業者的架構差異,筆者將檢視亞馬遜Web Services與Google Compute Engine Services的細微差別,然後把這些服務與微軟(Microsoft Azure)服務對比,最後再討論這三種服務之外的其它選項。
laaS的核心架構
IaaS業者不會談論他們使用何種架構,畢竟這是自己的競爭優勢。
不過基本上,這些雲通常是用橫向擴展(scale-out architectures),而比較少用一般企業偏好的垂直擴展(Scale-uparchitecture)。
雲端業者會定期增加伺服器、網路容量與磁碟,而他們的雲端管理軟體會自動偵測並整合這些新的實體資源。這些資源通常經由Layer 3網路直接連線,搭配10Gbps的乙太網路交換器。
私有雲業者Cloudscaling執行長Randy Bias表示,亞馬遜WebServices與Google Compute Engine「在語意上與架構上有95% 是相同的。」Bias曾主導韓國電信的雲端堆疊系統;他說,「從純粹架構角度來看,亞馬遜與Google 非常相似。」當然,兩者間還是有不同的地方,筆者先論述相同之處,如此一來,較容易進行比較。
Bias表示,亞馬遜與Google都希望在架構中限制「故障的範疇」。如果其中一項硬體失效,他們的雲端管理軟體會立刻提供新的虛擬伺服器,並進行工作移轉;如果某種應用或作業系統失效,其它應用軟體、資料庫與網路伺服系統則會繼續運作。
兩家業者都使用「複雜的虛擬機器排程」,把虛擬機器平均分配於各個主機,然後用這些主機來跑特定的虛擬伺服器。
他們避開了傳統的企業架構,不再把高效能伺服器配對,以達到更高的可用性,或在伺服器機櫃之外配置儲存區網路,因為這麼做會導致延遲遞送。
Bias提到,亞馬遜與Google都不使用一般商業軟體來改變管理資料庫的設定,提供虛擬伺服器或管理工作週期,而是使用自己的開放原始碼,因此成本低廉。
兩家公司都把四散於各地的資料中心集結成獨立的「區域」(Region),其中各個資料中心內都有次區域(Subregion)。(亞馬遜把資料中心裡的次區域稱做「可用區域」。) 每個區域在設計上,都希望能防止故障衝擊大幅擴散;舉例來說,它們都有自己的電源供應和通訊連結。
IaaS供應商可以保證其在服務層級協定的高度可靠性;但水平擴充的商業雲端架構供應商,卻無法做出同樣保證。
他們只能承諾「盡可能」達到最好的服務層級,如果故障時,只能提供客戶必要的補償,但這些補償並不包含因故障而產生的客戶流失。
相反的,他們會要求客戶,在運算服務正常運作的時候,在另一個次區域或可用區進行備份,但這麼做的缺點是,幾乎讓客戶的雲端花費往上翻了一倍。
亞馬遜、Google與微軟都賣固定規格的虛擬伺服器執行個體(你可以選擇小型、中型或大型,但他們無法讓客戶自行設定規格),對雲端服務商來說,標準化規格讓他們比較容易自動部署工作,因為整個基礎建設會偵測、並快速辨識一個已知的伺服器類型,然後按照規則進行安置。
Bias表示,整體而言,Google與亞馬遜的架構有一個核心原則:就是「所有決策都要符合經濟效益」。
聚焦於經濟效益不代表他們不重視資安、可靠性與其它要素。但他們的IaaS架構主要目標,就是用最少的營運費用和人員,達到最好的可靠度與可擴充性。
一般大型IaaS業者都不會揭露其雲端事業的獲利數字,但眾所皆知,亞馬遜、Google、微軟與其他像是Rackspace等業者,都以非常接近的虛擬伺服器價格,彼此激烈競爭。因為架構不同而產生的些微效率差異,很可能決定了廠商的成功或失敗。
讀者迴響