Terraform 0.11

azurerm_virtual_network_peering




terraform

azurerm_virtual_network_peering

एक वर्चुअल नेटवर्क पेअरिंग का प्रबंधन करता है जो संसाधनों को लिंक किए गए वर्चुअल नेटवर्क में अन्य संसाधनों तक पहुंचने की अनुमति देता है।

उदाहरण उपयोग

resource "azurerm_resource_group" "test" {
  name     = "peeredvnets-rg"
  location = "West US"
}

resource "azurerm_virtual_network" "test1" {
  name                = "peternetwork1"
  resource_group_name = "${azurerm_resource_group.test.name}"
  address_space       = ["10.0.1.0/24"]
  location            = "West US"
}

resource "azurerm_virtual_network" "test2" {
  name                = "peternetwork2"
  resource_group_name = "${azurerm_resource_group.test.name}"
  address_space       = ["10.0.2.0/24"]
  location            = "West US"
}

resource "azurerm_virtual_network_peering" "test1" {
  name                      = "peer1to2"
  resource_group_name       = "${azurerm_resource_group.test.name}"
  virtual_network_name      = "${azurerm_virtual_network.test1.name}"
  remote_virtual_network_id = "${azurerm_virtual_network.test2.id}"
}

resource "azurerm_virtual_network_peering" "test2" {
  name                      = "peer2to1"
  resource_group_name       = "${azurerm_resource_group.test.name}"
  virtual_network_name      = "${azurerm_virtual_network.test2.name}"
  remote_virtual_network_id = "${azurerm_virtual_network.test1.id}"
}

उदाहरण उपयोग (वैश्विक आभासी नेटवर्क peering)

variable "location" {
  default = [
    "uksouth",
    "southeastasia",
  ]
}

variable "vnet_address_space" {
  default = [
    "10.0.0.0/16",
    "10.1.0.0/16",
  ]
}

resource "azurerm_resource_group" "vnet" {
  count    = "${length(var.location)}"
  name     = "rg-global-vnet-peering-${count.index}"
  location = "${element(var.location, count.index)}"
}

resource "azurerm_virtual_network" "vnet" {
  count               = "${length(var.location)}"
  name                = "vnet-${count.index}"
  resource_group_name = "${element(azurerm_resource_group.vnet.*.name, count.index)}"
  address_space       = ["${element(var.vnet_address_space, count.index)}"]
  location            = "${element(azurerm_resource_group.vnet.*.location, count.index)}"
}

resource "azurerm_subnet" "nva" {
  count                = "${length(var.location)}"
  name                 = "nva"
  resource_group_name  = "${element(azurerm_resource_group.vnet.*.name, count.index)}"
  virtual_network_name = "${element(azurerm_virtual_network.vnet.*.name, count.index)}"
  address_prefix       = "${cidrsubnet("${element(azurerm_virtual_network.vnet.*.address_space[count.index], count.index)}", 13, 0)}" # /29
}

# enable global peering between the two virtual network 
resource "azurerm_virtual_network_peering" "peering" {
  count                        = "${length(var.location)}"
  name                         = "peering-to-${element(azurerm_virtual_network.vnet.*.name, 1 - count.index)}"
  resource_group_name          = "${element(azurerm_resource_group.vnet.*.name, count.index)}"
  virtual_network_name         = "${element(azurerm_virtual_network.vnet.*.name, count.index)}"
  remote_virtual_network_id    = "${element(azurerm_virtual_network.vnet.*.id, 1 - count.index)}"
  allow_virtual_network_access = true
  allow_forwarded_traffic      = true
  # `allow_gateway_transit` must be set to false for vnet Global Peering
  allow_gateway_transit        = false
}

तर्क संदर्भ

निम्नलिखित तर्क समर्थित हैं:

  • name - (आवश्यक) वर्चुअल नेटवर्क पेअरिंग का नाम। इस परिवर्तन से एक नया संसाधन बनने के लिए बाध्य होता है।

  • virtual_network_name - (आवश्यक) वर्चुअल नेटवर्क का नाम। इस परिवर्तन से एक नया संसाधन बनने के लिए बाध्य होता है।

  • remote_virtual_network_id - (आवश्यक) दूरस्थ वर्चुअल नेटवर्क का पूर्ण Azure संसाधन ID। इस परिवर्तन से एक नया संसाधन बनने के लिए बाध्य होता है।

  • resource_group_name - (आवश्यक) वर्चुअल नेटवर्क बनाने के लिए संसाधन समूह का नाम। इस परिवर्तन से एक नया संसाधन बनने के लिए बाध्य होता है।

  • allow_virtual_network_access - (वैकल्पिक) नियंत्रण यदि दूरस्थ वर्चुअल नेटवर्क में VM स्थानीय VM नेटवर्क में VMs तक पहुँच सकते हैं। झूठे की अवहेलना करता है।

  • allow_forwarded_traffic - (वैकल्पिक) नियंत्रित करता है यदि दूरस्थ वर्चुअल नेटवर्क में VMs से अग्रेषित ट्रैफ़िक की अनुमति है। झूठे की अवहेलना करता है।

  • allow_gateway_transit - (वैकल्पिक) नियंत्रण गेटवे का उपयोग दूरस्थ वर्चुअल नेटवर्क के स्थानीय वर्चुअल नेटवर्क के लिंक में किया जा सकता है।

  • use_remote_gateways - (वैकल्पिक) नियंत्रित करता है यदि दूरस्थ गेटवे का उपयोग स्थानीय वर्चुअल नेटवर्क पर किया जा सकता है। यदि ध्वज को true सेट किया गया true , और रिमोट allow_gateway_transit पर allow_gateway_transit भी true , तो वर्चुअल नेटवर्क पारगमन के लिए दूरस्थ वर्चुअल नेटवर्क के गेटवे का उपयोग करेगा। केवल एक ही सहकर्मी के पास इस ध्वज को true करने के लिए सेट किया जा सकता true । यह ध्वज सेट नहीं किया जा सकता है यदि वर्चुअल नेटवर्क में पहले से ही एक प्रवेश द्वार है। false अवहेलना करता false

संदर्भ संदर्भित करता है

निम्नलिखित विशेषताएँ निर्यात की जाती हैं:

  • id - वर्चुअल नेटवर्क पेअरिंग संसाधन आईडी।

ध्यान दें

वर्चुअल नेटवर्क पीयरिंग्स समवर्ती रूप से बनाई, अपडेट या डिलीट नहीं की जा सकती है।

आयात

वर्चुअल नेटवर्क पीयरिंग्स को resource id का उपयोग करके आयात किया जा सकता है, जैसे

terraform import azurerm_virtual_network_peering.testPeering /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/mygroup1/providers/Microsoft.Network/virtualNetworks/myvnet1/virtualNetworkPeerings/myvnet1peering