幾天前,Amazon雲端主機停擺,造成上千個使用其服務的網站也都跟著遭殃,這對雲端運算服務來說固然是個挫折,卻同時也是讓我們好好省思,找出如何防止相同情況再發生的好機會。
Amazon最有名的雖然是它的網路購物網站,不過事實上,它在雲端運算領域,也同樣擁有舉足輕重的地位,不但推出了讓企業儲存及傳送大量內容,具有彈性及效率的解決方案,其根據客戶實際使用量收費的模式,在2006年剛推出時可是一大創舉。也因為Amazon服務收費這麼合理又可靠,因此包含Foursquare和Netflix等數以千計的公司,都藉由它的雲端運算技術和主機來運作,也從來沒有預料過會有停擺的一天,畢竟雲端運算的原則,便是透過將資料存放在多處主機和資料中心,來確保其可靠性。
只能說天有不測風雲,最沒有料想到的事情還是發生了,Amazon雲端主機這一當機,也使得上千網站停擺了將近24小時,而最主要的原因,便在於Amazon的多處雲端主機和資料中心,沒有成功地阻止大量機器運行中斷的情形發生。理論上,Amazon的主機可用區域(Availability Zones)應該要能各自失去作用,而不讓整個系統停擺,但事實上,服務中卻有一個不該存在的單一故障點(single point of failure),一旦發生問題就會拖垮整個系統。
雲端運算的可擴充性、降低成本、裝置獨立、和性能等好處是遠大於缺點的,因此並沒有必要因咽廢食避免使用雲端服務,不過我們卻該好好審視雲端基礎建設的結構,並找尋防止單一故障點,或更快將內容從有問題的雲端主機脫離的新方法,尤其在全球雲端力量越來越只集中在某幾家系統上,一旦發生問題,影響範圍只會越來越大的情況下,這樣的體檢勢在必行。