通过 Amazon Web Services Management Console使用 DynamoDB 自动扩缩 - Amazon DynamoDB
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

通过 Amazon Web Services Management Console使用 DynamoDB 自动扩缩

如果您使用 Amazon Web Services Management Console 创建表或,默认情况下将启用 Amazon DynamoDB auto scaling。您还可以使用控制台为现有表启用自动缩放、修改自动缩放设置或禁用自动缩放。

注意

对于设置缩减和扩展冷却时间等更高级的功能,请使用 Amazon Command Line Interface (Amazon CLI) 通过编程方式管理 DynamoDB auto scaling。有关更多信息,请参阅 使用 Amazon CLI 管理 DynamoDB Auto Scaling

开始之前:向用户授予 DynamoDB 自动扩缩的权限

在 Amazon Identity and Access Management(IAM)中,Amazon 托管式策略 DynamoDBFullAccess 提供使用 DynamoDB 控制台所需的权限。但是,对于 DynamoDB Auto Scaling,用户需要额外的权限。

重要

要删除启用自动扩缩的表,需要 application-autoscaling:* 权限。Amazon 托管式策略 DynamoDBFullAccess 包含此类权限。

要设置用户来执行 DynamoDB 控制台访问和 DynamoDB Auto Scaling 操作,请创建一个角色并向该角色添加 AmazonDynamoDBFullAccess 策略。然后,将该角色分配给用户。

创建启用了自动扩缩的新表

注意

DynamoDB Auto Scaling 功能需要存在一个代表您执行自动扩缩操作的服务相关角色(AWSServiceRoleForApplicationAutoScaling_DynamoDBTable)。将自动为您创建此角色。有关更多信息,请参阅《Application Auto Scaling 用户指南》中的 Application Auto Scaling 服务相关角色

创建启用了 Auto Scaling 的新表
  1. https://console.aws.amazon.com/dynamodb/ 打开 DynamoDB 控制台。

  2. 选择 Create Table

  3. Create table (创建表) 页面上,输入表名称和主键。

  4. 如果 Default settings (默认设置) 处于选中状态,则将在启用自动扩展的情况下创建表。

    否则,对于自定义设置:

    1. 选择 Customize settings (自定义设置)

    2. Read/write capacity settings (读/写容量设置) 部分,选择 Provisioned (已预置) 容量模式,并且为读取容量写入容量或两者将 Auto Scaling (弹性伸缩) 设置为 On (开启)。对于其中每一个,请为表以及表的所有全局二级索引(可选)设置所需的扩展策略。

      • 最小容量单位 – 输入自动扩缩范围的下限。

      • 最大容量单位 – 输入自动扩缩范围的上限。

      • 目标利用率 - 输入表的目标利用率百分比。

      注意

      如果为新表创建全局二级索引,则该索引在创建时的容量将与基表的容量相同。创建表后,您可以在表的设置中更改索引的容量。

  5. 根据需要进行设置后,选择 Create table (创建表)。使用自动扩展参数创建表。

在现有表上启用 DynamoDB 自动扩缩

注意

DynamoDB Auto Scaling 功能需要存在一个代表您执行自动扩缩操作的服务相关角色(AWSServiceRoleForApplicationAutoScaling_DynamoDBTable)。将自动为您创建此角色。有关更多信息,请参阅 Application Auto Scaling 服务相关角色

为现有表启用 DynamoDB 自动扩展
  1. 打开 DynamoDB 控制台:https://console.aws.amazon.com/dynamodb/

  2. 在控制台左侧的导航窗格中,选择

  3. 选择要处理的表,然后选择其他设置选项卡。

  4. 读/写容量部分中,选择编辑

  5. 容量模式部分中,选择预调配

  6. Table capacity (表容量) 部分,为读取容量写入容量或两者将 Auto Scaling (弹性伸缩) 设置为 On (开启)。对于其中每一个,请为表以及表的所有全局二级索引(可选)设置所需的扩展策略。

    • 最小容量单位 – 输入自动扩缩范围的下限。

    • 最大容量单位 – 输入自动扩缩范围的上限。

    • 目标利用率 - 输入表的目标利用率百分比。

    • 对所有全球二级索引使用相同容量的读/写容量设置 – 选择全局二级索引是否应使用与基表相同的自动扩缩策略。

      注意

      为获得最佳性能,我们建议您启用 Use the same read/write capacity settings for all global secondary indexes (将相同的读/写容量设置应用于所有全局二级索引)。此选项允许 DynamoDB auto scaling 均匀扩展表上的所有全局二级索引。这包括现有的全局二级索引,以及您将来为此表创建的任何其他索引。

      启用此选项后,您无法对单个全局二级索引设置扩展策略。

  7. 根据需要进行设置后,选择 Save (保存)

在控制台上查看自动扩缩活动

当您的应用程序驱动对表进行读取和写入流量时,DynamoDB auto scaling 会动态修改表的吞吐量设置。Amazon CloudWatch 会跟踪所有 DynamoDB 表和二级索引的预配置和使用的容量、受限事件、延迟以及其他指标。

要在 DynamoDB 控制台中查看这些指标,请选择要处理的表,然后选择监控选项卡。要创建表指标的可自定义视图,请选择 View all in CloudWatch (在 CloudWatch 中查看全部)

有关 DynamoDB 中 CloudWatch 监控的更多信息,请参阅 使用 Amazon CloudWatch 监控

修改或禁用 DynamoDB 自动扩缩设置

您可以使用 Amazon Web Services Management Console 修改 DynamoDB Auto Scaling 设置。要执行此操作,请转至表的其他设置选项卡,然后选择读/写容量部分中的编辑。有关这些设置的更多信息,请参阅 在现有表上启用 DynamoDB 自动扩缩