Azure地形:没有变化。基础设施是最新的,但未创建资源,terraform Destroy-命令失败

Azure地形:没有变化。基础设施是最新的,但未创建资源,terraform Destroy-命令失败,azure,terraform,terraform-provider-azure,azure-load-balancer,Azure,Terraform,Terraform Provider Azure,Azure Load Balancer,当我执行 terraform plan -var-file="parms.tfvars" -out="stageplan.out" 代码说基础设施是最新的,但当我进入Azure负载平衡器时,规则下的一切都不起作用。以下是未部署的代码: resource "azurerm_lb" "lb" { name = "weblb" resource_group_name = "${azurerm_resource_group.test.name}" locat

当我执行

 terraform plan -var-file="parms.tfvars" -out="stageplan.out"
代码说基础设施是最新的,但当我进入Azure负载平衡器时,规则下的一切都不起作用。以下是未部署的代码:

resource "azurerm_lb" "lb" {
  name                = "weblb"
  resource_group_name = "${azurerm_resource_group.test.name}"
  location            = "${azurerm_resource_group.test.location}"  
  sku                 = "${var.lb_sku}"

   frontend_ip_configuration {
    name                          = "webfrontend"
    subnet_id                     = "${azurerm_subnet.web_tier.id}"
    private_ip_address            = "${var.frontend_private_ip_address}"
    private_ip_address_allocation = "${var.frontend_private_ip_address_allocation}"
  }
}
resource "azurerm_lb_backend_address_pool" "backend_pool" {
  resource_group_name = "${azurerm_resource_group.test.name}"
  loadbalancer_id     = "${azurerm_lb.lb.id}"
  name                = "webBackendPool"
}

resource "azurerm_lb_nat_rule" "azlb" {
  count                          = "${length(var.remote_port)}"
  resource_group_name            = "${azurerm_resource_group.test.name}"
  loadbalancer_id                = "${azurerm_lb.lb.id}"
  name                           = "VM-${count.index}"
  protocol                       = "tcp"
  frontend_port                  = "5000${count.index + 1}"
  backend_port                   = "${element(var.remote_port["${element(keys(var.remote_port), count.index)}"], 1)}"
  frontend_ip_configuration_name = "${var.frontend_name}"
}

resource "azurerm_lb_probe" "azlb" {
  count               = "${length(var.lb_port)}"
  resource_group_name = "${azurerm_resource_group.test.name}"
  loadbalancer_id     = "${azurerm_lb.lb.id}"
  name                = "${element(keys(var.lb_port), count.index)}"
  protocol            = "${element(var.lb_port["${element(keys(var.lb_port), count.index)}"], 1)}"
  port                = "${element(var.lb_port["${element(keys(var.lb_port), count.index)}"], 2)}"
  interval_in_seconds = "${var.lb_probe_interval}"
  number_of_probes    = "${var.lb_probe_unhealthy_threshold}"
}

resource "azurerm_lb_rule" "azlb" {
  count                          = "${length(var.lb_port)}"
  resource_group_name            = "${azurerm_resource_group.test.name}"
  loadbalancer_id                = "${azurerm_lb.lb.id}"
  name                           = "${element(keys(var.lb_port), count.index)}"
  protocol                       = "${element(var.lb_port["${element(keys(var.lb_port), count.index)}"], 1)}"
  frontend_port                  = "${element(var.lb_port["${element(keys(var.lb_port), count.index)}"], 0)}"
  backend_port                   = "${element(var.lb_port["${element(keys(var.lb_port), count.index)}"], 2)}"
  frontend_ip_configuration_name = "${var.frontend_name}"
  enable_floating_ip             = false
  backend_address_pool_id        = "${azurerm_lb_backend_address_pool.backend_pool.id}"
  idle_timeout_in_minutes        = 5
  probe_id                       = "${element(azurerm_lb_probe.azlb.*.id,count.index)}"
  depends_on                     = ["azurerm_lb_probe.azlb"]
}
甚至在我尝试实现负载平衡器部分之前,我的代码执行时没有任何错误。现在当我尝试执行地形破坏时。我收到下面列出的错误消息

C:\Users\sna1>terraform destroy 7发生错误:

  • azurerm_virtual_machine.vm linux with datadisk[0]:预期存储_data_disk.0.managed_disk_类型为[Premium_LRS]之一 标准(标准)标准(标准)标准(标准)标准
  • azurerm_virtual_machine.vm linux with datadisk[0]:预期存储_os_disk.0.managed_disk_类型为[Premium_LRS]之一 标准(标准)标准(标准)标准(标准)标准
  • azurerm_virtual_machine.vm linux with datadisk[0]:存储\u数据\u disk.0.disk\u大小\u gb:无法将“”解析为int: strconv.ParseInt:正在分析“”:无效语法
  • azurerm_virtual_machine.vm linux with datadisk[1]:预期存储_data_disk.0.managed_disk_类型为[Premium_LRS]之一 标准(标准)标准(标准)标准(标准)标准
  • azurerm_virtual_machine.vm linux with datadisk[1]:预期存储_os_disk.0.managed_disk_类型为[Premium_LRS]之一 标准(标准)标准(标准)标准(标准)标准
  • azurerm_virtual_machine.vm linux with datadisk[1]:存储\u数据\u disk.0.disk\u大小\u gb:无法将“”解析为int: strconv.ParseInt:正在分析“”:无效语法
  • azurerm_virtual_network.vnet:“地址空间.0”不能为空

您可以尝试删除状态文件并再次运行terraform init->plan->apply吗?尝试过了,我仍然收到相同的错误消息。尝试
terraform destroy-var file=“parms.tfvars”
?您应该在销毁时添加变量文件。您好,您的问题有更新吗?