来源:Amazon AWS Certified Solutions Architect - Associate SAA-C03 Exam
60 题 (No.871 ~ No.930) 只记录了 3 道错误或需要注意的题目,仅供自己复习使用。
如果侵权请联系删除。
一、EC2 实例的纵向扩展和横向扩展
某公司在 Amazon EC2 实例上托管了一个单体网络应用程序。应用程序用户最近报告在特定时间性能不佳。对 Amazon CloudWatch 指标的分析表明,在性能不佳期间,CPU 使用率为 100%。
公司希望解决这一性能问题并提高应用程序的可用性。哪种步骤组合能最经济高效地满足这些要求?(选择两项)。
- ✅ 使用 AWS Compute Optimizer 获取实例类型垂直扩展的建议。
- 从网络服务器创建 Amazon Machine Image (AMI)。在新的启动模板中引用 AMI。
- 创建自动扩展组和应用程序负载平衡器,以便垂直扩展。
- ❌ 使用 AWS Compute Optimizer 获取实例类型的横向扩展建议。
- ✅ 创建一个自动扩展组和一个应用程序负载平衡器,以便横向扩展。
4️⃣ 5️⃣ ❌ -> 1️⃣ 5️⃣ ✅
💡 解析:什么是 AWS Compute Optimizer?
支持的资源
Compute Optimizer 会为以下资源生成建议:
- 亚马逊弹性计算云 (Amazon EC2) 实例
- 亚马逊 EC2 自动扩展组
- 亚马逊弹性块存储(亚马逊 EBS)卷
- AWS Lambda 函数
- AWS Fargate 上的亚马逊弹性容器服务 (Amazon ECS) 服务
- 商业软件许可证
- 亚马逊关系数据库服务 (Amazon RDS) DB 实例和存储
因此它支持对本例中的 EC2 垂直扩展或水平扩展提供建议。
而关于EC2的自动垂直扩展,没有很好的工具,只能通过性能突增实例实现:Is there a way the EC2 instance scale vertically回到本题,1️⃣ 和 4️⃣ 都行吧,但是考虑到题目说应用程序时单体应用,选 1️⃣ 更好吧。
二、Amazon API Gateway 中 HTTP API 和 REST API 价格差距
一家公司正在将托管在亚马逊 EC2 上的网络应用程序从单体架构迁移到无服务器微服务架构。该公司希望使用支持事件驱动、松散耦合架构的 AWS 服务。公司希望使用发布/订阅(pub/sub)模式。
哪种解决方案能以最具成本效益的方式满足这些要求?
- 配置 Amazon API Gateway REST API 以调用 AWS Lambda 函数,将事件发布到 Amazon Simple Queue Service (Amazon SQS) 队列。配置一个或多个订阅者,以便从 SQS 队列读取事件。
- ❌ 配置 Amazon API Gateway REST API 以调用 AWS Lambda 函数,将事件发布到 Amazon Simple Notification Service (Amazon SNS) 主题。配置一个或多个订阅者,以便从 SNS 主题接收事件。
- 配置 Amazon API Gateway WebSocket API,以便通过增强的扇出功能写入 Amazon Kinesis Data Streams 中的数据流。配置一个或多个订阅者以接收来自数据流的事件。
- ✅ 配置 Amazon API Gateway HTTP API 以调用 AWS Lambda 函数,将事件发布到 Amazon Simple Notification Service (Amazon SNS) 主题。配置一个或多个订阅者,以便从主题接收事件。
2️⃣ ❌ -> 4️⃣ ✅
HTTP API
请求数量(每月) 价格(每百万) 前 3 亿 USD 1.00 3 亿以上 USD 0.90 REST API
请求数量(每月) 价格(每百万) 前 3.33 亿 USD 3.50 接下来的 6.67 亿 USD 2.80 接下来的 190 亿 USD 2.38 超过 200 亿 USD 1.51 WebSocket API
请求数量(每月) 价格(每百万) 前 10 亿 USD 1.00 超过 10 亿 USD 0.80 相比之下 HTTP API 更便宜。
三、限制团队启动大型 EC2 实例
一个开发团队为其开发、暂存和生产环境使用多个 AWS 账户。团队成员一直在启动未得到充分利用的大型 Amazon EC2 实例。解决方案架构师必须防止在所有账户中启动大型实例。
解决方案架构师如何以最少的运营开销满足这一要求?
- 更新 IAM 策略,拒绝启动大型 EC2 实例。将策略应用到所有用户。
- ❌ 在 AWS 资源访问管理器中定义一个资源,防止启动大型 EC2 实例。
- 在每个账户中创建一个拒绝启动大型 EC2 实例的 IAM 角色。授予开发人员 IAM 组访问该角色的权限。
- ✅ 在管理账户中的 AWS 组织中创建一个具有默认策略的组织。创建拒绝启动大型 EC2 实例的服务控制策略 (SCP),并将其应用到 AWS 账户。
2️⃣ ❌ -> 4️⃣ ✅
💡 解析:
AWS Resource Access Manager是跨账户共享资源用的,而非限制资源启动的:什么是 AWS Resource Access Manager?AWS Resource Access Manager (AWS RAM) 可帮助您跨 AWS 账户、在组织或组织单位 (OU) 内以及与 AWS Identity and Access Management (IAM) 角色和用户针对受支持资源类型安全地共享资源。
如果您有多个 AWS 账户,可以一次性创建一个资源,然后使用 AWS RAM 使该资源可供其他账户使用。