使用vnet_subnet_id通过terraform-Azure启动AKS群集

使用vnet_subnet_id通过terraform-Azure启动AKS群集,terraform,terraform-provider-aws,terraform-provider-azure,Terraform,Terraform Provider Aws,Terraform Provider Azure,我正在尝试使用terraform创建一个AKS集群。我正在使用default\u node\u pool块中的vnet\u subnet\u id参数-因此Kubernetes节点出现在我传递到这里的子网id中。 但是,我还希望能够有条件地以正常方式创建kubernetes集群,也就是说,不使用vnet\u subnet\u id参数(因为这是唯一可选的参数)。这样,它只会在vnet/子网中调出属于`节点资源组'一部分的kubernetes节点(通常的方式) 是否可以执行一个条件并实现这两种方案

我正在尝试使用terraform创建一个AKS集群。我正在使用
default\u node\u pool
块中的
vnet\u subnet\u id
参数-因此Kubernetes节点出现在我传递到这里的子网id中。 但是,我还希望能够有条件地以正常方式创建kubernetes集群,也就是说,不使用
vnet\u subnet\u id
参数(因为这是唯一可选的参数)。这样,它只会在vnet/子网中调出属于`节点资源组'一部分的kubernetes节点(通常的方式)


是否可以执行一个条件并实现这两种方案。

当然,请使用以下方法:

vnet_subnet_id = var.condition == "something" ? var.subnetid : null

然后根据这种情况,它会将其放入您的子网或创建一个新的子网

vnet_subnet_id = var.condition == "something" ? var.subnetid : null

然后根据这个条件,它要么把它放到你的子网中,要么创建一个新的子网

好的@4c74356b41,我刚刚试过这个。我得到了这个错误<代码>无效变量语法:“null”。你是说'var.null'吗?如果这是内联template`参数的一部分,则必须用两个美元符号转义插值。例如:${a}变成了${a}`我正在使用-Terraform v0.11.11+provider.azurerm v1.39.0这就是我用-vnet_subnet_id=“${var.subcheck==“true”?var.subnetid:null}”尝试的结果。噢,哈哈。对于0.11,我不确定你是否有条件语法,你应该升级10.13(或至少0.12)并使用azurerm 2+,你正在使用的东西已经严重过时了@4c74356b41,我刚刚尝试了这个。我得到了这个错误<代码>无效变量语法:“null”。你是说'var.null'吗?如果这是内联template`参数的一部分,则必须用两个美元符号转义插值。例如:${a}变成了${a}`我正在使用-Terraform v0.11.11+provider.azurerm v1.39.0这就是我用-vnet_subnet_id=“${var.subcheck==“true”?var.subnetid:null}”尝试的结果。噢,哈哈。对于0.11,我不确定你是否有条件语法,你应该升级10.13(或至少0.12)并使用azurerm 2+,你正在使用的东西已经严重过时了