麦当劳和亚马逊云科技 ProServe 实施可重复使用和可观察的管道

云计算
re:Invent
0
0
## 视频 <video src="https://dev-media.amazoncloud.cn/30-LibaiGenerate/31-LiBaiRebrandingVideo/PRO201-McDonald_s___AWS_ProServe_implement_reusable___observable_pipelines-LBrebrandingWCaptionCN.mp4" class="bytemdVideo" controls="controls"></video> ## 导读 麦当劳是全球销售额最大的快餐公司之一,在 100 多个国家有 40000 多家餐厅为客户提供服务。麦当劳认识到需要为外部和内部客户建立和支持全面的体验。通过为其内部全球产品开发团队提供可扩展、有弹性和可靠的管道,这些管道足够灵活,可以支持多个用例,麦当劳正在帮助团队通过广泛的渠道满足客户的预期数字体验。通过在亚马逊云科技管道中扩展可观察性,麦当劳能够随着工具和技术选择的发展跟踪和改进开发人员体验。 ## 演讲精华 <font color = "grey">以下是小编为您整理的本次演讲的精华,共900字,阅读时间大约是4分钟。如果您想进一步了解演讲内容或者观看演讲全文,请观看演讲完整视频或者下面的演讲原文。</font> 麦肯锡作为全球最大且最具标志性的餐厅连锁之一,每天在全球超过4万家位于118个国家的餐厅中,为超过10亿客户提供服务。为了保持运营顺利进行,麦当劳雇佣了超过220万人。这个庞大的员工队伍中,有数千名才华横溢的开发者,他们的任务是确保麦当劳的技术栈保持尖端,并优化以适应如此庞大的规模。 尽管麦当劳已经完善了面向外部客户的“开发食品运营”(在视频中定义为向客户提供快速持续的食品交付),但其内部的DevOps实践却落后了。在过去,麦当劳的产品团队建立了独立、复杂的管道,对性能指标的可见性有限。随着数字销售的增长60%,以及团队开始更频繁地部署代码,这带来了挑战。自制的解决方案难以扩展,当太多团队试图同时部署时,它们通常会锁定或完全崩溃。 为了解决这个问题,麦当劳转向亚马逊云科技专业服务部门进行全面评估,涉及17个关键产品团队,共25个业务领域。评估包括两个主要部分:能力差距分析以评估麦当劳在5个维度上的DevOps成熟度,以及价值流映射以识别开发工作流程中的约束。 能力差距分析关注了组织采用、开发生命周期、自动化治理和可观察性。价值流映射收集了关于引导时间、过程时间、完成度和准确度的百分比以及失败路径的数据,以确定约束。 评估结果揭示了三个主要的改进机会:增强开发者体验、加强安全和提高可观察性。为解决第一个领域——开发者体验的问题,麦当劳根据指导性建议成立了DevOps平台团队和一个独立的赋能团队。 DevOps平台团队致力于构建可重复使用的组件,以简化并标准化管道过程。他们的目标是降低复杂性,使得开发人员能够专注于解决业务问题而非应对繁琐的系统管理。在平台建设过程中,该团队通过与团队成员的互动与协作,帮助他们采用新的组件来弥补现有空缺。为了提高安全性,评估结果显示团队在管道之外的安全检查方面存在手动处理的不一致性。为了解决这个问题,麦当劳创建了可在管道内部独立调用的扫描可重用工作流程。起初,他们重点关注了集成SonarQube分析功能。集中和标准化这些控制措施有助于增强审计能力。此外,他们还将安全扫描结果整合到了其Datadog可观察性平台上,以便在整个构建和部署过程中识别潜在问题。最后,为了提高可观察性,麦当劳使用了Datadog平台来实现针对产品团队和平台团队的定制仪表板。这样,产品团队可以了解管道性能,快速定位故障;而平台团队则可以通过监测关键指标来评估性能和可靠性,从而建立起信任并逐步实现改进。在这些重点领域的基础上,麦当劳开始使用GitHub Actions构建初始的最小可行平台(MLP)。尽管这个平台尚不完善,但它已经奠定了持续集成、持续交付以及可观察性的坚实基础。在CI方面,它利用GitHub实现源控制、构建、测试和工件处理。而在CD方面,它采用了Argo CD的手动GitOps方式。所有的可观察性数据都会流入其Datadog平台。此外,MLP还包含了一些优化措施,例如自动调整跑员以防止构建服务器过载。当需要新增跑员时,Lambda函数会根据CloudWatch事件进行调度;而当跑员不再需要时,它们会被终止以减少资源浪费。除了上述优化措施外,麦当劳还通过添加额外的Datadog仪表板来帮助平台团队追踪性能的提升。这些仪表板使他们能够与旧的Jenkins平台进行比较,从而衡量MLP在实际操作中带来的性能改善。自始至终,即使还处于初级阶段,MLP就已经让开发者的生活变得更加轻松,因为他们不再需要维护复杂的自定义管道。 麦当劳在DevOps领域取得了显著的进步,但仍前路漫漫。在未来一年里,他们将着力强化MLP(麦当劳连锁程序),提高安全性、AI和代码扫描功能。具体而言,他们计划引入秘密扫描、漏洞扫描和策略即代码等相关工具。此外,他们还打算将平台拓展至其他部门并实行标准化回滚。 从长期来看,麦当劳期望实现内部源代码共享以及运用生成性AI来自动进行代码审查。推动内部源代码共享的目的是鼓励团队将组件作为内部开源项目来开发,从而提高协作效率。 这一逐步推进的DevOps改革展示了如何通过利用亚马逊云科技的专业服务来识别针对客户特定需求定制的高潜力机会。由顾问主导的评估为麦当劳现有的能力和限制提供了详尽的分析。以人为本的方法关注于组建跨职能团队、可重用的架构以及在GitHub、GitHub Operations、Datadog和Lambda等亚马逊云科技服务上建立端到端的可观察性。 对于麦当劳而言,这意味着在保持全球超过10亿顾客的青睐的品牌安全性和可靠性(在全球118个国家的4万多家餐厅雇佣了220多万员工)的同时,加快市场准入速度。 随着在亚马逊云科技的运用取得进展,麦当劳的未来充满期待。然而,由于总有新的优化和创新方法,DevOps之旅永无止境。麦当劳计划继续与时俱进,采用亚马逊云科技提供的最新功能,如自动扩展、基础设施即代码和生成性AI。他们的“dev food ops”实力或许需要数十年才能打磨完善,但他们的内部DevOps实践正加速追赶。 **下面是一些演讲现场的精彩瞬间:** 亚马逊云科技的领导层探讨了如何协助麦当劳将其实体餐厅经验应用于其内部开发运营平台。 ![](https://d1trpeugzwbig5.cloudfront.net/PRO201-McDonald_s___AWS_ProServe_implement_reusable___observable_pipelines/images/rebranded/PRO201-McDonald_s___AWS_ProServe_implement_reusable___observable_pipelines_0.png) 评估过程涉及麦当劳的17个不同产品团队,目的是找出可通过平台团队解决的一般限制和解决方案。 ![](https://d1trpeugzwbig5.cloudfront.net/PRO201-McDonald_s___AWS_ProServe_implement_reusable___observable_pipelines/images/rebranded/PRO201-McDonald_s___AWS_ProServe_implement_reusable___observable_pipelines_1.png) 为了推动产品团队的采用,支持团队会提供培训和指导。 ![](https://d1trpeugzwbig5.cloudfront.net/PRO201-McDonald_s___AWS_ProServe_implement_reusable___observable_pipelines/images/rebranded/PRO201-McDonald_s___AWS_ProServe_implement_reusable___observable_pipelines_2.png) 然而,现有的组件并非高度可重用,因此,一个包含CI、CD和可观察性组件的最小可爱平台应运而生。 ![](https://d1trpeugzwbig5.cloudfront.net/PRO201-McDonald_s___AWS_ProServe_implement_reusable___observable_pipelines/images/rebranded/PRO201-McDonald_s___AWS_ProServe_implement_reusable___observable_pipelines_3.png) 亚马逊云科技已将安全扫描提前至流程初期,以便团队能够在更早期阶段解决问题。 ![](https://d1trpeugzwbig5.cloudfront.net/PRO201-McDonald_s___AWS_ProServe_implement_reusable___observable_pipelines/images/rebranded/PRO201-McDonald_s___AWS_ProServe_implement_reusable___observable_pipelines_4.png) 通过屏幕截图,我们可以看到团队在部署问题和构建时间方面取得了可见性,从而使平台得以实现所有权转移。 ![](https://d1trpeugzwbig5.cloudfront.net/PRO201-McDonald_s___AWS_ProServe_implement_reusable___observable_pipelines/images/rebranded/PRO201-McDonald_s___AWS_ProServe_implement_reusable___observable_pipelines_5.png) 演讲者呼吁听众通过扫描二维码来联系亚马逊云科技的专业服务,以帮助他们优化其DevOps策略。 ![](https://d1trpeugzwbig5.cloudfront.net/PRO201-McDonald_s___AWS_ProServe_implement_reusable___observable_pipelines/images/rebranded/PRO201-McDonald_s___AWS_ProServe_implement_reusable___observable_pipelines_6.png) ## 总结 麦当劳在全球拥有超过40,000家餐厅,每天为超过10亿顾客提供服务。为了支持这一庞大的运营,麦当劳有2,000多名开发者致力于900个应用程序的开发。然而,每个产品团队都独立地开发了管道,导致了不可靠且不可扩展的系统。 亚马逊云科技评估了17个团队,发现了一些共同的问题:由于复杂的管道导致的高开发人员工作量,手动在管道外进行的缓慢安全检查,以及对部署的可观察性有限。 亚马逊云科技建议麦当劳建立一个DevOps平台团队,以构建一个最小化可信赖平台(MLP)—— 一组用于CI、CD和可观测性的可重复使用的组件。一个赋能团队将帮助团队采用新的平台。 通过标准化工具和流程,MLP将减少工作量。安全性将通过将扫描集成到管道中来向左移动。将为产品团队和平台团队添加可观察性,以建立信任并持续改进。 到2022年,麦当劳将扩大MLP,增强安全性,实施回滚,并引入代码审查工具。麦当劳的DevOps成熟度将继续增长。 ## 演讲原文 ## 想了解更多精彩完整内容吗?立即访问re:Invent 官网中文网站! [2023亚马逊云科技re:Invent全球大会 - 官方网站](https://webinar.amazoncloud.cn/reInvent2023/?s=8739&smid=19458 "2023亚马逊云科技re:Invent全球大会 - 官方网站") [点击此处](https://aws.amazon.com/cn/new/?trk=6dd7cc20-6afa-4abf-9359-2d6976ff9600&trk=cndc-detail "点击此处"),一键获取亚马逊云科技全球最新产品/服务资讯! [点击此处](https://www.amazonaws.cn/new/?trk=2ab098aa-0793-48b1-85e6-a9d261bd8cd4&trk=cndc-detail "点击此处"),一键获取亚马逊云科技中国区最新产品/服务资讯! ## 即刻注册亚马逊云科技账户,开启云端之旅! [【免费】亚马逊云科技“100 余种核心云服务产品免费试用”](https://aws.amazon.com/cn/campaigns/freecenter/?trk=f079813d-3a13-4a50-b67b-e31d930f36a4&sc_channel=el&trk=cndc-detail "【免费】亚马逊云科技“100 余种核心云服务产品免费试用“") [【免费】亚马逊云科技中国区“40 余种核心云服务产品免费试用”](https://www.amazonaws.cn/campaign/CloudService/?trk=2cdb6245-f491-42bc-b931-c1693fe92be1&sc_channel=el&trk=cndc-detail "【免费】亚马逊云科技中国区“40 余种核心云服务产品免费试用“")
目录
亚马逊云科技解决方案 基于行业客户应用场景及技术领域的解决方案
联系亚马逊云科技专家
亚马逊云科技解决方案
基于行业客户应用场景及技术领域的解决方案
联系专家
0
目录
关闭