これを見てきました site DynamoDB On-demandについて、CloudFormationで作成したテーブルをOn-demandに更新しました。スタックを更新しようとすると、次のエラーが表示されます。
1つ以上のパラメーター値が無効でした:BillingModeがPAY_PER_REQUESTの場合、ReadCapacityUnitsもWriteCapacityUnitsも指定できません
CloudFormationでDynamoDB読み取り/書き込み容量モードをオンデマンドに設定する方法はありますか?
編集:
AWSコンソールでオンデマンドに更新しました。
編集2:
私のテンプレート:
DynamoDBUsersTable:
Type: AWS::DynamoDB::Table
Description: Users table
Properties:
TableName: !Sub ${StackName}-users-table
AttributeDefinitions:
- AttributeName: userId
AttributeType: S
KeySchema:
- AttributeName: userId
KeyType: HASH
ProvisionedThroughput:
ReadCapacityUnits: 10
WriteCapacityUnits: 10
ありがとうございました。
プロパティにBillingMode: PAY_PER_REQUEST
を追加し、テーブルプロパティと、指定されている場合はすべてのProvisionedThroughput
からGlobalSecondaryIndexes
を削除する必要があります。最後に、テンプレートは次のように見える必要があります。
DynamoDBUsersTable:
Type: AWS::DynamoDB::Table
Description: Users table
Properties:
TableName: !Sub ${StackName}-users-table
BillingMode: PAY_PER_REQUEST
AttributeDefinitions:
- AttributeName: userId
AttributeType: S
KeySchema:
- AttributeName: userId
KeyType: HASH