亞馬遜高級(jí)副總裁兼杰出工程師James?Hamilton是這一領(lǐng)域的專家,他在服務(wù)器和數(shù)據(jù)中心基礎(chǔ)設(shè)施、數(shù)據(jù)庫(kù)以及云計(jì)算技術(shù)方面經(jīng)驗(yàn)豐富,在20多個(gè)國(guó)家擁有超過(guò)200項(xiàng)專利。

他從2009年開(kāi)始負(fù)責(zé)亞馬遜云科技在基礎(chǔ)設(shè)施效率、可靠性和服務(wù)擴(kuò)展方面的工作。

James Hamilton是一位計(jì)算機(jī)領(lǐng)域的專家,擁有滑鐵盧大學(xué)計(jì)算機(jī)科學(xué)碩士學(xué)位和維多利亞大學(xué)計(jì)算機(jī)科學(xué)榮譽(yù)學(xué)士學(xué)位。較早的工作經(jīng)歷中,他是一名服務(wù)于意大利豪車品牌,比如瑪莎拉蒂、法拉利、蘭博基尼等豪車的專業(yè)汽車技師。

加入亞馬遜之前,他在IBM工作了11年,領(lǐng)導(dǎo)IBM C++編譯器團(tuán)隊(duì),擔(dān)任IBM DB2的首席架構(gòu)師。隨后,在微軟工作的12年中,先后擔(dān)任任微軟Exchange托管服務(wù)的領(lǐng)導(dǎo)者、SQL Server WebData團(tuán)隊(duì)的總經(jīng)理,還負(fù)責(zé)微軟SQL Server的相關(guān)工作。

James Hamilton曾撰文分享了提高IT韌性的三種方法。

第一種,盡可能擴(kuò)大自動(dòng)化范圍。

Uptime Institute 的數(shù)據(jù)顯示,大約70%的數(shù)據(jù)中心和服務(wù)中斷是由人為錯(cuò)誤造成的。而James預(yù)測(cè)這個(gè)比例會(huì)更高,這也是亞馬遜云科技如此專注于自動(dòng)化的原因。因?yàn)槭謩?dòng)操作會(huì)帶來(lái)風(fēng)險(xiǎn),為此從備份到測(cè)試需要盡可能地自動(dòng)化,自動(dòng)化是創(chuàng)建韌性架構(gòu)的關(guān)鍵。

James提到了一家叫CalvertHealth的醫(yī)院,原本這家醫(yī)院電子健康記錄的數(shù)據(jù)備份是在企業(yè)數(shù)據(jù)中心服務(wù)器上手動(dòng)管理的,恢復(fù)時(shí)間目標(biāo)(RTO)數(shù)值曾為48至72小時(shí)。而當(dāng)應(yīng)用恢復(fù)系統(tǒng)遷移到亞馬遜云科技后,RTO降至兩小時(shí)以下,縮短了97%。

James認(rèn)為,在部署前就識(shí)別和解決代碼中的問(wèn)題,也是構(gòu)建高可用性、高韌性應(yīng)用的重要組成部分。手動(dòng)審查依賴于審查人員的專業(yè)知識(shí)和能力。但是,借助機(jī)器學(xué)習(xí)的代碼審查工具,企業(yè)可以實(shí)現(xiàn)這一過(guò)程的自動(dòng)化,甚至還能優(yōu)化應(yīng)用性能。

Cognizant是世界領(lǐng)先的專業(yè)服務(wù)提供商之一,它使用亞馬遜云科技的自動(dòng)化代碼審查功能來(lái)幫助開(kāi)發(fā)和運(yùn)營(yíng)團(tuán)隊(duì)主動(dòng)識(shí)別和解決問(wèn)題,并確保其部署的性能、安全性和合規(guī)性超出了來(lái)自不同行業(yè)和地區(qū)的客戶的要求。

第二種,持續(xù)測(cè)試來(lái)應(yīng)對(duì)未知。

持續(xù)測(cè)試是工程師理解系統(tǒng)如何應(yīng)對(duì)未知情況的方法。實(shí)現(xiàn)這個(gè)目標(biāo)的做法之一是故意搞“破壞”。通過(guò)這種方法,企業(yè)能夠執(zhí)行故障注入實(shí)驗(yàn),幫助團(tuán)隊(duì)營(yíng)造真實(shí)世界所需的條件,來(lái)發(fā)現(xiàn)分布式系統(tǒng)中難以甄別的隱藏錯(cuò)誤、盲點(diǎn)和性能瓶頸。

自21世紀(jì)初以來(lái),亞馬遜一直在不會(huì)對(duì)客戶產(chǎn)生影響的精準(zhǔn)控制的情況下,有意注入故障。這提高了其應(yīng)變能力,確保能為最壞的情況做準(zhǔn)備。如果能觸發(fā)罕見(jiàn)事件,并更頻繁地調(diào)整應(yīng)對(duì)措施,那就做好了準(zhǔn)備。

另一種流行的測(cè)試方法是韌性“游戲日”(game days),它通過(guò)模擬一個(gè)失敗或其他事件來(lái)測(cè)試系統(tǒng)、流程和團(tuán)隊(duì)的響應(yīng)。這種方法的目的是盡可能逼真地演習(xí),如果異常事件真的發(fā)生,團(tuán)隊(duì)會(huì)采取行動(dòng)。企業(yè)可以在亞馬遜云科技中使用其生產(chǎn)環(huán)境的完整副本進(jìn)行游戲日演練。

