热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

开发笔记:使用CloudFormation模板更新AWSAthena工作组

篇首语:本文由编程笔记#小编为大家整理,主要介绍了使用CloudFormation模板更新AWSAthena工作组相关的知识,希望对你有一定的参考价值。

篇首语:本文由编程笔记#小编为大家整理,主要介绍了使用CloudFormation模板更新AWS Athena工作组相关的知识,希望对你有一定的参考价值。



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

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

答案

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

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

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

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


推荐阅读
author-avatar
风之云织2004
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有