使用CloudFormation模板更新AWS Athena工作组

问题描述 投票:0回答:1

我有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/

上述更新模板无法按预期工作。

amazon-web-services amazon-cloudformation
1个回答
0
投票

错误的原因是,这两个模板用于创建两个独立的堆栈。这没有用,因为它们有两个同名的Athena工作组:MyCustomWorkGroup

执行创建和更新MyCustomWorkGroup的正确方法如下:

  1. 使用athena_create.yaml文件创建堆栈。

  2. 一旦创建了堆栈,请使用其Update选项上载要更新堆栈的athena_update.yaml

© www.soinside.com 2019 - 2024. All rights reserved.