第009题 - sap

螺旋星云NGC 7293

sap009-202411260035042

题目翻译 (Question Translation)


English: A company is hosting a critical application on a single Amazon EC2 instance. The application uses an Amazon ElastiCache for Redis single-node cluster for an in-memory data store. The application uses an Amazon RDS for MariaDB DB instance for a relational database. For the application to function, each piece of the infrastructure must be healthy and must be in an active state.

A solutions architect needs to improve the application’s architecture so that the infrastructure can automatically recover from failure with the least possible downtime.

Which combination of steps will meet these requirements? (Choose three.)


中文翻译: 一家公司在单个 Amazon EC2 实例上托管了一个关键应用程序。该应用程序使用 Amazon ElastiCache for Redis 的单节点集群作为内存数据存储,使用 Amazon RDS for MariaDB 数据库实例作为关系型数据库。为了使应用程序正常运行,基础设施的每个组件都必须处于健康状态并且是活动的。

解决方案架构师需要改进应用程序的架构,以使基础设施能够在最短的停机时间内从故障中自动恢复。

以下哪种组合步骤可以满足这些要求?(选择三个)


选项分析 (Answer Analysis)


选项 A

Use an Elastic Load Balancer to distribute traffic across multiple EC2 instances. Ensure that the EC2 instances are part of an Auto Scaling group that has a minimum capacity of two instances.

分析:

  • 重点功能: 使用 Elastic Load Balancer 和 Auto Scaling 组,可以在多台 EC2 实例之间分配流量,并确保在一台实例故障时,应用程序仍可正常运行。
  • 优势:
    • 高可用性: 至少两台实例确保冗余。
    • 自动恢复: Auto Scaling 可根据需要添加或替换故障的实例。
  • 与题目相关性: 满足要求,改善应用程序的高可用性和故障恢复能力。

此选项是正确答案之一。


选项 B

Use an Elastic Load Balancer to distribute traffic across multiple EC2 instances. Ensure that the EC2 instances are configured in unlimited mode.

分析:

  • 重点功能: 使用 Elastic Load Balancer 分发流量,且 EC2 实例配置为“unlimited mode”。
  • 问题:
    • “Unlimited mode” 是指允许实例超出其 CPU 配额消耗 CPU Credits,但这与高可用性或故障恢复能力无关。
    • 未涉及 Auto Scaling 或其他冗余措施。
  • 与题目相关性: 不解决故障恢复问题,因此不满足要求。

此选项不正确。


选项 C

Modify the DB instance to create a read replica in the same Availability Zone. Promote the read replica to be the primary DB instance in failure scenarios.

分析:

  • 重点功能: 在同一可用区中创建 RDS 的只读副本,并在主数据库故障时提升只读副本为主实例。
  • 问题:
    • 创建副本在同一可用区中虽然能解决某些数据库级别故障,但无法提供区域级别冗余,容易受到单一可用区故障的影响。
  • 与题目相关性: 不够全面,无法完全满足高可用性和自动恢复的要求。

此选项不正确。


选项 D

Modify the DB instance to create a Multi-AZ deployment that extends across two Availability Zones.

分析:

  • 重点功能: RDS 的 Multi-AZ 部署在主数据库出现问题时自动切换到备用实例,几乎不会导致应用程序停机。
  • 优势:
    • 提供数据库级别的高可用性和自动恢复能力。
    • 与单可用区相比,大幅降低单点故障的风险。
  • 与题目相关性: 完全符合高可用性和自动恢复的要求。

此选项是正确答案之一。


选项 E

Create a replication group for the ElastiCache for Redis cluster. Configure the cluster to use an Auto Scaling group that has a minimum capacity of two instances.

分析:

  • 重点功能: 为 ElastiCache 配置复制组(Replication Group),并使用至少两个实例实现高可用性。
  • 优势:
    • 复制组允许多个节点之间的数据复制,在主节点故障时可以快速切换到备节点。
    • 高可用性: 多节点配置可避免单节点故障导致服务中断。
  • 与题目相关性: 满足要求,提升 Redis 的高可用性和故障恢复能力。

此选项是正确答案之一。


选项 F

Create a replication group for the ElastiCache for Redis cluster. Enable Multi-AZ on the cluster.

分析:

  • 重点功能: 为 Redis 配置复制组,并启用 Multi-AZ 功能。
  • 优势:
    • Multi-AZ 能在主节点所在可用区不可用时自动切换到备节点所在的可用区,提供区域级别的高可用性。
    • 与仅依赖单节点相比,大幅提高 Redis 的容灾能力。
  • 与题目相关性: 符合要求,显著提高 Redis 的可靠性。

此选项是正确答案之一。


最佳答案 (Correct Answer)

答案:A、D、F


详细解析 (Detailed Explanation)

1. 为什么选择 A?

  • 使用 Elastic Load Balancer 和 Auto Scaling 组可以为应用程序的 EC2 层提供冗余。
  • 确保至少有两个实例运行,可在一个实例故障时继续提供服务。

2. 为什么选择 D?

  • Multi-AZ 部署为 RDS 提供高可用性和自动故障切换能力。
  • 解决了数据库单点故障的问题,符合要求。

3. 为什么选择 F?

  • ElastiCache 配置复制组并启用 Multi-AZ,可以确保 Redis 在单个节点或可用区发生故障时能够自动切换到备节点。
  • 改善内存数据存储层的高可用性。

为什么不选择其他选项?

  • B: 未提到冗余或自动故障切换机制,不解决高可用性问题。
  • C: 在同一可用区中创建只读副本无法防止区域级别故障。
  • E: Auto Scaling 组不适用于 ElastiCache 的实例扩展,复制组更适合 Redis 的高可用性。

总结 (Summary)

通过选择 A、D、F,可以为应用程序的 EC2 层、数据库层、以及内存数据存储层提供全面的高可用性和自动故障恢复能力,最大限度地减少停机时间,满足题目要求。