使用cloudformation创建的AWS中手动更新的堆栈将来会导致冲突吗?

jpganz18

我正在使用cloudformation部署/更新一些堆栈,包括RDS。目前,我已经成功创建了数据库,并且由于设置了错误的端口,因此我想更新端口。

阅读我遇到的文档,通过cloudformation更新它,我必须重命名堆栈才能更新端口,因此它只会使用新端口创建一个新的RDS实例并销毁旧的RDS实例,这意味着我必须首先创建备份,然后再还原它。

我读到的内容是,从AWS控制台“手动”更新端口不会表现出这种方式,也不会发生数据丢失,到目前为止,我还没有尝试过。

因此,例如:

我部署的cloudformation如下:

cloudformation模板->端口123部署的堆栈->端口123

我需要将其更新到端口234

那么我的cloudformation仍然会知道端口123部署堆栈的最新部署-> 234(通过AWS控制台更新)

我的问题如下:在这种情况下,我能够通过AWS控制台更新端口,cloudformation模板会发生什么?我应该将模板更新为具有端口234还是应该将其保留为端口123,以便它不会尝试进行更新?(这将导致我在模板上拥有的内容和实际部署的内容不一致,但是我想知道是否可行)

https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement

我没有所有vpc,安全组,规则等问题,基本上只是端口。

有什么想法吗?

马辛

由CFN创建的在AWS控制台(或CLI,SDK)之外手动修改资源的做法不正确,这会导致堆栈漂移漂移会导致未来的问题;来自docs

无论如何,在CloudFormation之外进行的更改可能会使堆栈更新或删除操作复杂化

专门回答您的问题:

在这种情况下,我能够通过AWS控制台更新端口,cloudformation模板会怎样?

暂时不会发生任何事情。CFN本身不会知道您在CFN之外对RDS所做的任何更改。但是您的堆栈将被视为已漂移,如AWS文档所写,这可能会导致问题。因此最好避免这种情况。

我应该将模板更新为具有端口234还是应该将其保留为端口123,以便它不会尝试进行更新?

是的,如果您想避免漂移。但是,通过CFN更新端口将导致数据库实例的替换和数据丢失。因此,您必须采取所有预防措施。最好是创建一些虚拟RDS数据库,并对其进行测试以了解更改端口的过程和后果。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

预定的将来会导致内存泄漏吗?

销毁结构将来会导致错误吗?

手动删除SAM CloudFormation堆栈中的函数后找不到函数

使用dpkg手动安装软件包是否会阻止将来的升级路径?

lts内核将来会更新其驱动程序以支持更新的硬件吗?

如何在AWS中已经存在的Terraform资源中使用(手动创建)?

CloudFormation可以通过模板创建管道手动批准操作吗?

使用ECS任务定义和服务更新Cloudformation堆栈会导致挂起堆栈

在Lambda中手动签名AppSync URL会导致严重的签名错误

如果Windows Update设置为手动,Windows Defender会更新吗?

在 cython 类上使用手动 deepcopy 会导致内存溢出。为什么?

为什么手动设置bash提示(PS1)会导致root使用$而不是#?

手动提交symfony表单会导致CSRF错误

如何在CloudFormation中获取手动创建的dynamodb表的streamArn

AWS:cloudformation CommaDelimitedList和手动列表不匹配

为什么调用由for循环创建的lambda短链会导致RecursionError,但如果手动创建则正常工作?

在Pytorch中手动更新权重

X.org 将来会提供吗?

aws lambda-如果手动创建s3存储桶,如何使用cloudformation添加s3触发器

Maven 会覆盖本地 Maven 存储库中手动修补的 jar 吗?

如何在git中检测手动解决的冲突

使用PHP regex手动删除git冲突标记

警告:将来会修改

将来会支持mips

Guard中的this.router.navigate将来会阻止路由

在 GCP 中手动创建的 ServiceAccount 属于 Project 吗?资源?

我可以在 Heroku、Ruby on Rails 中手动为生产创建迁移吗?

我可以使用通过Cypher手动创建的索引和查询节点吗?

如何更新Openshift中从git手动创建的应用程序?