在 AWS 中构建 HA NAT 的两种常见策略是:
- “路由接管”,实例更新路由表以指向自身。
- “ENI 附加”,其中实例将 ENI 附加到自身,并且路由表设置为将默认路由指向 ENI。
这两种方法都涉及更新资源配置(即路由表或 ENI)的实例,该实例由“心跳脚本”触发或由自动缩放组创建时更新。
这与 CloudFormation 配合得很好,因为对堆栈的更新不会覆盖此后发生的这些更改。 Terraform 的情况并非如此。
Terraform 将检测到任一资源的配置已更改,并将尝试通过删除 Terraform 外部发生的任何更改来“修复配置”。
我明白这里的原理,但它阻止了使用通用策略部署 HA NAT。
那么,有人知道如何在 Terraform 运行方式的范围内完成 HA NAT 解决方案吗?
谢谢, 乔
最佳答案
作为此问题的更新,Terraform 现在支持 managed NAT gateways与 aws_nat_gateway resource
关于amazon-web-services - 使用 Terraform 在 AWS 上创建 HA NAT,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31838845/