REL10-BP02 组件的自动恢复受限于单个位置 - 可靠性支柱

REL10-BP02 组件的自动恢复受限于单个位置

如果工作负载的组件只能在单个可用区或本地数据中心内运行,则必须利用相关功能在定义的恢复目标内彻底重建工作负载。

在未建立这种最佳实践的情况下暴露的风险等级:

实施指导

如果由于技术约束无法使用将工作负载部署到多个位置的最佳实践,则必须实施其他的韧性路径。在这种情况下,必须让重建必要基础设施、重新部署应用程序和重建必要数据的操作实现自动化。

例如,Amazon EMR 会为相同可用区内的特定集群启动全部节点,因为在相同区内运行集群可以改善作业流的性能,提高数据访问速率。如果这是工作负载韧性所需的必要组件,则必须设法重新部署集群及其数据。同样对于 Amazon EMR,您还应该通过除多可用区以外的方式对冗余进行预置。您可以预置多个节点。使用 EMR 文件系统(EMRFS),EMR 中的数据可存储在 Amazon S3 中,进而可以跨多个可用区或 AWS 区域进行复制。

同理,对于 Amazon Redshift,默认会在您选择的 AWS 区域内随机选择可用区,然后对其中的集群进行预置。所有集群节点在同一区域中配置。

对于部署到本地数据中心基于服务器的有状态工作负载,您可以使用 AWS Elastic Disaster Recovery 来保护 AWS 中的工作负载。如果已经在 AWS 托管中,则可以使用弹性灾难恢复将工作负载保护到其他可用区或区域。弹性灾难恢复在轻量级暂存区域中使用持续的块级复制,以便快速可靠地恢复本地应用程序和基于云的应用程序。

实施步骤

  1. 实施自我修复。尽可能使用自动扩缩部署实例或容器。如果不能使用自动扩缩,则使用 EC2 实例的自动恢复功能,或者基于 Amazon EC2 或 ECS 容器生命周期事件实现自我修复自动化。

    • Amazon EC2 Auto Scaling 组用于对单个实例 IP 地址、私有 IP 地址、弹性 IP 地址和实例元数据没有要求的实例和容器工作负载。

      • 启动模板用户数据可以用于实现自动化,让大多数工作负载可以自我修复。

    • Amazon EC2 实例的自动恢复功能用于需要单个实例 ID 地址、私有 IP 地址、弹性 IP 地址和实例元数据的工作负载。

      • 自动恢复功能会在检测到实例故障时,向 SNS 主题发送恢复状态提醒。

    • 在无法使用自动扩缩或 EC2 恢复的情况下,请使用Amazon EC2 实例生命周期事件Amazon ECS 事件实现自我修复自动化。

      • 使用这些事件调用自动化,该自动化将根据您需要的流程逻辑来修复组件。

    • 使用 AWS Elastic Disaster Recovery 保护仅限于单个位置的有状态工作负载。

资源

相关文档: