Terraform调整count参数时,资源会重建还是增量新增?
Terraform count 变更时的资源增量行为
当你把local.number_of_ips从5改为6时,只会增量新增第6个IP地址资源,编号0-4(对应名称${var.name}0到${var.name}4)的原有IP不会被重建。
核心逻辑说明
Terraform 通过count.index来唯一追踪每个由count创建的资源实例:
- 初始
count=5时,会生成索引0到4的5个公网IP实例,每个实例的标识(名称+索引)是唯一的。 - 当
count增加到6时,Terraform会对比现有实例的索引范围,发现仅新增了索引为5的实例,因此只会创建名称为${var.name}5的公网IP,原有5个实例的配置和状态完全保留,不会触发重建操作。
只有当你修改了count的关联标识规则(比如把名称里的count.index替换成其他变量),或者删除已有索引对应的实例时,才会导致原有资源被销毁重建。你的代码中名称直接绑定count.index,索引对应关系稳定,因此只会增量新增资源。
内容的提问来源于stack exchange,提问作者Macko
相关产品推荐
相关产品推荐

