From f4a4eed22586ee70376c58940b83b4e7d1ca9a14 Mon Sep 17 00:00:00 2001 From: lonegunmanb Date: Mon, 13 Feb 2023 17:28:10 +0800 Subject: [PATCH] fix 101-application-gateway (#149) Co-authored-by: zjhe --- quickstart/101-application-gateway/main.tf | 66 ++++++++++--------- quickstart/101-application-gateway/outputs.tf | 3 + .../101-application-gateway/providers.tf | 9 ++- 3 files changed, 45 insertions(+), 33 deletions(-) create mode 100644 quickstart/101-application-gateway/outputs.tf diff --git a/quickstart/101-application-gateway/main.tf b/quickstart/101-application-gateway/main.tf index 35682c7f..40800634 100644 --- a/quickstart/101-application-gateway/main.tf +++ b/quickstart/101-application-gateway/main.tf @@ -1,43 +1,48 @@ -resource "azurerm_resource_group" "rg1" { - name = "myResourceGroupAG" +resource "random_string" "rg" { + length = 8 + upper = false + special = false +} + +resource "azurerm_resource_group" "rg" { + name = "101-application-gateway-${random_string.rg.result}" location = "eastus" } -resource "azurerm_virtual_network" "vnet1" { +resource "azurerm_virtual_network" "vnet" { name = "myVNet" - resource_group_name = azurerm_resource_group.rg1.name - location = azurerm_resource_group.rg1.location + resource_group_name = azurerm_resource_group.rg.name + location = azurerm_resource_group.rg.location address_space = ["10.21.0.0/16"] } resource "azurerm_subnet" "frontend" { name = "myAGSubnet" - resource_group_name = azurerm_resource_group.rg1.name - virtual_network_name = azurerm_virtual_network.vnet1.name + resource_group_name = azurerm_resource_group.rg.name + virtual_network_name = azurerm_virtual_network.vnet.name address_prefixes = ["10.21.0.0/24"] } resource "azurerm_subnet" "backend" { name = "myBackendSubnet" - resource_group_name = azurerm_resource_group.rg1.name - virtual_network_name = azurerm_virtual_network.vnet1.name + resource_group_name = azurerm_resource_group.rg.name + virtual_network_name = azurerm_virtual_network.vnet.name address_prefixes = ["10.21.1.0/24"] } -resource "azurerm_public_ip" "pip1" { +resource "azurerm_public_ip" "pip" { name = "myAGPublicIPAddress" - resource_group_name = azurerm_resource_group.rg1.name - location = azurerm_resource_group.rg1.location + resource_group_name = azurerm_resource_group.rg.name + location = azurerm_resource_group.rg.location allocation_method = "Static" sku = "Standard" } - resource "azurerm_application_gateway" "network" { name = "myAppGateway" - resource_group_name = azurerm_resource_group.rg1.name - location = azurerm_resource_group.rg1.location + resource_group_name = azurerm_resource_group.rg.name + location = azurerm_resource_group.rg.location sku { name = "Standard_v2" @@ -57,7 +62,7 @@ resource "azurerm_application_gateway" "network" { frontend_ip_configuration { name = var.frontend_ip_configuration_name - public_ip_address_id = azurerm_public_ip.pip1.id + public_ip_address_id = azurerm_public_ip.pip.id } backend_address_pool { @@ -85,14 +90,15 @@ resource "azurerm_application_gateway" "network" { http_listener_name = var.listener_name backend_address_pool_name = var.backend_address_pool_name backend_http_settings_name = var.http_setting_name + priority = 1 } } resource "azurerm_network_interface" "nic" { - count = 2 + count = 2 name = "nic-${count.index+1}" - location = azurerm_resource_group.rg1.location - resource_group_name = azurerm_resource_group.rg1.name + location = azurerm_resource_group.rg.location + resource_group_name = azurerm_resource_group.rg.name ip_configuration { name = "nic-ipconfig-${count.index+1}" @@ -101,26 +107,26 @@ resource "azurerm_network_interface" "nic" { } } -resource "azurerm_network_interface_application_gateway_backend_address_pool_association" "nic-assoc01" { - count = 2 +resource "azurerm_network_interface_application_gateway_backend_address_pool_association" "nic-assoc" { + count = 2 network_interface_id = azurerm_network_interface.nic[count.index].id ip_configuration_name = "nic-ipconfig-${count.index+1}" - backend_address_pool_id = azurerm_application_gateway.network.backend_address_pool[0].id + backend_address_pool_id = one(azurerm_application_gateway.network.backend_address_pool).id } resource "random_password" "password" { - length = 16 + length = 16 special = true - lower = true - upper = true - number = true + lower = true + upper = true + numeric = true } resource "azurerm_windows_virtual_machine" "vm" { - count = 2 + count = 2 name = "myVM${count.index+1}" - resource_group_name = azurerm_resource_group.rg1.name - location = azurerm_resource_group.rg1.location + resource_group_name = azurerm_resource_group.rg.name + location = azurerm_resource_group.rg.location size = "Standard_DS1_v2" admin_username = "azureadmin" admin_password = random_password.password.result @@ -144,7 +150,7 @@ resource "azurerm_windows_virtual_machine" "vm" { } resource "azurerm_virtual_machine_extension" "vm-extensions" { - count = 2 + count = 2 name = "vm${count.index+1}-ext" virtual_machine_id = azurerm_windows_virtual_machine.vm[count.index].id publisher = "Microsoft.Compute" diff --git a/quickstart/101-application-gateway/outputs.tf b/quickstart/101-application-gateway/outputs.tf new file mode 100644 index 00000000..cb1e2661 --- /dev/null +++ b/quickstart/101-application-gateway/outputs.tf @@ -0,0 +1,3 @@ +output "gateway_frontend_ip" { + value = "http://${azurerm_public_ip.pip.ip_address}" +} \ No newline at end of file diff --git a/quickstart/101-application-gateway/providers.tf b/quickstart/101-application-gateway/providers.tf index dafd7308..5dc28f9b 100644 --- a/quickstart/101-application-gateway/providers.tf +++ b/quickstart/101-application-gateway/providers.tf @@ -1,11 +1,14 @@ terraform { - - required_version = ">=0.12" + required_version = ">=1.2" required_providers { azurerm = { source = "hashicorp/azurerm" - version = ">=2.97.0" + version = "~> 3.0" + } + random = { + source = "hashicorp/random" + version = "~> 3.0" } } }