第三點(diǎn),統(tǒng)一可觀測(cè)性指標(biāo)。

了解系統(tǒng)的運(yùn)行情況對(duì)提高IT韌性至關(guān)重要。企業(yè)不斷收集和分析應(yīng)用數(shù)據(jù),才能更快地檢測(cè)和解決應(yīng)用可用性和性能方面的問(wèn)題,從而改善用戶體驗(yàn)。但隨著應(yīng)用復(fù)雜性的日益增加,問(wèn)題出現(xiàn)時(shí)很難快速定位并解決。

Docebo是一家學(xué)習(xí)管理系統(tǒng)軟件供應(yīng)商,由于系統(tǒng)太復(fù)雜,排除故障經(jīng)常需要耗費(fèi)幾天時(shí)間。當(dāng)使用亞馬遜云科技的分析服務(wù),把所有日志記錄和跟蹤數(shù)據(jù)進(jìn)行結(jié)合,創(chuàng)建了單一事實(shí)來(lái)源。隨后,Docebo將故障排除時(shí)間縮短了90%,修復(fù)時(shí)間從70%-80%減少到15%以下。過(guò)去幾天的工作現(xiàn)在只需要幾分鐘。

James提到的這三種方法中,盡可能擴(kuò)大自動(dòng)化范圍主要是減少故障出現(xiàn)的可能,持續(xù)測(cè)試來(lái)應(yīng)對(duì)未知,這部分主要是未雨綢繆做準(zhǔn)備,而統(tǒng)一可觀測(cè)性指標(biāo)則是為了提高定位和解決問(wèn)題的速度。

事實(shí)上,亞馬遜云科技通過(guò)在基礎(chǔ)設(shè)施設(shè)計(jì)、服務(wù)部署、運(yùn)營(yíng)流程和機(jī)制中深度融入韌性原則,構(gòu)建了世界上最可靠的云服務(wù)之一。這些做法征服了納斯達(dá)克、道瓊斯、美國(guó)金融監(jiān)管局(FINRA)、默沙東等對(duì)數(shù)據(jù)高度敏感的組織。

如果要簡(jiǎn)單總結(jié)亞馬遜云科技做對(duì)了什么,我認(rèn)為關(guān)鍵的有以下幾個(gè)方面。

首先,亞馬遜云科技在其服務(wù)設(shè)計(jì)階段就已經(jīng)考慮到了防止中斷和事故的策略。這種前瞻性的設(shè)計(jì)意味著,一旦發(fā)生中斷,能夠最小化對(duì)客戶影響。此外,亞馬遜云科技通過(guò)在運(yùn)營(yíng)文化中深植韌性,確保其團(tuán)隊(duì)始終準(zhǔn)備應(yīng)對(duì)各種挑戰(zhàn)。

亞馬遜云科技的全球基礎(chǔ)設(shè)施是其可靠性策略的核心,在全球33個(gè)地區(qū)有105個(gè)可用區(qū)。這些區(qū)域由多個(gè)相互獨(dú)立且物理上分隔的可用區(qū)組成,同一區(qū)域內(nèi)的可用區(qū)之間具有足夠的距離。這種設(shè)計(jì)既保證了足夠的距離來(lái)防止相關(guān)故障,同時(shí)又能實(shí)現(xiàn)單位毫秒級(jí)的同步復(fù)制。

亞馬遜云科技是唯一一個(gè)在每個(gè)區(qū)域內(nèi)提供三個(gè)或更多可用區(qū)的云提供商。而且,每個(gè)可用區(qū)都有獨(dú)立的電力、制冷和物理安全設(shè)施。通過(guò)增加冗余和改善隔離,亞馬遜云科技最大限度地減少了故障的影響面。

亞馬遜云科技鼓勵(lì)客戶將其應(yīng)用程序設(shè)計(jì)為在多個(gè)可用區(qū)中運(yùn)行,以獲得更高的可用性和容錯(cuò)能力。亞馬遜使用了靜態(tài)穩(wěn)定性來(lái)提高韌性,即使發(fā)生故障或依賴項(xiàng)不可用時(shí),系統(tǒng)可以繼續(xù)以靜態(tài)狀態(tài)正常運(yùn)行。例如,EC2實(shí)例啟動(dòng)后即具備與數(shù)據(jù)中心中物理服務(wù)器相同的可用性。

在用戶能接觸到的層面,亞馬遜提供了一系列定制的服務(wù),這些服務(wù)夠輕松集成到用戶的工作流中,幫助客戶增強(qiáng)自身的韌性。

比如,用戶首先通過(guò)使用Amazon Resilience Hub設(shè)定韌性目標(biāo)和評(píng)估當(dāng)前狀態(tài)。隨后,根據(jù)Amazon Well-Architected Framework和Amazon Trusted Advisor的建議進(jìn)行改進(jìn)。然后,就使用Amazon Resilience Hub來(lái)進(jìn)行實(shí)驗(yàn)評(píng)估和測(cè)試,通過(guò)測(cè)試來(lái)應(yīng)對(duì)未知。

當(dāng)故障發(fā)生后,可以使用Amazon Backup、Amazon DRS和Route 53 ARC這些服務(wù)來(lái)快速響應(yīng)中斷并恢復(fù)業(yè)務(wù)。這一系列工具和服務(wù)確保了用戶能夠在面對(duì)挑戰(zhàn)時(shí)保持業(yè)務(wù)的連續(xù)性和穩(wěn)定性。

分享到

zhupb

相關(guān)推薦