DynamoDB 使用 Cloudformation 自动扩展

Posted

技术标签:

【中文标题】DynamoDB 使用 Cloudformation 自动扩展【英文标题】:DynamoDB auto scaling with Cloudformation 【发布时间】:2017-12-11 00:22:18 【问题描述】:

AWS 为 DynamoDB 发布了 auto scaling。我想知道如何通过 Cloudformation 创建具有自动缩放功能的表。

【问题讨论】:

【参考方案1】:

这是 DynamoDB 表的 ClodFormation 自动扩展策略。希望它能让您对如何形成策略脚本有所了解。


  "Type" : "AWS::ApplicationAutoScaling::ScalingPolicy",
  "Properties" : 
    "PolicyName" : "MyScalingPolicy",
    "PolicyType" : "TargetTrackingScaling",
    "ResourceId" : "arn:aws:dynamodb:us-east-1:123456789012:table/books_table",
    "ScalableDimension" : "dynamodb:table:WriteCapacityUnits",
    "ServiceNamespace" : "dynamodb",
    "TargetTrackingScalingPolicyConfiguration" : 
    "PredefinedMetricSpecification": 
            "PredefinedMetricType": "DynamoDBWriteCapacityUtilization"
        ,
        "ScaleOutCooldown": 60,
        "ScaleInCooldown": 60,
        "TargetValue": 50.0
        
  

参考资料:-

CloudFormaction auto-scaling policy

AWS CLI command for auto scaling

AWS CLI 命令:-

aws application-autoscaling put-scaling-policy \
    --service-namespace dynamodb \
    --resource-id "table/TestTable" \
    --scalable-dimension "dynamodb:table:WriteCapacityUnits" \
    --policy-name "MyScalingPolicy" \
    --policy-type "TargetTrackingScaling" \
    --target-tracking-scaling-policy-configuration file://scaling-policy.json

scaling-policy.json:-


    "PredefinedMetricSpecification": 
        "PredefinedMetricType": "DynamoDBWriteCapacityUtilization"
    ,
    "ScaleOutCooldown": 60,
    "ScaleInCooldown": 60,
    "TargetValue": 50.0
   

【讨论】:

谢谢,成功了!!我创建了一个 ScalingPolicy、ScalingTarget 和一个角色 如何将多个表(资源)添加到可扩展的目标?

以上是关于DynamoDB 使用 Cloudformation 自动扩展的主要内容,如果未能解决你的问题,请参考以下文章

dynamodb 查询我试图使用 laravel 从 dynamodb 获取一些数据

使用 spring-data-dynamodb 在 GSI 中查询 dynamoDB 中的 id 列表

DynamoDB 使用 Cloudformation 自动扩展

DynamoDB 写入太慢

AWS Appsync 一个 dynamodb 解析器中的多个 dynamodb 请求

使用python将复杂对象保存到dynamoDb