構(gòu)造高可用性和高可靠性系統(tǒng)的1項重要原則是假定失效(Design forfailure)。換言之,你的設(shè)計模型應(yīng)具有正如亞馬遜的首席技術(shù)官(CTO)沃納?威格爾(Werner Vogels)曾說的“1切事物隨時有可能失效”的特性。榮幸的是,現(xiàn)代數(shù)據(jù)中心、網(wǎng)絡(luò)和服務(wù)用具有高可靠性,且很少產(chǎn)生故障。但是,若你把偶爾的故障當做是既定的,并簡單建立1個在產(chǎn)生故障后能恢復(fù)且保持運行的系統(tǒng),則你能建立1個強大的系統(tǒng)。
新1代自動恢復(fù)
今天我想告知你1個新的EC2功能,當某項EC2實例遭受侵害時,該功能可使你更容易的構(gòu)建1個需要的系統(tǒng)。若干系統(tǒng)狀態(tài)檢查服務(wù)(2012年首次引進并在以后得到屢次加強)在幕后監(jiān)視上述實例和其他部件的如期運行情況。在其他方面,它還檢查網(wǎng)絡(luò)連接、系統(tǒng)電源失效和物理主機上的軟件硬件問題。
隨著新功能的發(fā)布,若底層硬件的系統(tǒng)狀態(tài)檢查出現(xiàn)故障,你可以計劃1個EC2實例的自動恢復(fù)。該實例將重啟(若需要,實例將在新的計算機硬件上運行)但將保存實例ID、IP地址、ElasticIP地址、EBS卷的裝配和其他配置細節(jié)。為進行完全恢復(fù),你需確保上述實例作為初始化進程的1部份能自動啟動任1服務(wù)和利用程序。
設(shè)計自動恢復(fù)
你可以通過點擊鼠標(就支持的實例類型和環(huán)境,見下文注釋)設(shè)計現(xiàn)存功能的自動恢復(fù)。簡單的創(chuàng)建CloudWatch報警僅需要StatusCheckFailed_System指標和選擇Recover this instance操作。
第1步,查找和選擇感興趣的實例標準:
第2步:點擊“創(chuàng)建警報”按鈕:
刪除通知功能(除非你出于其他緣由依然需要該功能),添加EC2功能,再選擇Recover this instance。設(shè)置臨界值是1,設(shè)置統(tǒng)計值最小化和指定適當值連續(xù)周期的編號(假定收集權(quán)值的間隔時間是1分鐘,則兩分鐘至3分鐘為最宜)。
適用的實例類型和環(huán)境
本實例適用于美國東部地區(qū)(北維吉尼亞州)的C3實例、C4實例、M3實例、R3實例和T2實例;我們計劃將盡快在其他地區(qū)推行。上述實例需在在VPC中運行,且需利用EBS支持的存儲,而非專用實例。
EC2功能部份無附加使用費。CloudWatch 的付費信息參考CloudWatch 定價頁面。
了解更多,請瀏覽關(guān)于“實例恢復(fù)”的文檔!
注:本文作者Jeff Barr于2015年1月19日報導(dǎo)