1.認真閱讀云服務提供商的服務水平協議
令人叫絕的是近乎四天的故障并沒有違反亞馬遜的EC2服務水平協議(SLA),FAQ部分寫著“在一個區域內一年以內保證99.95%的可用性”。而這次發生故障的是EBS和RDS服務,而不是EC2,所有故障都發生在單獨區域,從法律角度講該協議沒有問題。這一點值得思考。
2.別認為服務商的保障可以做到萬無一失
很多受影響用戶向亞馬遜支付額外費用把自己的服務托管在多個可用區(Availability Zone)。亞馬遜實際上也推薦這種做法。亞馬遜稱每個可用區都獨立運轉,有獨立的基礎設施,非常可靠。一個可用區的發電機或冷卻系統出現問題不會影響其它數據中心。此外,這些區域之間有物理隔絕,即便遇到、龍卷風、洪水等自然災害也只會影響一個可用區。不幸的是這只是一種技術指標,并沒有包括在合同條款。亞馬遜消除此次事件的負面影響還需要一段時間。
做到事后諸葛亮不難,但亞馬遜面對這種故障時的脆弱或許本可以通過深入的盡職演練加以避免。正如亞馬遜競爭對手Joyent的首席科學家Jason Hoffman所言:“這次不是速度變慢,不是云計算失敗,也不是成長的煩惱,這是亞馬遜的基礎框架決策導致的可預見后果。”
3.大部分顧客仍會原諒亞馬遜的失敗
不管所受影響多么嚴重,人們一直在贊美亞馬遜,因為亞馬遜幫助他們用低廉的成本和少量的投入運營者強大的基礎設施。很多人在批評的同時也會給予褒獎,比如BigDoor表示:“AWS幫助我們以極低的成本快速升級一個負責的系統。在任何時候我們都有運轉良好的12臺數據庫服務器,45臺應用服務器,6臺靜態服務器和6臺分析服務器。如果流量或處理能力超了我們的系統會自動升級,如果不需要就會自動降級,從而節省費用。”
4.除了云服務提供商的恢復能力之外,還有很多補救措施
正如來自O’Reilly的George Reese指出,如果你的系統在本周的亞馬遜云服務故障中掛彩的話,那不是亞馬遜的錯誤。或者你把這種故障看作是可接受的風險,或者你沒能按照亞馬遜云計算模式進行設計。查看亞馬遜顧客使用的技術、避免故障非常有用。
Twilio和Net Flix在此次故障中安然無恙,前者是因為根據亞馬遜的技術規范進行了出色的設計,后者雖然把所有的基礎設施都托管在亞馬遜云服務中,但通過使用多個數據中心的服務來確保服務的可靠性。
5.增加額外的恢復能力需要更高成本
聰明的用戶和Paas服務商應該準備多套方案。無論如何你都應該備份到亞馬遜S3存儲服務上,這樣一旦出現問題,你可以從S3中恢復。
6.權衡好利弊關系可以幫助你提出問題
在選擇一家云服務之前要提出一些問題,從而判斷該服務是否靠譜。
比如你可以問這樣的問題:你們會通過關閉某些基礎設施來檢測你們的自動備份能力嗎?當然,你最好能親眼看到類似測試。
7.缺乏透明性是亞馬遜的“軟肋”
很多受到影響的顧客都抱怨在故障期間亞馬遜沒有提供足夠的有用信息。Big Door CEO Keith Smith說“如果亞馬遜能預料到他們目前遭遇的故障的話,我們就可以很快恢復我們的系統了”。Good Data的Roman Stanek則呼吁亞馬遜推倒神秘的圍墻:
我們的開發運營人員不知道如何管理系統的性能、可擴展性、以及最重要的應急恢復能力。“合理的”服務水平協議和“99.999%承諾”之間的區別就是臨時抱佛腳和完全符合我們各自運營流程之間的區別……在云設施中,IaaS,PaaS,SaaS和顧客之間不應該有溝通圍墻。
亞馬遜在未來幾周內的挑戰就是如何提供用戶所需信息,增強自己的恢復能力。如果亞馬遜無法滿足這種需求,而且其它公司做得更好的話,它或許會漸漸失去今天在Iaas領域的統治地位。
從亞馬遜云服務故障中吸取的七個教訓
責任編輯:Lucy | 2011-06-10 10:44:40 本文摘自:機房