亚马逊云科技的持续集成和交付

云计算
re:Invent
0
0
## 视频 <video src="https://dev-media.amazoncloud.cn/30-LibaiGenerate/31-LiBaiRebrandingVideo/DOP208-Continuous_integration_and_delivery_for_AWS-LBrebrandingWCaptionCN.mp4" class="bytemdVideo" controls="controls"></video> ## 导读 亚马逊云科技提供了一个场所,您可以在此利用持续集成/持续交付 (CI/CD) 工具规划工作、协作编写代码、构建、测试和部署应用程序。在本讲座中,您将了解如何使用亚马逊云科技上的基础设施即代码创建端到端的 CI/CD 管道。 ## 演讲精华 <font color = "grey">以下是小编为您整理的本次演讲的精华,共1000字,阅读时间大约是5分钟。如果您想进一步了解演讲内容或者观看演讲全文,请观看演讲完整视频或者下面的演讲原文。</font> 演讲者Ranjit Ramakrishna是亚马逊云科技公司的产品经理,负责开发者工具的工作。在亚马逊云科技re:Invent上,他开始了关于持续集成和持续交付(CI/CD)挑战的演讲。他用一个轻松幽默的爸爸笑话强调了CI/CD管道总是承受着交付的压力。 在自我介绍之后,Ranjit概述了他的演讲议程。首先,他概述了亚马逊云科技丰富的开发者工具环境,描述了为开发者提供的用于创作、构建、部署和监控代码的各种服务。他特别提到了用于编写代码的亚马逊云科技Cloud9,用于在git库中存储源代码的CodeCommit,用于持续集成和构建工作流的CodeBuild,用于部署协调的CodeDeploy,以及用于端到端CI/CD协调的CodePipeline。Ranjit还提到了CodeCatalyst,这是去年在亚马逊云科技re:Invent上推出的一种新的集成开发者体验,用于在亚马逊云科技上构建全栈[无服务器](https://aws.amazon.com/cn/serverless/?trk=cndc-detail)应用程序。 接下来,Ranjit解释说,他将用剩下的演讲时间讨论三个核心主题:填补开发人员需求与亚马逊云科技服务之间的差距,提高开发者工具的性能,以及详细介绍即将推出的功能和能力的产品路线图。 为了设置背景,Ranjit承认实施健壮的CI/CD管道是相当具有挑战性的,因为他直接从客户那里听到了这个情况。他分享了一个内部亚马逊云科技团队的例子,该团队利用Code服务构建了复杂的多区域和多帐户CI/CD管道。该团队使用了额外的亚马逊云科技服务,如亚马逊云科技CDK、亚马逊云科技Secrets Manager和[Amazon CloudWatch](https://aws.amazon.com/cn/cloudwatch/?trk=cndc-detail),以及与CodeBuild、CodeDeploy和CodePipeline一起使用,以启用安全检查和监控。Ranjit解释道,像这样的真实世界用例经验教训有助于改进亚马逊云科技团队对未来的Code服务的改进。 转到他的演讲的第一个主题“填补空白”,Ranjit描述了一些最近推出的高度客户请求的功能: - 除了GitHub和Bitbucket之外,还将支持与其他第三方源代码仓库的集成,以支持GitLab。初始发布支持连接到GitLab.com仓库,即将推出的支持包括自托管GitLab仓库。 在亚马逊云科技的持续集成和持续部署(CI/CD)管道中,客户可以利用GitHub上超过20,000个预构建的动作,直接启用GitHub操作来运行CodeBuild。为了满足使用Swift管理依赖的iOS和macOS开发者的需求,CodeArtifact现已支持Swift包管理器。在单个CodeDeploy部署组中,支持多个负载均衡器的附件,将内部和外部流量的单独部署组的管理开销减少高达92%。这大大简化了从经典负载均衡器迁移到网络或应用负载均衡器的过程。 关于性能改进的第二个主题,Ranjit详细介绍了团队是如何提高开发者体验的各个方面的: - 通过增强上传档案API,优化CodeCommit中对大型仓库(大小超过2GB)的Git克隆过程,速度最高可提高92%,显著加快了管道执行的启动速度。 - 为CodeBuild引入基于Lambda的构建,只需2-4秒即可启动,比基于EC2的构建快14倍。Lambda构建的运行成本也比EC2构建低50%。 - 通过AMI优化,将CodeBuild中的EC2构建启动时间减少跨所有实例类型达14秒。 - 将CodeArtifact中的包请求率从每秒100次提高到每秒1000次,提高了10倍的性能,以支持更大的客户。 Ranjit然后在亚马逊云科技管理控制台上现场演示了这些新功能,包括参数化CodePipelines、在CodeBuild中运行GitHub操作以及在CodeArtifact中发布Swift包。 转到他的演讲的第三个主题,Ranjit概述了一些近期的产品路线图的关键项目: - 在CodeCommit中支持Git Large File Storage (LFS),以便将大型二进制文件(如视频、模型和图形)存储在Git仓库之外,同时保留引用它们的指针文件。 - 安全地在亚马逊云科技帐户之间共享集中式的第三方源提供者(如GitHub企业)连接,以减少配置开销。 - 在CodeArtifact中一致地应用细粒度的访问控制规则,而不是需要为每个包类型单独定义规则。 - 当上游有新版本发布时,自动更新CodeArtifact中的Python包,以保持依赖项的最新状态。 CodeDeploy直接向[Amazon EKS](https://aws.amazon.com/cn/eks/?trk=cndc-detail) Kubernetes集群添加部署,实现了统一的部署方式。此外,通过提供管理Lambda函数来实现CodeDeploy生命周期钩子(如流量迁移),从而降低了基础设施管理的成本。在CodePipeline中,支持基于Git分支模式的触发器和并行执行模式,以加速反馈,满足特征分支工作流程的需求。同时,将CodePipeline的管道并发限制提高10倍,以便能够同时验证多个拉取请求。此外,改进了CodePipeline中跨帐户操作的错误可视化,避免了在不同控制台之间切换的麻烦。最后,通过重新运行已成功处理的先前源修订版,在CodePipeline中实现了手动回滚功能。 Ranjit表示,这些新功能与三个主要主题保持一致:支持开发人员的工作流程、减少管理成本和提高CI/CD管道的可观察性。他强调,亚马逊云科技开发者工具团队对这些即将推出的功能感到非常兴奋,并期待得到客户的直接反馈。总的来说,Ranjit总结道,亚马逊云科技通过紧密关注用户需求、监测内部使用模式以及不断优化开发者生产力,正在迅速改善Code服务。CodeCommit、CodeBuild、CodeDeploy、CodePipeline和CodeArtifact的持续创新将使开发人员在亚马逊云科技上更快速、更可靠地构建、测试和发布软件。 从Ranjit深思熟虑且全面的演讲中,我们可以清晰地看到亚马逊云科技团队深入理解了开发者的需求,并致力于提供最佳的云中的CI/CD体验。 **下面是一些演讲现场的精彩瞬间:** 领导者们对于持续集成/持续交付(CI/CD)管道为何时常面临压力表示质疑。 ![](https://d1trpeugzwbig5.cloudfront.net/DOP208-Continuous_integration_and_delivery_for_AWS/images/rebranded/DOP208-Continuous_integration_and_delivery_for_AWS_0.png) 他们暗示,亚马逊云科技正研发一项新功能,旨在提升客户体验。 ![](https://d1trpeugzwbig5.cloudfront.net/DOP208-Continuous_integration_and_delivery_for_AWS/images/rebranded/DOP208-Continuous_integration_and_delivery_for_AWS_1.png) CodePipeline作为一个平台,将亚马逊云科技的各种服务和应用程序的部署、监控以及发生错误时的应用程序回滚变更紧密相连。 ![](https://d1trpeugzwbig5.cloudfront.net/DOP208-Continuous_integration_and_delivery_for_AWS/images/rebranded/DOP208-Continuous_integration_and_delivery_for_AWS_2.png) 这项新功能使得客户能够逐步地从经典负载均衡器过渡到应用程序或网络负载均衡器,而不需要部署新的基础设施。 ![](https://d1trpeugzwbig5.cloudfront.net/DOP208-Continuous_integration_and_delivery_for_AWS/images/rebranded/DOP208-Continuous_integration_and_delivery_for_AWS_3.png) 此外,亚马逊云科技还在Python领域推出了全新的自动化包管理功能。 ![](https://d1trpeugzwbig5.cloudfront.net/DOP208-Continuous_integration_and_delivery_for_AWS/images/rebranded/DOP208-Continuous_integration_and_delivery_for_AWS_4.png) 为了支持特性分支的基础开发,亚马逊云科技正在通过添加基于分支模式的触发器来优化CodePipeline。 ![](https://d1trpeugzwbig5.cloudfront.net/DOP208-Continuous_integration_and_delivery_for_AWS/images/rebranded/DOP208-Continuous_integration_and_delivery_for_AWS_5.png) ## 总结 专业中文编辑版: 演讲者根据客户的反馈,探讨了亚马逊云科技在代码服务方面的新功能和改进。这些改进主要集中在提高性能上。例如,CodeCommit的git克隆时间已经减少了高达92%,针对大型存储库。CodeBuild现在提供了基于Lambda的计算,将启动时间缩短到2-4秒。此外,CodeArtifact中的包请求速率已经从每秒100个增加到了每秒1000个。 其他关键的改进还包括在CodeDeploy中支持多个负载均衡器,以便简化管理和外部流量的管理,以及允许CodePipeline管道参数化,以获得更大的灵活性。 展望未来,CodeCommit将支持大型文件,而CodeDeploy将能够扩展部署到[Amazon EKS](https://aws.amazon.com/cn/eks/?trk=cndc-detail)。CodePipeline也在研究一些用于基于分支开发的特性,如触发器和并行执行模式,以实现更快的反馈循环。此外,还将增加对管道错误的可视化和手动回滚功能。 总的来说,重点是缩小代码服务与开发人员现有工具和流程之间的差距,同时减少管理开销。其目标是使软件的构建、测试和交付过程更快、更简单。 ## 演讲原文 ## 想了解更多精彩完整内容吗?立即访问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
目录
关闭