resource "azurerm_resource_group" "demo_rg" { name = "RG_RnD_Demo_Terraform" location = "West Europe" } resource "azurerm_virtual_network" "demo_vnet" { name = "vnet_terr_demo" address_space = ["10.0.0.0/16"] location = azurerm_resource_group.demo_rg.location resource_group_name = azurerm_resource_group.demo_rg.name } resource "azurerm_subnet" "demo_subnet1" { name = "vm_terr_demo" resource_group_name = azurerm_resource_group.demo_rg.name virtual_network_name = azurerm_virtual_network.demo_vnet.name address_prefixes = ["10.0.1.0/24"] } resource "azurerm_subnet" "demo_subnet2" { name = "db_terr_demo" resource_group_name = azurerm_resource_group.demo_rg.name virtual_network_name = azurerm_virtual_network.demo_vnet.name address_prefixes = ["10.0.2.0/24"] } resource "azurerm_network_interface" "demo_nic" { name = "vm_terr_demo" location = azurerm_resource_group.demo_rg.location resource_group_name = azurerm_resource_group.demo_rg.name ip_configuration { name = "vm_demo" subnet_id = azurerm_subnet.demo_subnet1.id private_ip_address_allocation = "Dynamic" } } resource "azurerm_linux_virtual_machine" "demo_vm" { name = "vmdemo" resource_group_name = azurerm_resource_group.demo_rg.name location = azurerm_resource_group.demo_rg.location size = "Standard_F2" admin_username = "adminuser" network_interface_ids = [ azurerm_network_interface.demo_nic.id, ] #admin_ssh_key { # username = "adminuser" # public_key = file("~/.ssh/id_rsa.pub") #} os_disk { caching = "ReadWrite" storage_account_type = "Standard_LRS" } source_image_reference { publisher = "Canonical" offer = "0001-com-ubuntu-server-focal" sku = "20_04-lts" version = "latest" } }