Q35 — AWS SOA-C02 第1章
第 35/100 题 | ← 返回第1章
某公司最近在生产环境中部署了一个应用程序。当前生产环境运行在单个Amazon EC2实例上,该实例同时托管应用程序的Web应用和MariaDB数据库。公司政策规定,所有IT生产环境必须具备高可用性。 系统运维管理员应采取什么措施以满足该要求?
- A. 将数据库从EC2实例迁移至Amazon RDS for MariaDB多可用区(Multi-AZ)数据库实例。将应用程序运行在跨多个可用区的Auto Scaling组中的EC2实例上,并将这些EC2实例置于负载均衡器之后。 ✓
- B. 将数据库从EC2实例迁移至Amazon RDS for MariaDB多可用区(Multi-AZ)数据库实例。使用AWS Application Migration Service将应用程序转换为AWS Lambda函数,并为该Lambda函数指定多可用区(Multi-AZ)选项。
- C. 将数据库复制到另一个可用区中的不同EC2实例上。使用AWS Backup为应用程序EC2实例和数据库EC2实例创建Amazon机器镜像(AMI)。创建一个AWS Lambda函数,每分钟执行一次健康检查;若发生故障,则配置该Lambda函数从AWS Backup创建的AMI启动新的EC2实例。
- D. 将数据库迁移至另一台EC2实例上。将应用程序EC2实例置于跨多个可用区的Auto Scaling组中。从数据库EC2实例创建Amazon机器镜像(AMI),并使用该AMI在另一可用区中启动第二台数据库EC2实例,将其置于已停止状态,作为备用数据库EC2实例。
正确答案: A. 将数据库从EC2实例迁移至Amazon RDS for MariaDB多可用区(Multi-AZ)数据库实例。将应用程序运行在跨多个可用区的Auto Scaling组中的EC2实例上,并将这些EC2实例置于负载均衡器之后。
解析
AWS高可用性设计通常要求资源跨多个可用区(AZ)分布,并利用托管服务减少运维负担。题目中当前架构的单点故障在于Web应用和数据库共存于单个EC2实例。AWS文档指出,RDS Multi-AZ通过主备副本自动处理数据库故障转移,确保数据库层高可用。应用层的高可用需结合Auto Scaling组跨AZ部署实例,并配合负载均衡器分发请求,实现水平扩展和弹性。选项A同时解决数据库(RDS Multi-AZ)和应用层(Auto Scaling+负载均衡器)的高可用需求,符合最佳实践。其他选项未完全满足自动化跨AZ冗余或误用服务功能(如Lambda的Multi-AZ选项不存在)。