亞馬遜服務器宕機背后:云計算依然安全嗎?
對于愿意多付一點錢的云客戶,亞馬遜提供了一項很有誘惑力的提議——將應用分布到多個可用區上,可獲得一項幾近保證的服務:不會遭受宕機之苦。
目前,不少公司正將他們的計算基礎設施外包給數據中心,以避免瑣事并降低運營成本。目前,包括輝瑞和Netflix在內的數千家企業都是亞馬遜云的客戶。
“在分開的可用區上運行實例,可放置你的應用程序在單個位置上出現故障。”亞馬遜在推廣其彈性計算云服務——EC2時如此說道。
只在一個可用區上創建應用的客戶更容易遭受服務中斷的故障。但是,多個可用區同時停止運行時將會怎樣?我們已經看到了結果:一次服務器宕機令多家網站無法訪問。
上周四,由于亞馬遜網頁服務器出現故障,包括基于位置的社交網站FoureSquare,問題和解答服務商Quora;新聞共享網站Reddit以及為網絡出版商提供游戲工具的BigDoor癱瘓。
“我們可以確定,在美國東1地區的多個可用區中,連接故障影響了EC2例程,并且不斷增加的時延影響了 EBS(彈性塊存儲)容量。”周四亞馬遜在其服務狀態控制板上指出。
盡管北京時間4月25日,在亞馬遜***的公告中,我們看到了“'Majority' of Cloud Problems Resolved”——大多數受到影響的數據庫已經得到了恢復,但是對于牽涉其中的用戶來說,這實在是非常漫長的煎熬。我們能從此次事件中獲得哪些教訓呢?
不要理所當然地相信云服務供應商的保證
令人吃驚的是,亞馬遜云服務中斷將近4天卻沒有違反亞馬遜EC2服務的服務等級協議(簡稱SLA)。亞馬遜FAQ問答解釋說,“它確保在365天的服務期 內一個區域擁有99.95%的服務利用率。”由于亞馬遜出現故障的是EBS和RDS服務,而不是EC2服務,因此,從法律上講,它并沒有違反服務等級協 議。這當然不能安撫受影響用戶的心,也不能成為他們該受影響的理由。這一點的確應該引起我們的深思。
IDC的分析師Matthew Eastwood指出,該事件實際上是再一次敲響了云計算技術乃至整個產業的警鐘,它將迫使云計算行業重新考慮這項遠程控制技術所面臨的問題。
目前來看,許多受到影響的用戶都準備支付額外的費用將他們的數據保存到多個可用區(Availability Zone)。亞馬遜建議用戶這樣做實際上是為了確保在服務中斷的情況下能夠及時恢復用戶的數據。根據亞馬遜FAQ問答,每個可用區“都是獨立運行的,其基礎架構在物理上都是截然分開的,這樣的工程設計是為了確保數據的可靠性,即使一個可用區的發電機和冷卻設備等出現故障,也不至于影響到其他可用區的服務。而且,由于這些可用區在物理上是截然分開的,因此,即使是像火災、龍卷風或洪水這樣的極端自然災害也只能影響到一個可用區。”不幸的是,人們到***才發現亞馬遜說的這一切只是技術規范,并沒有成為合同保障。亞馬遜可能需要花費一番功夫才能修復它被此次事件損壞的名聲。
云計算技術依然安全嗎?
在去年12月‘匿名’組織弄垮網站的嘗試失敗后,亞馬遜著名的大型服務器據說是不可能崩潰的。云計算被宣傳為安全可靠的工具,但是這次中斷似乎動搖了客戶對云計算服務的信心。
實事上,用戶的擔心并非不無道理,根據CSDN之前的一項對國內云計算應用的調查顯示,超過60%的用戶認為,云計算的架構缺陷是他們不得不考慮的問題。
盡管如此,對于大多數用戶來說,無論他們遭受到了多么嚴重的影響,他們都會贊頌亞馬遜,稱其幫助他們用較少的成本和精力運營著一個強大的基礎架構。許多人在批評亞馬遜之前都會首先感謝亞馬遜幫助他們做到的事情。例如,BigDoor公司的***執行官凱斯-史密斯(Keith Smith)就說:“亞馬遜網絡服務(AWS)讓我們迅速建立起了復雜的系統,而且非常節約成本。在任何給定的時間內,我們都有12個數據庫服務器,45個應用程序服務器,6個靜態服務器和6個分析服務器處于待命狀態和正在工作。當流量或處理要求增加時,我們的系統就會自動增加工作服務器的數量;當流量減少時,我們的系統就會自動減少工作服務器的數量,從而節約成本。”
對一些從亞馬遜EC2平臺上得到了好處的用戶而言,他們認為云計算模式仍然是安全的。Rackspace公司的***戰略官盧穆爾曼表示,亞馬遜數據中心服務中斷事故對云計算行業造成的影響相當于一次航空事故,目前航空旅行仍被視為比汽車行駛更安全的交通方式。數據中心依舊比那些擁有自己IT基礎設施的個別公司更安全。關鍵的是,業界應該從亞馬遜服務中斷事故中汲取教訓。
準備多套方案應對云服務供應商可能的故障?
正如技術出版公司O’Reilly的喬治-瑞斯(George Reese)所說:“如果你存儲在亞馬遜云中的系統失敗,這不是亞馬遜的錯。這要么是你命里該有此一劫,要么是你的系統設計不符合亞馬遜的云計算模型。”因此,用戶很有必要準備多套方案,應對云服務供應商可能會出現的故障。
但是,多套方案似乎只是一廂情愿而已,Gartner分析師Drue Reeves指出,客戶應與提供多個地點的多家提供商簽訂協議,從而可以在單個銷售商發生故障時能夠幸免于難。
這種方式現實嗎?Reeves給出了否定的回答,只是對于大多數客戶是如此。云計算應簡化應用的部署和管理。創建一個可工作于多家銷售商平臺上的應用需要大量的額外投入。
“無法在多家云提供商上構建應用的原因在于,缺少標準和互操作性。”Reeves說道:“如果你是應用創建者,你需要增加存儲或計算容量,這些容量的分配、收費和使用,對于每個提供商都是不同的。這不是做不到,而是非常非常困難。”
據說了解,在亞馬遜服務中斷事件中,有幾家公司幸免于難。例如,Twilio公司的服務就沒有關閉。該公司沒有詳細說明它在北維吉尼亞可用區的業務受到了怎樣的影響,但是它的聯合創始人兼***技術運營官埃文-庫克(Evan Cooke)在博客中描述了其基礎架構的設計原則。這些原則包括將資源分解到各個獨立的存儲池中,支持超時連接和重試等待。
另外一個沒有被關閉的站點是NetFlix,它的所有基礎架構都在亞馬遜云中運行。但是,目前也不清楚它的業務在該事件中受到影響的程度。
增強恢復能力需要加大投入
鮑勃-沃菲爾德(Bob Warfield)描述了此前一家公司使用Amazon.com基礎架構的方法,該方法能讓這家公司“在一個可用區的服務中斷時,能用另一個可用區的數據在20分鐘內恢復服務,而且只會造成不超過五分鐘的數據丟失。”他繼續說道,你選擇的你準備支持的中斷服務的時長,決定了你必須承受的成本。“聰明的用戶和PaaS(平臺即服務)供應商會多準備幾個選擇,因為首先你不論如何必須在亞馬遜S3服務器上做個備份,其次還需要選擇幾個替代的站點。你所要考慮的只是這些替代站點的服務能否夠熱情,價格是否優惠。
此外,用戶還需要向云服務供應商問一些必要的問題,以確保你所依靠的云服務不會讓你遇到類似的服務中斷問題(或者即使遇到了,你也能理解它,并愿意以較低廉的成本承擔相應的后果)。鮑勃-沃菲爾德特意提到了NetFlix公司的做法,該公司為了測試其恢復能力,通常會隨機地破壞其資源和服務。
“這可能是你需要向你的PaaS(平臺即服務)和云服務供應商提出的第二個問題——‘你們有沒有通過破壞生產基礎架構的方法來測試你們應對故障的能力?”當然你會樂意看到他們進行測試,而不僅僅是聽他們口頭上說說。
缺乏透明度是亞馬遜的致命弱點
幾位受到影響的用戶抱怨,在服務中斷期間,亞馬遜并沒有及時公布***的信息。BigDoor公司***執行官基思-史密斯(Keith Smith)寫道:“如果亞馬遜能開誠布公地說明他們目前正面臨的問題,那么我們就能更快地恢復我們的系統。”GoodData公司的羅馬-斯坦克(Roman Stanek)呼吁亞馬遜拆除保密的墻:
“我們無法從一些支離破碎的信息中得知究竟該如何組織我們的系統,從而提高它的性能、靈活性以及最重要的災難恢復能力……在云計算基礎架構中,IaaS(基礎設施即服務)、(PaaS平臺即服務)、SaaS(軟件即服務)和客戶之間不應該豎著一堵妨礙相互溝通的墻壁。”
在未來幾周,亞馬遜將要遇到的挑戰是:它必須向用戶證明它的恢復工作已經準備就緒。如果亞馬遜不能夠做到這一點,而其他云服務供應商卻比它做的更好,那么它將會逐漸開始失去它目前在IaaS(基礎設施即服務)供應方面的統治地位。
【編輯推薦】
- 使用Microsoft Azure 讓云遷移變得簡便的5種方法
- VMware的混合云遷移工具:vCloud Connector
- 企業CRM等業務系統遷移到 "云"中的***實現
- 云計算該“遷移”還是“自建”?
- 云遷移全攻略:哪些應用適合遷移
- 亞馬遜 谷歌 微軟三大試用云服務大比拼(上)
- 亞馬遜推出1年免費云計算服務
- 亞馬遜EC2中斷 “可用區”遭質疑
- 傷不起!亞馬遜史前***宕機事件的啟示
- 云震 -- 亞馬遜4.21事故的反思
- 從亞馬遜云服務故障中吸取的七個教訓
- 云計算與集群:是攜手還是爭斗?