Amazon DOP-C02: 容器和 Serverless 运维 — 学习指南

属于 AWS DevOps Engineer Professional DOP-C02 — 学习指南. 使用经过验证的答案练习: Amazon 考试中心, 或参加限时模拟考试: ExamRoll.io.

概述

容器和无服务器改变了您在 AWS 上操作、扩展和发布应用程序的方式。本节将贯穿 Amazon ECS、AWS Fargate、Amazon EKS、Amazon ECR、AWS Lambda 和 Amazon API Gateway 的操作原语,以便您可以设计安全的部署、实施镜像治理、调整并发性,并在基于 EC2 和 Fargate 的容量之间做出一致的选择。本节重点关注任务和 Pod 调度模型、健康检查和部署控制、流量切换、跨账户镜像分发,以及 API 缓存和 Lambda 预置并发等性能特性。

Amazon ECS 和 AWS Fargate

ECS 任务定义声明了一个或多个容器以及调度器所需的所有运行时配置。关键要素包括 CPU/内存的预留和限制、portMappings、环境变量和密钥(来自 AWS Secrets Manager 或 Systems Manager Parameter Store)、Linux 参数和 ulimits、logConfiguration(awslogs、firelens 等)、ephemeralStorage 大小(对于 Fargate,为 20–200 GB)以及卷(包括 EFS)。使用任务执行角色进行镜像拉取和日志驱动;使用任务角色进行应用程序的 AWS API 访问。容器的 healthCheck 定义了命令、间隔、超时、重试次数和 startPeriod。与 dependsOn (condition=HEALTHY) 结合使用,健康检查可以强制执行 Sidecar 的启动顺序。

ECS 服务负责维持所需的任务数量,并可选择将任务注册到 ALB/NLB。服务的 deploymentConfiguration 通过 minimumHealthyPercent 和 maximumPercent 控制滚动更新。部署熔断器(启用/回滚)可以在任务健康检查失败时自动恢复失败的发布。服务自动扩展与 Application Auto Scaling 集成,可实现基于 CPU/内存的目标跟踪或基于 ALB RequestCountPerTarget 的扩展。服务发现 (AWS Cloud Map) 和 ECS Service Connect 简化了服务到服务的流量。

集群类型和容量:

Fargate 和 EFS:在任务定义中定义 EFS 卷并通过 TLS 挂载;优先使用 EFS 接入点以实现最小权限和身份强制。这支持有状态需求,例如共享配置、模型权重或中间文件,而无需将它们烘焙到镜像中。

容器健康检查、滚动更新和蓝/绿部署:

undefined

)。CodeDeploy 管理 ALB 后面的两个目标组,将测试流量切换到绿色环境 (AfterAllowTestTraffic),运行自动化检查(例如通过 Lambda),然后切换生产流量。将 CloudWatch 告警与 5XX 峰值、延迟或自定义指标关联,以便触发回滚。这种模式可以隔离故障,并提供近乎零停机的快速回滚。

使用 ECR 进行镜像治理:

Amazon EKS 计算模型

EKS 将托管的控制平面与您的数据平面选项分离开来:

托管节点组 (MNG) 负责置备和生命周期管理 EC2 工作节点。它们与启动模板集成,用于选择 AMI (Amazon Linux 2, Bottlerocket)、实例类型和引导参数。MNG 通过浪涌容量 (surge capacity) 和自动的 cordon/drain 操作来处理滚动更新,以实现最小化的中断。使用节点污点/容忍 (taints/tolerations) 来引导特定的工作负载。结合 Cluster Autoscaler (或 Karpenter) 根据待处理的 pod 来合理调整节点容量。

自管理节点提供了对引导和操作系统的完全控制,但增加了运维开销;它们通常用于特殊的内核或小众硬件。

EKS on Fargate 无需管理节点即可运行 pod。Fargate profile 将命名空间/标签映射到 Fargate。每个 pod 都会获得自己的 ENI (awsvpc),从而简化了网络隔离。其限制包括不支持 DaemonSet、主机网络/卷 (host networking/volumes),以及对特权工作负载的约束。可观测性代理 (例如 Fluent Bit) 必须作为 sidecar 运行或使用托管的日志收集服务。该模型非常适合具有突发性、小资源占用或多租户特点的工作负载,这些工作负载能从按 pod 隔离和按 pod 付费的经济模型中受益。

运维附加组件:

AWS Lambda 运维与并发

打包与配置:

流量切换与安全性:

并发控制:

API Gateway 设计与 ECR 跨账户访问

API Gateway REST API 与 HTTP API 对比:

阶段与节流:

缓存 (仅限 REST API):

私有连接:

ECR 跨账户访问:

实际问题场景

Spotify 正在对其播放列表微服务栈进行现代化改造,以减少发布高峰期的延迟波动,并加强其跨多个 AWS 账户的镜像供应链。

  1. 标准化镜像构建和治理
  1. 在 ECS with Fargate 上提供无状态 API
  1. 使用蓝/绿部署和自动化测试进行安全部署
  1. 在 Lambda 上处理延迟敏感操作并稳定冷启动
  1. 通过 API Gateway 暴露外部 API 并保护私有后端
  1. 无需互联网的跨账户运行时拉取

该设计减少了运维负担(无需管理节点),通过预置并发和与 ALB 健康检查对齐的部署提供了确定性的延迟,并通过 ECR 扫描、复制和标签不变性来端到端地强制执行镜像来源的追踪。


安全、合规性和治理 · 所有领域 · 高可用性、弹性和灾难恢复

练习这些题目 → · 在 ExamRoll.io 上限时练习 →

Pass the whole exam — not just this question

You found this answer. Get every verified question and explanation in one place, and save hours of prep. Free to start.

通过考试 →

浏览 Amazon →

Related guides

一体化访问

一次订阅。所有考试。

所有计划均可无限制搜索答案、进行模拟测试、获取AI解释以及访问完整的资源库 — 支持20多种语言。

每月
24.87
Just €0.83/day
包含所有内容:
  • 无限答案搜索
  • 无限模拟测试
  • AI驱动的解释
  • 完整资源库
  • 20多种语言
  • 每周内容更新
  • 奖励与推荐
  • 优先支持
开始免费试用

无需信用卡*

最具价值
12个月
179.87
Just €0.49/daySave 40%
包含所有内容:
  • 无限答案搜索
  • 无限模拟测试
  • AI驱动的解释
  • 完整资源库
  • 20多种语言
  • 每周内容更新
  • 奖励与推荐
  • 优先支持
开始免费试用

无需信用卡*

✓ 包含免费计划 · ✓ 随时取消 · ✓ 所有计划均解锁完整产品