Назад | Перейти на главную страницу

Terraform не может создать виртуальную сеть в Azure

С пары дней я не могу создать виртуальную сеть ни в одной группе ресурсов. Я получаю следующее сообщение

Error: Error applying plan:

1 error(s) occurred:

* azurerm_virtual_network.qmlnetwork: 1 error(s) occurred:

* azurerm_virtual_network.qmlnetwork: Error waiting for completion of Virtual Network "qumulate_network" (Resource Group "QumulateCi"): Long running operation terminated with status 'Failed': Code="InternalServerError" Message="An error occurred."

Пробовал менять имена, диапазоны ip. Попробуйте создать совершенно новую группу ресурсов. Полностью чистое рабочее пространство terraform. Не помогло. Вот мой код.

resource "azurerm_virtual_network" "qmlnetwork" {
name        = "${var.network_name}"
address_space   = ["10.4.0.0/24"]
location    = "${azurerm_resource_group.myproductterraform.location}"
resource_group_name = "${azurerm_resource_group.myproductterraform.name}"
}

/* Add subnet */
resource "azurerm_subnet" "qmlsubnet" {
  name                 = "${var.myproduct_subnet}"
  resource_group_name  = "${azurerm_resource_group.myproductterraform.name}"
  virtual_network_name = "${azurerm_virtual_network.qmlnetwork.name}"
  address_prefix       = "10.4.0.0/24"
}

В некоторых регионах продолжаются перебои в работе. Согласно нашему пониманию, Terraform пытается развернуть виртуальную сеть с пустым определением подсети. Это допустимая операция, поскольку определение подсети не является обязательным (https://docs.microsoft.com/en-us/azure/templates/microsoft.network/virtualnetworks#VirtualNetworkPropertiesFormat )

Спасибо за ответ, вы правы. Когда вы создаете виртуальную сеть, вам необходимо создать в ней подсеть. Измените tf, как показано ниже:

# create virtual network
resource "azurerm_virtual_network" "vnet" {
    name = "tfvnet"
    address_space = ["10.0.0.0/16"]
    location = "ukwest"
    resource_group_name = "${azurerm_resource_group.rg.name}"
    ##You need create a subnet in VNet.
    subnet {
        name = "subnet1"
        address_prefix = "10.0.3.0/24"

    }
} 

Вы также можете проверить это пример по официальному документу.