在亚马逊云上使用Backstage提升开发者体验
关键字: [Amazon Web Services re:Invent 2024, 亚马逊云科技, 生成式AI, Backstage, Developer Experience, Self-Service Infrastructure, Cloud Platform, Software Catalog, Infrastructure Templates]
导读
在开发者生产力和协作至关重要的时代,Backstage是一个改变游戏规则的工具。Backstage利用开源框架,通过为您的云端和本地基础设施工具及服务提供统一界面,简化了开发者体验。探索丰田如何将Backstage作为其平台工程策略的一个组成部分,以及您如何可以转变开发工作流程,创造卓越的开发者体验。同时,了解如何通过您的开发者门户赋能生成式AI模型,以驱动广泛的功能。
演讲精华
以下是小编为您整理的本次演讲的精华。
为了不断提升开发人员体验,企业一直在努力应对管理开发人员认知负荷的艰巨挑战。上下文切换的复杂性、基础设施供应延迟以及过多的工具和浏览器标签页(通常达15到20个)阻碍了生产力,减缓了开发人员的核心职责:快速构建和部署应用程序。
内部开发者自助平台应运而生,旨在解决这一困境。这些平台抽象出了底层云基础设施、CI/CD管道、安全性和可观测性的复杂性,通过模板和集中目录,使开发人员能够自助满足基础设施需求。通过减少认知负荷和最小化上下文切换,这些平台使开发人员能够专注于核心职责,营造敏捷高效的环境。
在这场革命的前沿是Backstage,一个最初由Spotify构思的开源开发者门户平台。Backstage为企业构建自己的开发者平台提供了坚实的基础,提供了一套解决开发人员面临的多方面挑战的核心功能。
软件目录是Backstage的核心支柱,是一个全面的存储库,使开发人员能够查看组织生态系统中的所有组件,在大型企业如丰田公司中,这可能跨越30万多个应用程序。这个集中式目录不仅有利于发现,还促进了团队之间的协作和知识共享。丰田的实施允许开发人员查看动态应用程序依赖关系、团队所有权,甚至底层的亚马逊云科技基础设施服务,如他们的应用程序所依赖的Amazon Relational Database Service (RDS)或Amazon Elastic Container Service (ECS)。
与软件目录相辅相成的是模板,这是一个强大的功能,可实现基础设施自助供应。例如,丰田已经开发了超过40个经过批准的模板,被称为“蓝图”,其中包含最佳实践和良好架构评分。其中一个专门用于在Amazon Elastic Container Service (ECS)上部署Spring Boot应用程序的蓝图,包含了惊人的12,000行Terraform代码,涉及复杂的架构,包括Amazon API Gateway、亚马逊云科技 Network Firewalls和全面的身份和访问管理(IAM)配置。通过这些模板,开发人员可以快速启动和配置所需资源,遵守组织制定的最佳实践和防护措施。这种流程简化了流程,消除了冗长的工单系统和人工干预的需要,加快了开发生命周期。
Backstage的技术文档组件解决了经常被忽视的文档问题,确保开发人员可以随时获取所需的知识和最佳实践。通过将文档集中在平台中,开发人员可以无缝访问所需信息,减少在不同来源之间搜索的时间和精力。
最值得注意的是,Backstage通过插件的可扩展性,允许组织根据自身需求定制平台。这些插件可以与现有工具和系统集成,为开发人员提供真正统一的体验,进一步减少认知负荷和上下文切换。丰田利用这一功能与亚马逊云科技服务(如Amazon Security Hub)集成,直接在Backstage中公开安全发现结果,供开发人员调查和解决。
作为Backstage的先行采用者,丰田汽车北美公司开启了提升开发人员体验的变革之旅。受丰田生产系统的指导原则(高质量、低成本和最短交付时间)的驱动,该公司认识到需要解决遗留应用程序带来的不一致性和运营开销问题,这些应用程序经过数十年的有机发展,跨越数百上千个应用程序,遍及制造工厂、销售系统和3,500家经销商。
于是,基于Backstage构建的“Chauffeur”自助云采用平台应运而生。丰田代表Keshawar Gundavarapu分享了公司的愿景:为开发人员提供一个自助平台,该平台包含安全性和成本优化防护措施,培养持续改进(Kaizen)的文化。值得注意的是,当丰田询问开发团队他们的容器部署流程时,他们收到了17种不同的答复,凸显了标准化和一致性的需求。
Chauffeur平台团队采用了以产品为中心的方法,专门的团队负责开发者门户、CI/CD管道和其他关键组件。他们发布产品路线图、制定服务级别协议(SLA),并积极寻求开发人员用户的持续反馈,确保平台与他们的需求同步发展。
Chauffeur门户本身就是集成和创新的杰作。它公开了一个动态显示应用程序依赖关系的软件目录,为开发人员提供了对生态系统的全面视图。通过AI驱动的洞察,增强了成本可见性,实现了云支出的主动监控和优化。丰田报告了大量成本节约,其中一大部分被重新分配到了收入产生的产品上。
经过批准的基础设施模板“蓝图”是平台的基石。这些蓝图包含了最佳实践和良好架构评分,确保开发人员在快速供应资源的同时,遵守组织标准。其中一个蓝图专门用于Amazon Relational Database Service (RDS),通过简单的设置过程,集成了高可用性和灾难恢复配置,抽象出了虚拟私有云(VPC)配置的复杂性。
培训内容和文档无缝集成,使开发人员能够有效利用平台。丰田甚至将整个Confluence文档引入Backstage的技术文档,创建了一个集中的、可搜索的存储库,托管在Amazon Simple Storage Service (Amazon S3)上。
在引擎盖下,Chauffeur利用Backstage与其他开源工具(如OpenSearch)相结合。此外,丰田还集成了“Chauffeur Archie”等AI助手,帮助开发人员发现相关文档,并根据其他团队共享的使用数据估算成本。这个AI助手在底层利用了Amazon Bedrock来提供智能响应。
Chauffeur对丰田的开发人员体验产生了深远影响。该公司报告了显著的时间节约,开发人员每年平均节省了52周的生产力,其中12周节省来自启动阶段,另外40周节省来自持续升级和改进的早期采用团队。成本优化是一个切实的好处,大量节省被重新分配到了收入产生的产品上。此外,该平台培养了持续改进的文化,开发人员通过网络效应和社区最佳实践,积极参与平台的发展。
认识到进一步创新的潜力,Brian Laez的同事Neil探索了将生成式AI功能集成到Backstage的可能性。这一集成旨在通过利用AI模型(如Amazon Claude和新发布的Amazon Nova)的上下文感知和知识检索能力,增强开发人员的支持和问题解决能力。
该架构的设计是将Backstage插件作为AI模型可以按需调用的“工具”。这些工具将允许模型检索上下文信息,如应用程序详情、CI/CD运行状态、安全发现结果等。通过利用这些上下文数据,AI模型可以提供准确、可操作的响应,并针对组织特定的平台和流程进行定制。
例如,当开发人员在Backstage中遇到高严重性的安全发现,指出他们的ECS容器在没有只读文件系统访问权限的情况下运行时,他们可以向AI模型查询解决方案。该模型凭借调用相关Backstage插件的能力,将检索必要的上下文,如应用程序的基础设施详情和组织的自定义Terraform模块。这种上下文感知将使模型能够提供不仅正确,而且在组织平台约束下可操作的解决方案,引用在自定义Terraform模块中启用只读文件系统访问的特定标志。
此外,Neil讨论了将生成式AI集成到Backstage现有流程中的潜力,消除了开发人员进行提示工程的需求。通过直接在Backstage插件中嵌入AI驱动的按钮或界面,开发人员可以获得结构化、可操作的响应,而无需编写提示或了解提示工程的复杂性。
将生成式AI集成到Backstage代表了提升开发人员体验的重大进步。通过利用AI模型的上下文感知和知识检索能力,组织可以为开发人员提供量身定制的、可操作的见解和解决方案,进一步减少认知负荷,加快开发生命周期。
当会议临近尾声时,演讲者强调了三个关键要点,概括了他们的旅程的精髓:
- 自助服务作为核心平台战略:将自助服务作为开发者平台战略的基本支柱是至关重要的。自动化和自助服务应该是默认选项,让开发者能够配置资源和基础设施,而无需依赖中央团队或人工干预。
- 网络效应和社区贡献:利用开发者社区的集体知识和专业知识至关重要。通过培养一种开发者可以贡献最佳实践、见解和改进的环境,平台可以不断发展和适应组织不断变化的需求。
- 持续改进:任何平台都不可能真正完美。持续改进应该植根于平台的DNA中,坚持不懈地纳入用户反馈,适应新的云服务能力,并根据不断发展的组织需求优化开发者体验。
在云计算和软件开发不断发展的世界中,追求卓越的开发者体验已成为一项战略重点。通过采用像Backstage这样的开源解决方案,并整合像生成式人工智能这样的尖端技术,组织可以让开发者在敏捷、高效和持续创新的环境中茁壮成长。
丰田通过Chauffeur的转型之旅和探索人工智能驱动的开发者赋能,见证了可能性的艺术。随着组织继续应对云采用和软件开发的复杂性,这些开拓性努力中汲取的经验教训无疑将塑造开发者平台的未来,为生产力、创新和卓越的开发者体验开辟新时代。
下面是一些演讲现场的精彩瞬间:
Brian Laez介绍了他自己和他的同事Keshawar(来自丰田汽车北美公司)以及Neil,他们参加了在亚马逊云科技 re:Invent 2024大会上举办的“通过Backstage提升开发者体验”的会议。
亚马逊云科技强调了开发者门户如何能够简化内部、外部和组织层面的流程,加快入职过程,并与Gartner的建议保持一致。
尽管架构复杂,但其遵循了一种结构化的方法,包括平台工程团队、架构评审、登陆区域、编排器以及跨账户或VPC的自助基础设施部署。
亚马逊云科技展示了Backstage强大且可定制的插件生态系统,使组织能够无缝集成和调整各种工具和功能以满足其特定需求。
亚马逊云科技推出了Archie这款AI助手,帮助开发人员浏览文档,并为他们的工作负载找到相关解决方案和成本估算。
解释了像Claude和Nova这样的强大模型的机制,它们可以将任务分解为步骤,利用API和搜索等工具,并通过思维链条迭代地得出最终答案。
演讲者强调了网络效应的重要性,以及将直接参与工作的团队的专业知识纳入产品中。
总结
在这场引人入胜的演讲中,来自丰田汽车北美公司的Brian Laez和Kishore Gunda分享了他们利用Backstage(一个用于构建开发者门户的开源平台)来提升开发者体验的见解。他们的叙述围绕以下几个关键点展开:
- 减轻开发人员的认知负担至关重要,使他们能够专注于构建功能和扩展应用程序,而不是与复杂的基础设施和工具纠缠。Backstage提供了一个集中式的自助服务平台,以简化这一过程。
- 丰田的旅程始于认识到需要一个统一的平台来解决他们庞大的应用程序环境中存在的不一致性、重复工作和大量变更。他们的解决方案“Chauffeur”旨在通过自助服务、安全性和成本优化来简化产品开发。
- 基于Backstage构建的Chauffeur门户提供了一个单一窗口,集成了各种功能插件,包括软件模板(蓝图)、目录、成本跟踪和文档。它利用人工智能辅助功能引导开发人员找到相关解决方案,并提供成本趋势分析。
- 持续改进、网络效应(培养贡献者社区)以及以产品为中心的方法(拥有专门的团队和路线图)对于平台的成功至关重要。通过这一举措,丰田实现了显著的时间节省、成本降低和开发人员生产力提高。
在结尾部分,Neil Aveckman演示了如何将生成式人工智能与Backstage相结合,进一步增强开发者体验,为平台的特定配置和工具提供上下文相关、可操作的响应。
亚马逊云科技(Amazon Web Services)是全球云计算的开创者和引领者。提供200多类广泛而深入的云服务,服务全球245个国家和地区的数百万客户。做为全球生成式AI前行者,亚马逊云科技正在携手广泛的客户和合作伙伴,缔造可见的商业价值 – 汇集全球40余款大模型,亚马逊云科技为10万家全球企业提供AI及机器学习服务,守护3/4中国企业出海。