Рейтинг:0

Как создать делегирование службы в существующей подсети?

флаг cn

Ниже код создаст службу при создании подсети. Есть ли способ делегировать существующую подсеть? Основная цель заключается в том, что приведенный ниже код будет создавать ошибку для политики Deny-Subnet-Without-Nsg. Итак, создаем эту подсеть прямо в блоке vnet.


ресурс "azurerm_subnet" "пример" {

  виртуальная_сеть_имя = azurerm_virtual_network.aksvnet.name
  имя = "aks-postgres-подсеть"
  имя_группы_ресурсов = azurerm_resource_group.aks_rg.name
  address_prefixes = ["10.230.2.0/24"]
  service_endpoints = ["Microsoft.Storage"]
  делегация {
    имя = "фс"
    service_delegation {
      name = "Microsoft.DBforPostgreSQL/flexibleServers"
      действия = [
        "Microsoft.Network/virtualNetworks/подсети/присоединение/действие",
      ]
    }
  }
  depend_on = [azurerm_virtual_network.aksvnet, azurerm_network_security_group.example]
}

В приведенном ниже коде нет возможности добавить делегирование службы.


ресурс "azurerm_virtual_network" "aksvnet" {

имя = "акс-сеть"

расположение = azurerm_resource_group.aks_rg.location

 имя_группы_ресурсов = группа_ресурсов_azurerm.aks_rg.name

 адресное_пространство    = ["10.0.0.0/8"]

 подсеть {

  name      = "aks-default-subnet"

Префикс_адреса = "10.240.0.0/16"

  группа_безопасности = azurerm_network_security_group.example.id

}

 подсеть {

Имя = "aks-postgres-subnet"

Префикс_адреса = "10.230.2.0/24"

  группа_безопасности = azurerm_network_security_group.example.id

}

}

Поэтому было решено сначала создать подсеть, как указано выше, а затем применить делегирование службы. Как это сделать?

Рейтинг:0
флаг ng

Я не знаю, почему Terraform не позволяет вам добавить делегирование в подсеть при использовании вложенной опции, Спецификация ARM поскольку это включает в себя делегирование, поэтому вы можете добавить ошибку в Terraform, чтобы добавить это.

Тем не менее, вы не можете заставить Terraform обновить ресурс, созданный ранее, поэтому единственный способ сделать это — использовать блок local_exec для запуска некоторого PowerShell или Azure CLI для добавления делегирования.

Другим вариантом может быть использование модуля ARM в Terraform для запуска шаблона ARM, создающего виртуальную сеть, но тогда вы потеряете большую часть преимуществ Terraform.

Ответить или комментировать

Большинство людей не понимают, что склонность к познанию нового открывает путь к обучению и улучшает межличностные связи. В исследованиях Элисон, например, хотя люди могли точно вспомнить, сколько вопросов было задано в их разговорах, они не чувствовали интуитивно связи между вопросами и симпатиями. В четырех исследованиях, в которых участники сами участвовали в разговорах или читали стенограммы чужих разговоров, люди, как правило, не осознавали, что задаваемый вопрос повлияет — или повлиял — на уровень дружбы между собеседниками.