87 lines
2.6 KiB
HCL
87 lines
2.6 KiB
HCL
resource "azurerm_virtual_machine" "jumphost" {
|
|
name = "wvm-${local.basename}"
|
|
location = azurerm_resource_group.default.location
|
|
resource_group_name = azurerm_resource_group.default.name
|
|
network_interface_ids = [azurerm_network_interface.jumphost_nic.id]
|
|
vm_size = "Standard_DS3_v2"
|
|
|
|
delete_os_disk_on_termination = true
|
|
delete_data_disks_on_termination = true
|
|
|
|
storage_image_reference {
|
|
publisher = "microsoft-dsvm"
|
|
offer = "dsvm-win-2019"
|
|
sku = "server-2019"
|
|
version = "latest"
|
|
}
|
|
|
|
os_profile {
|
|
computer_name = "jumphost"
|
|
admin_username = var.jumphost_username
|
|
admin_password = var.jumphost_password
|
|
}
|
|
|
|
os_profile_windows_config {
|
|
provision_vm_agent = true
|
|
enable_automatic_upgrades = true
|
|
}
|
|
|
|
identity {
|
|
type = "SystemAssigned"
|
|
}
|
|
|
|
storage_os_disk {
|
|
name = "disk-${local.basename}"
|
|
caching = "ReadWrite"
|
|
create_option = "FromImage"
|
|
managed_disk_type = "StandardSSD_LRS"
|
|
}
|
|
}
|
|
|
|
resource "azurerm_network_interface" "jumphost_nic" {
|
|
name = "nic-${local.basename}"
|
|
location = azurerm_resource_group.default.location
|
|
resource_group_name = azurerm_resource_group.default.name
|
|
|
|
ip_configuration {
|
|
name = "configuration"
|
|
private_ip_address_allocation = "Dynamic"
|
|
subnet_id = azurerm_subnet.default.id
|
|
}
|
|
}
|
|
|
|
resource "azurerm_network_security_group" "jumphost_nsg" {
|
|
name = "nsg-${local.basename}"
|
|
location = azurerm_resource_group.default.location
|
|
resource_group_name = azurerm_resource_group.default.name
|
|
|
|
security_rule {
|
|
name = "RDP"
|
|
priority = 1010
|
|
direction = "Inbound"
|
|
access = "Allow"
|
|
protocol = "Tcp"
|
|
source_port_range = "*"
|
|
destination_port_range = 3389
|
|
source_address_prefix = "*"
|
|
destination_address_prefix = "*"
|
|
}
|
|
}
|
|
|
|
resource "azurerm_network_interface_security_group_association" "syn_jumphost_nsg_association" {
|
|
network_interface_id = azurerm_network_interface.jumphost_nic.id
|
|
network_security_group_id = azurerm_network_security_group.jumphost_nsg.id
|
|
}
|
|
|
|
resource "azurerm_dev_test_global_vm_shutdown_schedule" "syn_jumphost_schedule" {
|
|
virtual_machine_id = azurerm_virtual_machine.jumphost.id
|
|
location = azurerm_resource_group.default.location
|
|
enabled = true
|
|
|
|
daily_recurrence_time = "2000"
|
|
timezone = "W. Europe Standard Time"
|
|
|
|
notification_settings {
|
|
enabled = false
|
|
}
|
|
} |