

本文属于机器翻译版本。若本译文内容与英语原文存在差异，则一律以英文原文为准。

# Aurora 预配置扩展执行块
<a name="aurora-provisioned-scaling-block"></a>

**类别：**数据库扩展

切换区域时，目标区域中的 Aurora 预配置数据库运行的实例类可能小于源区域，导致您的计算容量不足以处理生产流量。Aurora Provisioned Scaling 执行块会自动扩展目标实例以匹配源实例类别，从而确保您的数据库在流量到达时已准备好为全部生产负载提供服务。

## 主要优势
<a name="aurora-provisioned-scaling-block-benefits"></a>
+ **自动容量匹配：**区域切换会读取源实例类并扩展目标实例以使其与之匹配，从而消除了配置不足的数据库在故障转移后接收生产流量的风险。
+ **需要时创建实例：**如果目标实例尚不存在，则区域切换将使用正确的实例类创建该实例。
+ **Cross-family 智能：**当源实例类型在目标区域不可用时，区域切换会自动选择具有相同或更多 vCPU 和内存的等效或更大的实例类型，因此您无需自己维护实例类型兼容性映射。

## 何时使用
<a name="aurora-provisioned-scaling-block-when"></a>

在流量转移之前，Aurora 预配置的实例必须处于生产容量状态的任何恢复计划。
+ **Active-passive Aurora 全球数据库：**您的辅助区域运行的是更小（更便宜）的读取器实例，在接收写入流量之前必须对其进行扩展。
+ **Cost-optimized 备用区域：**为了节省成本，您故意在备用区域中运行较小的实例，并且需要在故障转移期间自动调整大小。

### Aurora 预配置扩展与其他方案相比如何
<a name="aurora-provisioned-scaling-block-comparison"></a>

如果没有此执行块，则在切换区域之前，客户必须手动或通过自定义自动化来确保目标数据库的容量。


|  | 方法 | Pros/Cons | 
| --- | --- | --- | 
| 1 | Aurora 预配置扩展模块 | 全自动，可处理跨系列映射，创建缺失的实例，与区域切换编排集成 | 
| 2 | 手动缩放 | 完全控制时间和实例选择，但在压力下速度缓慢且容易出错，需要操作员在事故发生期间随时待命 | 
| 3 | 脚本自动化 () Lambda/SSM | 可自定义的逻辑；必须构建、测试和维护；未与区域切换排序集成；无法利用原生计划评估 | 
| 4 | Pre-provisioning （始终匹配） | 故障转移延迟为零。待机区域的成本翻了一番；对于主动-被动架构来说是浪费性的 | 

如果您希望将经过验证的自动容量扩展作为区域切换恢复计划的集成步骤，Aurora Provisioned Scaling 区块是正确的选择。

## 工作原理
<a name="aurora-provisioned-scaling-block-how"></a>

当 Aurora Provisioned Scaling 执行块在计划执行期间运行时，区域切换会按以下顺序扩展目标实例以匹配源实例的实例类别：
+ 如果目标实例存在但未处于`available`状态，则区域切换会等待其可用后再继续。
+ 如果目标实例不存在，则区域切换将使用源实例中的实例类在目标集群中创建该实例。
+ 如果目标实例存在，Region switch 会验证它是否属于预期的集群，然后比较实例类别。
+ 如果两个实例属于同一个系列并且目标较小，则区域切换会修改目标实例以匹配源类。
+ 如果实例属于不同的系列，或者目标的大小已经更大，则不会执行任何扩展。
+ 如果目标区域中不存在源实例类型，则区域切换会选择具有相同或更多 vCPU 和内存的其他实例类型（用于创建和修改操作）。
+ 区域切换会轮询目标实例，直到其达到`available`状态，然后将该步骤标记为已完成。

**注意**  
区域切换只能向上扩展。如果目标实例已经等于或大于源实例，则不会进行任何修改。

## 配置
<a name="aurora-provisioned-scaling-block-config"></a>

**重要**  
在配置执行块之前，请确保计划的执行角色具有正确的 IAM 策略。有关更多信息，请参阅 [Aurora 预配置的扩展执行区块示例策略](security_iam_region_switch_aurora_provisioned_scaling.md)。

要配置 Aurora 预配置扩展执行块，请输入以下值：
+ **步骤名称：**输入名称。
+ **步骤描述（可选）：**输入步骤的描述。
+ **全局集群标识符：**输入 Aurora 全局集群的标识符。
+ **集群 ARN{{Region}}：输入计划**中每个区域的 Aurora 数据库集群 ARN。
+ **实例 ARN{{Region}}：输入计划**中每个区域的 Aurora 数据库实例 ARN。
+ **超时：**输入超时值。

然后，选择**保存步骤**。

## 在计划评估中评估的内容
<a name="aurora-provisioned-scaling-block-eval"></a>

当区域切换评估您的计划时，区域切换会对您的 Aurora Provisioned Scaling 执行区块配置和权限进行多项检查。区域切换可验证以下内容是否正确：
+ 两个实例 ARN 的格式都很好。
+ 至少存在一个实例。
+ 任何现有实例都属于预期的集群。
+ 两个集群 ARN 的格式均正确且存在。
+ 两个集群都是指定全局群集的成员。

区域切换还可以验证计划的 IAM 角色是否具有 Aurora 预配置扩展所需的权限。有关区域切换执行块所需权限的更多信息，请参阅[Aurora 预配置的扩展执行区块示例策略](security_iam_region_switch_aurora_provisioned_scaling.md)。

正确的 IAM 权限对于 Aurora Provisioned Scaling 执行块的正常运行至关重要。如果其中任何一个验证失败，区域切换将返回说明存在问题的警告，并提供特定的错误消息来帮助您解决权限或配置问题。

## 相关资源
<a name="aurora-provisioned-scaling-block-resources"></a>
+ [Aurora 预配置的扩展执行区块示例策略](security_iam_region_switch_aurora_provisioned_scaling.md)
+ [亚马逊 Aurora *用户指南中的亚马逊 Aurora* 数据库实例类](https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/Concepts.DBInstanceClass.html)