如何从任意数量的输入参数创建 RDS 参数组?



我有四种不同的环境:

  • 开发
  • UAT

每个环境的参数组值都不同。以下值将进入每个环境的变量文件中。

以下是示例 AWS RDS 参数组的参数。在其他环境中,可能会有更多或更少的参数:

parameter {
name = "character_set_client"
value = "utf8mb4"
}
parameter {
name = "character_set_connection"
value = "utf8mb4"
}
parameter {
name = "character_set_server"
value = "utf8mb4"
}
parameter {
name = "log_bin_trust_function_creators"
value = "1"
}

我很好奇如何在变量中表示这一点,以及如何编写资源以使用这些变量来制作具有任意数量参数的 RDS 参数组。

如何从任意数量的输入参数创建 RDS 参数组?

您可以使用动态块:

dynamic "parameter" {
for_each = var.parameters
content {
name         = parameter.value.name
value        = parameter.value.value
}
}

该变量可以是映射列表:

variable "parameters" {
type        = list(map(string))
default     = []
}

terraform.tfvars

parameters = [ 
{
name = "character_set_connection"
value = "utf8mb4"
},
{
name = "character_set_server"
value = "utf8mb4"
},
{
name = "log_bin_trust_function_creators"
value = "1"
}
]

相关内容

  • 没有找到相关文章

最新更新