Virtual machine 创建多个vm';s与Terraform for Azure

Virtual machine 创建多个vm';s与Terraform for Azure,virtual-machine,terraform,terraform-provider-azure,Virtual Machine,Terraform,Terraform Provider Azure,我在Azure中使用Terraform创建多个虚拟机时遇到问题。在创建网络接口时,我遇到了一个关于创建公共ip地址id的错误: 我假设我不正确地使用了count函数,或者需要完全不同的方法 代码: 有人能帮我解决这个问题吗?我很确定你需要做的就是改变 public_ip_address_id = ["${element(azurerm_public_ip.publicip.id, count.index)}"] 到 通常,类似于azurerm\u publi

我在Azure中使用Terraform创建多个虚拟机时遇到问题。在创建网络接口时,我遇到了一个关于创建公共ip地址id的错误:

我假设我不正确地使用了count函数,或者需要完全不同的方法

代码:


有人能帮我解决这个问题吗?

我很确定你需要做的就是改变

        public_ip_address_id          = ["${element(azurerm_public_ip.publicip.id, count.index)}"]


通常,类似于
azurerm\u public\u ip.publicip.id
的引用适用于单一资源(即不使用count的资源)。因此,使用
元素
有点像是假设一个单一的资源。一旦使用了
count
,资源就开始像列表一样运行,需要这样处理。

您的错误应该直接作为文本出现在问题中,而不是作为链接屏幕截图出现。
        public_ip_address_id          = ["${element(azurerm_public_ip.publicip.id, count.index)}"]
        public_ip_address_id          = ["${azurerm_public_ip.publicip[count.index].id}"]