Files
2026-07-26 09:35:26 +02:00

53 lines
1.2 KiB
HCL

terraform {
required_version = ">= 0.14.0"
required_providers {
openstack = {
source = "terraform-provider-openstack/openstack"
version = "1.53.0"
}
}
}
provider "openstack" {
}
# Private network for the cluster
resource "openstack_networking_network_v2" "net" {
name = "ikt210_g04_network"
admin_state_up = true
port_security_enabled = true
}
# Subnet for the cluster
resource "openstack_networking_subnet_v2" "subnet" {
name = "ikt210_g04_subnet"
network_id = openstack_networking_network_v2.net.id
cidr = "10.0.0.0/24"
ip_version = 4
gateway_ip = "10.0.0.1"
allocation_pool {
start = "10.0.0.30"
end = "10.0.0.250"
}
dns_nameservers = [
"158.37.218.20",
"158.37.242.20",
"128.39.54.10"
]
}
# Router connecting private subnet to external provider network
resource "openstack_networking_router_v2" "router" {
name = "ikt210_g04_router"
external_network_id = "9992655d-0892-4fe0-8a62-d9dac9044be2" # <= provider UUID
}
# Attach subnet to router
resource "openstack_networking_router_interface_v2" "router_if" {
router_id = openstack_networking_router_v2.router.id
subnet_id = openstack_networking_subnet_v2.subnet.id
}