Skip to content
Go back

AWS 知识点 - 部署和管理 - 拓展(针对 SAP-C02 认证)

| 0 Views Edit page

AWS 部署和管理相关知识点。
只有针对 AWS Certified Solutions Architect - Professional (SAP-C02) 认证补充的内容,基础请参考针对 SAA-03 的考点汇总:AWS 知识点 - 部署和管理
实操请参考:AWS 实操 - 部署和管理


Elastic Beanstalk 部署策略

一、Elastic Beanstalk 部署策略基本概念

Elastic Beanstalk 部署策略基本概念

二、一次部署全部 (All at once) 策略

一次部署全部 (All at once) 策略

  • ⚠ 执行部署时,环境中的所有实例将短时间禁用(有停机时间)
  • ⚠ 应用程序更新失败时,只能通过手动部署之前的旧版本进行回滚

三、滚动部署 (Rolling) 策略

滚动部署 (Rolling) 策略

四、附加批次滚动部署 (Rolling with additional batch) 策略

附加批次滚动部署 (Rolling with additional batch) 策略

  • 新启动额外的新实例进行部署保证服务容量,并在部署完成后删除

五、不可变部署 (Immutable) 策略

不可变部署 (Immutable) 策略

  • 由于需要通过健康状况检查,新的实例才会替换旧的实例,因此这是生产环境的核心业务的首选之一
  • 仍然使用旧的弹性扩展组,这与使用新的扩展组替换旧扩展组的 蓝/绿部署 (Blue/green deployments) 不同。

AWS CodeDeploy

一、AWS CodeDeploy 基本概念

AWS CodeDeploy 基本概念

二、使用 CodeDeploy 部署 EC2

使用 CodeDeploy 部署 EC2(右图为 HalfAtATime 部署模式)

三、使用 CodeDeploy 部署 Auto-Sacling Group (ASG) 中的实例

使用 CodeDeploy 部署 Auto-Sacling Group 中的实例(V1 对应的 ASG 之后将被删除)

  • 就地部署 (In-place deployments):更新当前 ASG 中所有的 EC2 实例
  • 蓝/绿部署 (Blue/green deployments)
    • 根据之前的配置创建一个新的 ASG
    • 必须使用 ELB(负载均衡器)
    • 可以进行配置如何处理旧的实例

四、使用 CodeDeploy 部署 Lambda

使用 CodeDeploy 部署 Lambda(V1 版本之后将被删除)

  • 可以设置 CloudWAtch Alarms 实现自动回滚
  • SAM (Serverless Application Model) 原生使用 CodeDeploy 进行部署
  • 流量转移 (Traffic Shifting) 前通过 Pre-Traffic Hook 进行验证,转移后通过 Post-Traffic Hook 进行验证

五、使用 CodeDeploy 部署 ECS

使用 CodeDeploy 部署 ECS(任务定义 1 之后将被删除)


AWS Service Catalog

一、AWS Service Catalog 基本概念

AWS Service Catalog 基本概念
AWS Service Catalog 重点

  • 可以通过 Service Catalog 预先定义资源的模板,供其他用户快速启动 AWS 资源,来实现组织的一致性以及满足合规性要求

二、AWS Service Catalog 管理员及用户流程

AWS Service Catalog 管理员及用户流程


Serverless Application Model (SAM)

一、Serverless Application Model (SAM) 基本概念

Serverless Application Model (SAM) 基本概念

  • SAM 可以帮助在本地运行 Lambda 函数、DynamoDB 表和 API 网关等无服务器应用
  • SAM 通过 YAML 配置,是 CloudFormation 的扩展

二、SAM 的 CI/CD 架构

SAM 的 CI/CD 架构

  • AWS CodePipeline 是一项持续交付服务,可用于对发布软件所需的步骤进行建模、可视化和自动化

AWS 部署方式对比及总结

一、部署方式总结

部署方式总结

  • EC2 的 User Data
  • AMI
  • Auto Scaling 组的启动模板和启动配置(可以基于 AMI
  • CodeDeploy(部署应用程序)
  • Elastic Beanstalk(适合刚开始使用 AWS 的公司)
  • OpsWorks
  • SAM 是基于 CloudFormation 的扩展,同时使用 CodeDeploy 进行部署,是集成度更高的针对无服务器应用的部署方式

Edit page