【问题标题】:Difference in AWS Cloudformation stack when updating via console to updating with same json via CLI通过控制台更新到通过 CLI 使用相同的 json 更新时 AWS Cloudformation 堆栈的差异
【发布时间】:2019-01-16 12:42:02
【问题描述】:

我有一个现有的 AWS 堆栈,可以使用 Cloud Formation 通过控制台手动更新,没有任何问题。

通过 GUI,我可以上传堆栈 json 文件并进行部署,仅更新模板的更改或返回正确的输出(如果不包含更改)。还有许多默认值已经作为参数更新并在 json 中定义。

错误\

我的问题是当我使用下面的示例代码通过 CLI 运行相同的更新时

aws cloudformation update-stack  --stack-name $stackname  --template-url https://s3-myregion.amazonaws.com/mybucket --parameters ParameterKey=MasterUsername,UsePreviousValue=true ParameterKey=MasterUserPassword,UsePreviousValue=true --capabilities CAPABILITY_NAMED_IAM

这开始更新堆栈,但开始修改 RDS 数据库,创建已创建的新 EC2 实例,重新创建已存在的新 vpn 和客户网关。当通过 GUI 更新时,这些值在 UI 中不会默认作为 EC2 实例 ami 以外的参数。

我希望通过构建类型服务器将通过 gui 的手动更新转移到自动化过程。

我是否需要在命令中使用如下命令

--使用前一个模板

或者我需要为所有资源/参数设置,UsePreviousValue=true

仅供参考:我已经在只有一个 EC2 实例和安全组的较小堆栈上进行了测试,并且无需重新创建资源即可正常更新。

【问题讨论】:

  • 这可能与元数据有关吗?

标签: amazon-cloudformation aws-cli


【解决方案1】:

第二个“$true”中是否缺少“$”?

【讨论】:

  • 已经修改,抱歉错字,不影响代码,因为这些资源在更新时不受影响。
【解决方案2】:

我能够对此进行排序,更改是在 ami 和 vpn BGP 默认值的默认值中。

我可以通过在 CLI 中创建更改集并更清楚地检查更改来发现这一点。 一旦更新了这些,ui 和 cli 都匹配了。快乐的日子

【讨论】:

    猜你喜欢
    • 2020-07-13
    • 2019-03-08
    • 2017-05-07
    • 2014-07-11
    • 1970-01-01
    • 2019-03-23
    • 1970-01-01
    • 2021-06-27
    • 1970-01-01
    相关资源
    最近更新 更多