架构设计参考项目系列主题:AWS Fargate,一个用于容器的无服务器计算引擎

本文转自: CIOFamily

AWS Fargate是一个用于容器的无服务器计算引擎,它使您更容易专注于构建应用程序,无需配置和管理服务器,允许您为每个应用程序指定和支付资源,并通过设计应用程序隔离来提高安全性。目前Fargate是CIO 认证的服务,CIO Terraform模块也支持Fargate服务的部署,一般Fargate服务会和其他的AWS服务一起使用和部署,比如 ALB, ECS Cluster, ECR, Cert Manager, CloudWatch, Secret Manger作为整体的Fargate方案。 参考下面的架构方案图。

改进部署方式前的痛点

1) CIO Terraform会集中部署所有关于Fargate相关上述服务,所以部署的时间会非常长,运行一次pipeline需要先执行CI花费10分28秒,再执行相应环境的CD花费13分7秒,所以部署一次单一环境代码大约需要 24分 ,是非常耗时的,因为fargate相关的服务和fargate service 放在了一起部署。再加上其他环境的部署,部署时间可想而知。

CI执行时间一共10分28秒如下图,

CD执行时间一共13分7秒如下图,

2) 由于fargate相关的服务和fargate service 放在了一起部署,所以经常相互影响,比如通常由于fargate相关的服务部署失败导致fargate service部署失败。

3)当部署DEV环境后,我需要再运行其他环境的CD pipeline 才能将service部署到TEST环境,降低了开发的效率。

改进部署方式后解决的问题

1) 部署时间减少,部署频率提高,部署CI花费6分44秒,再执行相应环境的CD花费8分35秒,所以部署一次单一环境代码需要 14分,可以看到改进后的部署时间缩短了大约40%。

CI执行时间一共6分44秒如下图,

CD执行时间一共8分35秒如下图,

2) 由于fargate相关的服务和fargate service 独立部署,减少了由于相互影响导致的失败部署,部署成功了极大的提高了。

3) 当部署DEV环境后,我们不需要再运行其他环境的CD pipeline,可以在DEV的CD pipeline直接部署到其他环境,提高了开发的效率。

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值