Terraform 模块中的 count:批量创建、条件部署与版本陷阱全解析
从 Terraform 0.13 版本开始,count 元参数就可以用于模块(Module)了。它让你能从一个模块配置中创建多个实例,极大地提升了代码的灵活性。为什么要在模块中用 count?· 批量创建:需要部署多个环境副本(如为每个开发人员创建一个独立的沙箱)时,避免重复代码。· 条件部署:最核心的用途之一。你可以用 count 有选择性地创建或跳过模块,非常适用于多环境部署(如只在生产环境启用特定服务)。核心语法与示例批量创建:创建3个AWS安全组该示例批量创建了三个安全组,并使用 count.index 为其设置不同的名称和描述。```terraformvariable "group_names" { default = ["web", "app", "db"]}module "security_group" { source = "./modules/aws_sg" count = length(var.group_names) # 通过 count.index 访问列表中的不同元素,为每个实例传入不同参数 sg_name = var.group_names[count.index] sg_description = "Security group for ${var.group_names[count.index]} server"}