本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
区域切换计划的计划评估
创建多区域恢复计划时,您需要确信该计划将在您最需要的时候成功执行,不会出现错误。通过区域切换计划评估,您可以持续验证计划的配置和权限,并在问题阻止恢复之前发现问题。
如何使用计划评估
计划评估运行会检查计划中的资源配置和 IAM 权限,并显示您可以主动解决的执行阻塞警告。您无需进行配置或选择加入计划评估。对于每个区域切换计划,您都会自动获得计划评估。区域切换每小时会自动对您的计划进行多次评估。如果任何检查失败,区域切换会返回警告消息,您可以在中查看 AWS 管理控制台。您还可以通过亚马逊 EventBridge 或使用 GetPlanEvaluationStatus API 接收验证警告。
执行块评估的内容
区域切换会对计划中的每种执行区块类型执行特定检查。下表列出了对每个执行块执行的检查。
| 执行块 | 检查类别 | 说明 |
|---|---|---|
| 亚马逊 EC2 Auto Scaling 组执行区块 | 资源可访问性 | 检查 Auto Scaling 组是否存在以及区域交换机是否可以通过计划配置的执行角色或跨账户角色进行访问。 |
| Capacity | 检查目标区域的 Auto Scaling 组的最大容量是否足以向上扩展到源区域的容量。 | |
| IAM 权限 | 检查计划的 IAM 角色是否具有 Auto Scaling 操作所需的策略。 | |
| Amazon EKS 资源扩展执行块 | 资源可访问性 | 检查亚马逊 EKS 集群是否存在以及 Kubernetes 资源是否存在于集群中。 |
| Kubernetes 权限 | 检查 IAM 角色是否映射到 EK AmazonARCRegionSwitchScalingPolicy S 访问条目,以便区域交换机可以对 Kubernetes 资源执行操作。只要通过 k8 用户组提供所需的 EKS 权限,EKS 访问入口政策就不是强制性的。 |
|
| IAM 权限 | 检查计划的 IAM 角色是否符合亚马逊 EKS 运营所需的政策。 | |
| Amazon ECS 服务扩展执行块 | 资源可访问性 | 检查 Amazon ECS 集群和服务是否存在且关联正确。 |
| Capacity | 检查目标 Amazon ECS 服务的最大自动扩展容量是否足以在故障转移期间处理所需的流量负载。 | |
| IAM 权限 | 检查计划的 IAM 角色是否具有 Amazon ECS 运营所需的策略。 | |
| ARC 路由控制执行块 | 资源可访问性 | 检查路由控制是否存在以及角色是否有权访问控制面板。 |
| IAM 权限 | 检查计划的 IAM 角色是否具有路由控制操作所需的策略。 | |
| Amazon Aurora Global Database 执行块 | 资源可访问性 | 检查全局群集是否存在,数据库集群是否为全局群集的成员,数据库集群是否处于可用状态,以及两个集群中是否存在数据库实例。 |
| 引擎兼容性 | 检查引擎版本是否支持切换,以及集群是否具有跨区域的兼容版本。 | |
| IAM 权限 | 检查计划的 IAM 角色是否具有 Aurora 故障转移和切换所需的策略。 | |
| Aurora 预置的扩展执行区块 | 资源可访问性 | 检查实例和集群 ARN 的格式是否正确、实例是否存在、实例是否属于预期集群以及集群是否为指定全局群集的成员。 |
| IAM 权限 | 检查该计划的 IAM 角色是否具有 Aurora 预置扩展所需的策略。 | |
| Aurora 无服务器扩展执行区块 | 资源可访问性 | 检查 Aurora 无服务器集群是否存在于预期区域中并包含无服务器 v2 实例。 |
| Capacity | 检查目标区域集群的扩展目标是否在 256 个 ACU 限制之内。 | |
| IAM 权限 | 检查该计划的 IAM 角色是否具有 Aurora 无服务器扩展所需的策略。 | |
| 亚马逊 DocumentDB 全球集群执行区块 | 资源可访问性 | 检查全局群集是否存在、群集是否为全局群集的成员、群集是否处于可用状态以及两个群集中是否存在实例。 |
| 引擎兼容性 | 检查集群引擎版本是否兼容,以及全局群集是否具有预期的引擎类型。 | |
| IAM 权限 | 检查该计划的 IAM 角色是否具有 Amazon DocumentDB 故障转移和切换所需的策略。 | |
| 亚马逊 Neptune 全球集群执行区块 | 资源可访问性 | 检查全局群集是否存在,数据库集群是否是全局群集的成员,数据库集群是否存在于两个区域中,以及数据库集群是否处于可用状态。 |
| 引擎兼容性 | 检查各区域集群的引擎版本是否一致,是否满足的最低要求版本 failover/switchover。 | |
| IAM 权限 | 检查计划的 IAM 角色是否具有 Amazon Neptune 故障转移和切换所需的策略。 | |
| 亚马逊 RDS 推广只读副本执行区块 | 资源可访问性 | 检查数据库实例是否存在,非主区域中的实例是否为只读副本,以及源实例是否正确配置为可复制。 |
| IAM 权限 | 检查该计划的 IAM 角色是否具有 Amazon RDS 只读副本促销所需的政策。 | |
| Amazon RDS 创建 Cross-Region 副本执行区块 | 资源可访问性 | 检查数据库实例是否存在以及源实例上是否启用了备份。 |
| IAM 权限 | 检查计划的 IAM 角色是否具有创建 Amazon RDS 只读副本所需的策略。 | |
| Amazon RDS 切换只读副本执行区块 | 资源可访问性 | 检查备用实例是否处于已挂载或打开的只读状态、是否正在进行复制以及是否启用了自动备份。 |
| 引擎兼容性 | 检查引擎版本是否支持切换(Oracle 19c 或更高版本),以及两个实例的引擎版本是否相同。 | |
| 配置 | 检查是否没有待执行的维护操作会阻止切换,以及该选项组是否专用于复制配置。 | |
| 手动审批执行块 | 资源可访问性 | 检查手动批准 IAM 角色 ARN 的格式是否正确以及该角色是否存在。 |
| 配置 | 检查手动批准角色是否在拥有该计划的同一个账户中。 | |
| IAM 权限 | 检查批准者角色是否具有arc-region-switch:ApprovePlanExecutionStep权限。 |
|
| 自定义操作 Lambda 执行块 | 资源可访问性 | 检查 Lambda 函数是否存在并处于活动状态。 |
| 配置 | 检查 Lambda 函数并发性是否大于 0、试运行调用是否成功,以及耐用 Lambda 函数的执行超时是否为 15 分钟或更短。 | |
| IAM 权限 | 检查计划的 IAM 角色是否具有 Lambda 执行所需的策略。 | |
| Lambda 事件源映射执行块 | 资源可访问性 | 检查 Lambda 事件源映射是否存在以及关联的 Lambda 函数是否存在并处于活动状态。 |
| 配置 | 检查 Lambda 事件源映射的 Lambda 函数的预留并发量是否大于 0。 | |
| IAM 权限 | 检查计划的 IAM 角色是否具有管理事件源映射所需的策略。 | |
| Amazon Route 53 运行状况检查执行块 | 资源可访问性 | 检查托管区域是否存在以及记录集是否可以映射到已配置的区域。 |
| 配置 | 检查区域交换机分配的运行状况检查是否与正确的记录集相关联。 | |
| IAM 权限 | 检查计划的 IAM 角色是否已被授权访问托管区域。 |
Plan-level 评估检查
除了执行区块检查外,Region switch 还评估计划级别的配置,包括触发器、报告生成和应用程序运行状况警报。
| 评估于 | 检查类别 | 说明 |
|---|---|---|
| 触发器 | 资源可访问性 | 检查为触发器配置的 CloudWatch 警报是否存在以及是否可以由配置的角色访问。 |
| IAM 权限 | 检查计划的执行角色是否具有基于触发器的自动执行所需的arc-region-switch:StartPlanExecution权限。 |
|
| 报告生成 | IAM 权限 | 检查计划的执行角色是否具有向配置的 Amazon S3 存储桶写入报告所需的s3:PutObject权限。 |
| 角色假设 | 检查是否可以假定计划的执行角色以进行报告生成验证。 | |
| 应用程序运行状况警报 | 资源可访问性 | 检查 CloudWatch 警报是否存在以及是否可以通过配置的角色访问警报。 |
| IAM 权限 | 检查计划的角色是否具有cloudwatch:DescribeAlarms验证警报状态所需的cloudwatch:DescribeAlarmHistory权限。 |
|
| Cross-account 配置 | 在为警报指定跨账户角色时,检查外部 ID 是否已提供且有效。 |