【白皮书市场研报】亚马逊云科技《韧性系统生命周期建设框架》白皮书.docx
目录HI*术用*定义2持续韧性3Ji1段I511t,4碉定用户故小4创建额外的衡质指标第2汾段:设计和实色7AmazonWell-Atchtct<jFramCWOfk(u|z»»yjtf8制定持欲集成和特块交付(C1.CD)策略8开K运行就:结性信处9r筑亚马逊云科技故隙隔离边界9决M旧府方£9HlMAto11故用女介第3价段?评估和测成1部署前活动11环境设计1Iq(W自动化部累管线12gj攵,2舞部后活动121213源移物测二13合11K*i泥沌Jl程13第4分段:运营IS心件哲理“创件16第5汾段I响应和学习17ryf18审府警报性能18检Rl件1841/J瞥JRIg19展供培训和蛾能19创建小件知识咋19204,«/»X<lflOift)、22W5123这时阶段将在东指南后续章节中F以讨论: 一1""M,出4*1 一2断收:过计和实旌(第7页; 第3即3许1小逐11页) 潴4臼管:运行第15史) 热5防我;奥底担夕小IH17J1).术语和定义姆个阶段的削性概2适用干从里个班件到整个忝统的不同层面。概念的欢施需要用德定义几个术语I 组件是执行功能的元索,由软件和技术责诚执成,机件包括代码配?1.网络等基础出俺,或%也至服务58、数据存储和多因素。份iE<MFA)设备等外部依快项. 应用程序是交付心业价值的机件集合,比如面向客户的M络店铺成优化机渊学习模型的后8范程.一个应用程序可能由单个亚马城云科技鞋户中的组件子柒构成,也可恁林葬多个版马彩云科技帐户和地区的各祖件电台. 系统是管理既定业务功位所需的应用程序、人员和旅程僦介.它包括功能运行制的用程序I运行流程(比如持建集成和挎续交付(CkCD)、可现特性,配置价理、米件响应和灾施恢乂):以及管理这些任务的操作人的. 中断是Jfi阻止应用程序正常馍现其业务功能的件.殳拘是指如果中斯R不到腹稣而格对应用程序产生的影响,如果应用程序遭受一系列中断,它们可便会因此受损。你还应该计时特定业务目标实施可观测性指标.例如.他可以黑踪平均订值率、平均订单价格、平均日时数Irt或其值指标,这些指标可以根据应JU程序的行为提佻对业务健祖状况的洞察,基于应用程序的可观刈性功能,您可以创建警报.并在:这些折标超出您定义的界限时采取拾掩.可观玄性在第4阶双:区行(篝IS此节中有史洋IW的介州.当存在依除演书时.应用程序可以维鳗执行其业务功能.依除性还会影响大干领我平衡和应用理序技展的决策,在更改应用程序时,理解依攸关系是至关iR娈的,因为这有助于M定潜在的K½和影厢.这些知识可以精助令创建校定.行恸性的应M程序.仍助故国管理、影峋评估、损害恢U.负我平衡、犷展和变更管理.您可以手必或苔使用AmaZOnXRav等工具和服务来瞅踪依快关系,进山理解分布式应用印序的依赖关东.灾难恢复策略灾赛恢现DR)黄略在构建和运行物性应用程序的过程中扮演并Xvf角色,主要的作用跟的保业务的连续性.即使在突雉性4件中,灰碓恢乂策略也低保证关镀业务以破小的殳料利度持续运行.从而火火取咬映少停机时间和潜在的收入损失.灾注被红策略*JI攻抠便护至关心要.因为它们常常涉及券地的定期数据名份和效据复制,这有助于保按仃价值的业务信£1.同忖防止灾或期间数抠的伞邰去失.IrUf1.许多行业J及“相关政策的KiH这出¾策要求企业制定灾难情”策略来保护收班浓4.J郁保服务在灾城期间保持可用,IaiW大程1姚M少服务的受腿度.灾雄恢红集略i£Ki高了客户的仿仟度和防.改收.项实施良好H陵品实IR的灾冷情乂虎珞可以第H文流行的愎女时间.并可以精助血川松中快速地"审汁线.此外.灾嫌暂加树次的成本这不仅包括秒机造成的收入我失.还包括恢红应M程序和数据的费用.设计良好的灾难馍复旋略疗助于戒少这些经济失。策略的选界取决于您对应用程序的特定需未、但设定的恢级时同H标和恢Sl点H标以及您的预O1.AEaZonEastQDiSaSterReCOVerY昆,种定制化的划憎H务,可川上实”沐地和云上应用程序的灾难恢复策珞.fi关出名信必.谛参见犯3进云科技M站上的DiSaSterReeOVefyOIWOrktOatOnAmaZonWeftSerosftlAmaZOnMUlMReQionFundamentals,制定持续集成和持续交付(CIQD)策略y致应用程序受损的一个常见原因足代码或其他变更改变r底用程序之前的己知I:件状态.JR-更砰理不锅编致,那么这种变更可这会导致应用程序救繁发程.变更频率短掰.产生影响的可能性也就越大.不过,话帐变更的频率会产生更大的变更集合,由于其禽膜总例,因此更有可能使应用和序受损.持续集成和持续交付CICD)实践日在保折小规校和疑索的变更(从而提高生产力),同时通过自动化对句项变更过行高段别的检ft一共5本邀略包括; SttMNb持续集成和持续交付的根本目的是尽可能实现应用构建和部署流程的门动化.整个流程包括应用程序的构建、制试、部苦甚至监控.白功化管我有助于处低人为播次的可鲍性.礴保,致性.并使流程更加可缴和高效. IHMMfc开发(TDD),在端用程序代码之前编”测试,这样可以确保所有的代码都有相关的曲试.闪此极内了代码的可第性和自动化怜育的朋M.这些测试在持续里成针线中运行,以便验证变更. IUt加涮k虞,勉励开发人员顿簟MJ交代码并进行集成.小规极Ii频繁的更改更容立明试和讽试,进而隰低了出现很大何a的风险.自动化得低提交和SJyf的成本,象成成为可徒.注意您用以选择&榜响应方式.以段梅建深入做轿件方法.侬,在前ItIi的场嵬中,应用得鼠可能迭拜妁S瘠皮;用砂纺区不过在各转响应方式之网网定的时网建迟如兴糕务需iS理满澧指乐器在30秒后仍想处于报警求春,那么M鼠可我认为援年冬线无法同甜粳阴糕务器*因此.他B晒能会创建一个门动护M空设at个袋的送拉粽务器来帙应用糕务IS进程.效农指示器G38秒后仍处于报W状套.会同舞作人员发送W报,饕薄胞3连接弼除蛤麒务黯井堂武侬M迸林.应用程序秘认和企业选抒的响应方式施反璇出企业怜俵超过菠期工程豺间拊投入抵消运裁开支的僦f.您附连疗细发您*册晌应选招!第读郛侬期盘护成本.迸而选择恰当岭响定方式.比(S喷态检定性之类的架检校K、渐跪招之类的软件模贰射操年程序等等,附于应用程铮M队求温可艇存在也标*的ti聪方式指导,酿您可幽入9i中式架构功E蝴球蹲*明:.储后做出相IS9A.韧性建模糖性建模过求了应用W序值泣各移我期中原的过程.介境海中新的超趣匕您的闭队可松实现应用的可戏薄桃、自动化控翻和故障恢U.从而Mff球舐止中渐造成的叔弯.笠电溢云科技利川森拄维逊里为桢件梅卷的开发提供指分.该枢槃可以防助您找科中及其可使对汶用程存产生的距应在授海中沥的懿麻匕变可葭磔定构建球然.我ft的应用程序所备的中航线解搭洗我仃i£议您果阴懈处分柝框案,以使在便用程序迭代时更疑曲性模型.在每次造代中值用嚼件分柝柢黑也领型在设it除殴狡涎卬斯并在生产部署前后涌试应用程序W助于减少事故发生;科用秘性分析板累并发浦it粳蹴也ffUU实璟辍UH标.安全的故障比1!K你无法注免中断,瘙就璃保故处是安全的.考虑利用默认的故建安全探作梗贰来创建杈用程序,这样就不会号致来人的救务!8失。致他屋故2安全状态先一个皱子挺默认为只读摸俳,理不允泮用户鼾:£或怪连任樨数械.计对敏标年做战.您甚至可烧恭生应用睚序默认为关用状态,技至不执行只读森海,请号虎应用理序的故獐安全状态应这是什么.并在姬猴条默认便M这种排住模式.自动化部署管线在生产前环地中进行群:W和测试是项反乂而纪东的任务,还是使然门动化完成得好.自动化可以解放人力货源.减少出福的几率.实现流程力动化的机M通常帔称为首线.在创建管我时.我们建议比设施一系列逐步接近生产配置的测试环境的可以利用这一泰列环境来反4测试应用程序.与生产环境相比,第一种环境提供的功能比较行限.但成本却低得多.后妖环境应该不断添加服务并迸行犷展,以更好地反映生产环境,计先,在第一个环境中进行测试.如果部署的府用程序通过了第一个泅试环境中的所有测试,那么止它在一定的负皴卜运行一段时间,乔石M帝时间的推移是否会出现任何问理,请确认已姓正跑施贸/可视为性(请参回本指南后向所报警招熨')这样快就可以检测到出现的任何H虺.如果限用程田成功堆通过了这段观期期,则可以格真部署到下一个测试环境中,燃后IR复这个过程,添加环境支持的救外测试或仇软.在以这种力犬充分测试应用行序之行,悠便。I以使用之前设置的部冲方法将应用程庠部,到生产环境中(诂器M本指南前面的制定持恢妪成持发之付策略.AmazonBixs-1.ibrary中的:.力化-4尤;Ixm.部¥1-义是很好的资源,描述亚马逊云科技如何实现代码部署的自动化.生产部号之前的环境代依自仃所不同.14体取决J应用程序的复杂程僮及其依0a的类型.压力测试从我向上看,压力测试类似IrRfiwS试.为r验证应用程序及耳外却依赖顶是否按假期运行.您会对其离Ift性进行测试不过,测试乂超越收成测试,关注的是应用程序如何在明确的负我F运行.压力测试需要依证功能的小训性.囚此必须在成功的集成测试之行进行.了第应川和庠在预期负我下的响应情况以及任负我出预期时的行为非常肘要.这仃助r验证是否已挣实胞(必要的机制米陶保应用程序在极端负毂F的却性.在关亚马逊z;科技压力测试的全面指南,请参见AmazonSolutions1.ibrary中透工科技平价Hft分布式(我泅试.部署后活动W)性是个持械的过程,因此,邮鲁鹿用程序之后,必须继枚评估应用程序的物性,根据部詈后活动(比如持续的韧性评估)的玷米.您可能需也巾新评估并更斫在前性牛.命周期早期阶段执行的一生活动,开展初性评估在将应用程序部署到生产环境中之后,韧性W估并没有结束.在JK买的生产环境中,即使但有定义艮好的自动化SJ部管线.变更也时有发生.此外,可住还存在些您在钝罪前划性验语中尚未学忠的因素AmaZQnRes,IienCeHg中在一处核心区域,悠可以在比评估已部署的架构能否达成设定的恢复点目标和恢乂时间Fl标,您也可以利用这项做务,根据需求对应用程序的MJ性送行自动化评估甚至将它们集或到环线以成/拈续交旧工具中正1亚马强云科技博客文章k,HAmaZOnRerenccHub和AmazonCodcPQcIine连”:r必,用"序创性3所述,自动化评估企故住实践.N为它行助现保能在生产中持续评估新性状态.第4阶段:运营完成第3MfF3-一和,:或11取>后,就可以将应Ju程序都詈列生产环境中了.在运部介段,需要将应用程序部署到生产中,并管理客户体,应用程序的设口和实施决定HJtt自身的许乡的性拮!K,侬段侧双于系族川F建护和提i弁性ff探作媾,搭建中越运弦文化"助于为这些实KSM定标准和致性.可观察性监控W警报船了解客户体验的#耍方式您需要对应用程序进行检源.以了解R状态,而且需要从不问的用收进行