我正在使用terraform来构建基础结构。我已经建立了一个带有terraform的虚拟机,它说azure正在运行并且有一个公共IP。但是,我似乎无法通过在Web浏览器中搜索ip来访问VM。我的代码有什么问题吗?或者我缺少什么?下面显示了创建虚拟机的terraform代码。
resource "azurerm_virtual_machine" "myterraformvm" {
name = "myVM"
location = "westeurope"
resource_group_name = "${azurerm_resource_group.myterraformgroup.name}"
network_interface_ids = ["${azurerm_network_interface.myterraformnic.id}"]
vm_size = "Standard_DS1_v2"
storage_os_disk {
name = "myOsDisk"
caching = "ReadWrite"
create_option = "FromImage"
managed_disk_type = "Premium_LRS"
}
storage_image_reference {
publisher = "Canonical"
offer = "UbuntuServer"
sku = "16.04.0-LTS"
version = "latest"
}
os_profile {
computer_name = "myvm"
admin_username = "azureuser"
}
os_profile_linux_config {
disable_password_authentication = true
ssh_keys {
path = "/home/azureuser/.ssh/authorized_keys"
key_data = "ssh-rsa here is a valid SSH key in my original code"
}
}
boot_diagnostics {
enabled = "true"
storage_uri = "${azurerm_storage_account.mystorageaccount.primary_blob_endpoint}"
}
tags {
environment = "Igaaas"
}
}
答案 0 :(得分:0)
对于您的问题,如果要使用Web浏览器通过公用IP访问Azure VM。您需要在VM中拥有Web服务器并监听端口。
例如,您在VM中有一个Web服务器并监听端口80,因此您可以使用Web浏览器通过vm_puvlicIP:80访问VM。
我看到您在代码中设置了ssh键。如果要ssh虚拟机,则应使用ssh工具。然后,您可以使用ssh工具通过公用IP和ssh密钥连接Ubuntu。
对于Terraform,它只是用于创建资源(例如VM)的工具。像Azure模板一样。