first commit
This commit is contained in:
commit
82db27147e
7
README.md
Normal file
7
README.md
Normal file
@ -0,0 +1,7 @@
|
|||||||
|
1. Install Azure CLI https://learn.microsoft.com/en-us/cli/azure/install-azure-cli
|
||||||
|
2. Install Terraform https://developer.hashicorp.com/terraform
|
||||||
|
3. Make sure Azure CLI and Terraform can be accessed via PATH
|
||||||
|
4. Execute "az login" and login to your Azure account.
|
||||||
|
5. Adjust the files to your liking.
|
||||||
|
6. Try out the different commands: terraform init, plan, apply, destroy
|
||||||
|
|
||||||
122
ai.tf
Normal file
122
ai.tf
Normal file
@ -0,0 +1,122 @@
|
|||||||
|
resource "azurerm_resource_group" "res-0" {
|
||||||
|
location = "switzerlandnorth"
|
||||||
|
managed_by = "terraform-demo"
|
||||||
|
name = "rg-terraform-demo"
|
||||||
|
tags = {
|
||||||
|
Project = "b1clc-demo"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
resource "azurerm_virtual_network" "res-9" {
|
||||||
|
address_space = ["10.0.0.0/16"]
|
||||||
|
location = azurerm_resource_group.res-0.location
|
||||||
|
name = "vm-demo-linux1-vnet"
|
||||||
|
resource_group_name = azurerm_resource_group.res-0.name
|
||||||
|
tags = {
|
||||||
|
Project = "b1clc-demo"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
resource "azurerm_subnet" "res-10" {
|
||||||
|
address_prefixes = ["10.0.0.0/24"]
|
||||||
|
name = "default"
|
||||||
|
resource_group_name = azurerm_resource_group.res-0.name
|
||||||
|
virtual_network_name = azurerm_virtual_network.res-9.name
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
resource "azurerm_public_ip" "res-8" {
|
||||||
|
allocation_method = "Static"
|
||||||
|
ip_version = "IPv4"
|
||||||
|
location = azurerm_resource_group.res-0.location
|
||||||
|
name = "vm-demo-linux1-ip"
|
||||||
|
resource_group_name = azurerm_resource_group.res-0.name
|
||||||
|
sku = "Standard"
|
||||||
|
sku_tier = "Regional"
|
||||||
|
tags = {
|
||||||
|
Project = "b1clc-demo"
|
||||||
|
}
|
||||||
|
# Removed zones for Standard SKU compatibility
|
||||||
|
}
|
||||||
|
|
||||||
|
resource "azurerm_network_security_group" "res-5" {
|
||||||
|
location = azurerm_resource_group.res-0.location
|
||||||
|
name = "vm-demo-linux1-nsg"
|
||||||
|
resource_group_name = azurerm_resource_group.res-0.name
|
||||||
|
security_rule {
|
||||||
|
access = "Allow"
|
||||||
|
destination_address_prefix = "*"
|
||||||
|
destination_port_range = "22"
|
||||||
|
direction = "Inbound"
|
||||||
|
name = "SSH"
|
||||||
|
priority = 300
|
||||||
|
protocol = "Tcp"
|
||||||
|
source_address_prefix = "*"
|
||||||
|
source_port_range = "*"
|
||||||
|
}
|
||||||
|
security_rule {
|
||||||
|
access = "Allow"
|
||||||
|
destination_address_prefix = "*"
|
||||||
|
destination_port_range = "80"
|
||||||
|
direction = "Inbound"
|
||||||
|
name = "HTTP"
|
||||||
|
priority = 320
|
||||||
|
protocol = "Tcp"
|
||||||
|
source_address_prefix = "*"
|
||||||
|
source_port_range = "*"
|
||||||
|
}
|
||||||
|
tags = {
|
||||||
|
Project = "b1clc-demo"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
resource "azurerm_network_interface" "res-3" {
|
||||||
|
location = azurerm_resource_group.res-0.location
|
||||||
|
name = "vm-demo-linux1823_z1"
|
||||||
|
resource_group_name = azurerm_resource_group.res-0.name
|
||||||
|
tags = {
|
||||||
|
Project = "b1clc-demo"
|
||||||
|
}
|
||||||
|
ip_configuration {
|
||||||
|
name = "ipconfig1"
|
||||||
|
primary = true
|
||||||
|
private_ip_address_version = "IPv4"
|
||||||
|
public_ip_address_id = azurerm_public_ip.res-8.id
|
||||||
|
subnet_id = azurerm_subnet.res-10.id
|
||||||
|
private_ip_address_allocation = "Dynamic"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
resource "azurerm_network_interface_security_group_association" "res-4" {
|
||||||
|
network_interface_id = azurerm_network_interface.res-3.id
|
||||||
|
network_security_group_id = azurerm_network_security_group.res-5.id
|
||||||
|
}
|
||||||
|
|
||||||
|
resource "azurerm_linux_virtual_machine" "res-1" {
|
||||||
|
disable_password_authentication = false
|
||||||
|
admin_password = "test..123"
|
||||||
|
admin_username = "student"
|
||||||
|
computer_name = "vm-demo-linux1"
|
||||||
|
location = azurerm_resource_group.res-0.location
|
||||||
|
name = "vm-demo-linux1"
|
||||||
|
network_interface_ids = [azurerm_network_interface.res-3.id]
|
||||||
|
resource_group_name = azurerm_resource_group.res-0.name
|
||||||
|
size = "Standard_B2ats_v2"
|
||||||
|
zone = "1"
|
||||||
|
os_disk {
|
||||||
|
caching = "ReadWrite"
|
||||||
|
storage_account_type = "StandardSSD_LRS"
|
||||||
|
disk_size_gb = 30
|
||||||
|
}
|
||||||
|
source_image_reference {
|
||||||
|
offer = "ubuntu-24_04-lts"
|
||||||
|
publisher = "canonical"
|
||||||
|
sku = "server"
|
||||||
|
version = "latest"
|
||||||
|
}
|
||||||
|
tags = {
|
||||||
|
Project = "b1clc-demo"
|
||||||
|
}
|
||||||
|
}
|
||||||
Loading…
x
Reference in New Issue
Block a user