【发布时间】:2020-08-17 16:16:51
【问题描述】:
我有 2 个模板,这些模板来自 AWS::Athena::WorkGroup - AWS CloudFormation 文档。
第一个模板athena_create.yaml 按预期工作。第二个模板需要修改第一个模板中创建的工作组。但我得到一个错误:
MyCustomWorkGroup 已存在于堆栈中 arn:aws:cloudformation:us-east-1:XXX:stack/a1/7cc670a0-8d19-11ea-872c-12217e59f19f
这里是代码。创建模板工作正常。
athena_create.yaml
Resources:
MyAthenaWorkGroup:
Type: AWS::Athena::WorkGroup
Properties:
Name: MyCustomWorkGroup
Description: My WorkGroup
State: ENABLED
Tags:
- Key: "key1"
Value: "value1"
- Key: "key2"
Value: "value2"
WorkGroupConfiguration:
BytesScannedCutoffPerQuery: 200000000
EnforceWorkGroupConfiguration: false
PublishCloudWatchMetricsEnabled: false
RequesterPaysEnabled: true
ResultConfiguration:
OutputLocation: s3://path/to/my/bucket/
athena_update.yaml
Resources:
MyAthenaWorkGroup:
Type: AWS::Athena::WorkGroup
Properties:
Name: MyCustomWorkGroup
Description: My WorkGroup Updated
State: DISABLED
Tags:
- Key: "key1"
Value: "value1"
- Key: "key2"
Value: "value2"
WorkGroupConfigurationUpdates:
BytesScannedCutoffPerQuery: 10000000
EnforceWorkGroupConfiguration: true
PublishCloudWatchMetricsEnabled: true
RequesterPaysEnabled: false
ResultConfigurationUpdates:
EncryptionConfiguration:
EncryptionOption: SSE_S3
OutputLocation: s3://path/to/my/bucket/updated/
上面提到的更新模板没有按预期工作。
【问题讨论】:
-
我猜您将它们部署为两个单独的模板?在这种情况下,您不能这样做,因为这两个模板会创建两个同名的工作组:
MyCustomWorkGroup。 -
如何使用 cloudformation 模板更新工作组?
-
您使用第一个模板创建堆栈。完成后,您转到堆栈并单击更新。这将更新原始堆栈,而不是创建新堆栈。
-
谢谢。知道了。有没有办法使用 cloudformation 更新默认工作组?
-
如果您不介意,我会回答以供将来参考。不幸的是对雅典娜并不熟悉。 CloudFormation 给您带来问题的新原因。
标签: amazon-web-services amazon-cloudformation amazon-athena