Terraform 以地形连接两个变量

Terraform 以地形连接两个变量,terraform,Terraform,我试图使用terraform从kops创建kubernetes集群,下面的代码是基础设施的一部分,我试图用两个变量创建名称concatenate,我得到非法字符错误行2,发生错误是因为我试图用concatenate变量定义名称。在地形中可能吗 resource "aws_autoscaling_group" "master-kubernetes" { name = "master-"${var.zone}".masters."${var.cluster_nam

我试图使用terraform从kops创建kubernetes集群,下面的代码是基础设施的一部分,我试图用两个变量创建名称concatenate,我得到非法字符错误行2,发生错误是因为我试图用concatenate变量定义名称。在地形中可能吗

resource "aws_autoscaling_group" "master-kubernetes" {
  name                 = "master-"${var.zone}".masters."${var.cluster_name}""
  launch_configuration = "${aws_launch_configuration.master-kubernetes.id}"
  max_size             = 1
  min_size             = 1
  vpc_zone_identifier  = ["${aws_subnet.subnet-kubernetes.id}"]
试试这个:

resource "aws_autoscaling_group" "master-kubernetes" {
  name = "master-${var.zone}.masters.${var.cluster_name}"
  # ... other params ...
}

使用最新的terraform 0.12.x,您可以做得更好,如:

resource "aws_autoscaling_group" "master-kubernetes" {
    name = format("master-%s.masters.%s", var.zone, var.cluster_name)
}

在新版本的Terraform中,声明var是相同的:var.name_var。但是,在旧版本中,使用${}如何工作,Terraform。可以吗?我的答案中Terraform的语法基于0.11.x版和更早版本。