quickstart/101-virtual-network-public-ip/main.tf (62 lines of code) (raw):

# Random pet resource to generate a unique name for the resource group resource "random_pet" "rg_name" { prefix = var.resource_group_name_prefix } # Create a resource group resource "azurerm_resource_group" "example" { location = var.resource_group_location name = random_pet.rg_name.id } # Create a public IP: IPv4 Standard SKU resource "azurerm_public_ip" "myStandardPublicIP" { name = "myStandardPublicIP" resource_group_name = azurerm_resource_group.example.name location = azurerm_resource_group.example.location allocation_method = "Static" sku = "Standard" ip_version = "IPv4" zones = ["1", "2", "3"] } # Create a public IP: IPv4 Basic SKU resource "azurerm_public_ip" "myBasicPublicIP" { name = "myBasicPublicIP" resource_group_name = azurerm_resource_group.example.name location = azurerm_resource_group.example.location allocation_method = "Static" sku = "Basic" ip_version = "IPv4" } # Create a public IP: IPv4 Zonal resource "azurerm_public_ip" "myZonalStandardPublicIP" { name = "myZonalStandardPublicIP" resource_group_name = azurerm_resource_group.example.name location = azurerm_resource_group.example.location allocation_method = "Static" sku = "Standard" ip_version = "IPv4" zones = ["2"] } # Create a public IP: IPv4 Non-Zonal resource "azurerm_public_ip" "myNonZonalStandardPublicIP" { name = "myNonZonalStandardPublicIP" resource_group_name = azurerm_resource_group.example.name location = azurerm_resource_group.example.location allocation_method = "Static" sku = "Standard" ip_version = "IPv4" } # Create a public IP: IPv4 with Routing Preference resource "azurerm_public_ip" "myRoutingPreferenceStandardPublicIP" { name = "myRoutingPreferenceStandardPublicIP" resource_group_name = azurerm_resource_group.example.name location = azurerm_resource_group.example.location allocation_method = "Static" sku = "Standard" ip_version = "IPv4" ip_tags = { RoutingPreference = "Internet" } zones = ["1", "2", "3"] } # Create a public IP: IPv4 with SKU Tier set to Global resource "azurerm_public_ip" "myGlobalTierStandardPublicIP" { name = "myGlobalTierStandardPublicIP-Global" resource_group_name = azurerm_resource_group.example.name location = azurerm_resource_group.example.location allocation_method = "Static" sku = "Standard" ip_version = "IPv4" sku_tier = "Global" }