Skip to content

Commit 3b034c2

Browse files
committed
fix: more tweaks
1 parent e404dc5 commit 3b034c2

File tree

3 files changed

+59
-56
lines changed

3 files changed

+59
-56
lines changed

terraform/modules/ros-management-config/inputs.tf

Lines changed: 21 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,28 @@
1+
variable "hostname" {
2+
type = string
3+
}
4+
15
variable "bridge_name" {
26
type = string
37
}
48

5-
variable "oob_mgmt_interface" {
9+
variable "mgmt_cidr_prefix" {
10+
type = string
11+
}
12+
13+
variable "mgmt_cidr_bits" {
14+
type = number
15+
}
16+
17+
variable "mgmt_hostnum" {
18+
type = number
19+
}
20+
21+
variable "mgmt_vlan_id" {
22+
type = number
23+
}
24+
25+
variable "oob_mgmt_port" {
626
type = string
727
}
828

@@ -15,7 +35,3 @@ variable "oob_mgmt_cidr_bits" {
1535
type = number
1636
default = 24
1737
}
18-
19-
variable "mgmt_vlan_id" {
20-
type = number
21-
}
Lines changed: 28 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -1,42 +1,43 @@
1-
# TODO: set router identity
21
# TODO: import SSH keys
3-
# TODO: add dhcp-server on management subnet
4-
# TODO: add dhcp-client on admin vlan
52
# TODO: implement VRF for services
3+
# TODO: implement ROMON when resource is available
4+
# TODO: routerboard auto upgrade
65

76
locals {
8-
oob_mgmt_cidr = "${var.oob_mgmt_cidr_prefix}/${var.oob_mgmt_cidr_bits}"
7+
mgmt_cidr = "${var.mgmt_cidr_prefix}/${var.mgmt_cidr_bits}"
98
}
109

11-
resource "routeros_interface_list" "admin" {
12-
name = "admin-ifces"
10+
resource "routeros_system_identity" "self" {
11+
name = var.hostname
1312
}
1413

15-
resource "routeros_interface_list_member" "admin_interface" {
16-
list = routeros_interface_list.admin.name
17-
interface = var.oob_mgmt_interface
18-
}
19-
20-
resource "routeros_interface_list_member" "admin_vlan" {
21-
list = routeros_interface_list.admin.name
22-
interface = routeros_interface_vlan.admin.name
23-
}
24-
25-
resource "routeros_interface_vlan" "admin" {
14+
# resource "routeros_interface_list" "mgmt" {
15+
# name = "list-mgmt"
16+
# }
17+
#
18+
# resource "routeros_interface_list_member" "mgmt_port" {
19+
# list = routeros_interface_list.mgmt.name
20+
# interface = var.oob_mgmt_port
21+
# }
22+
#
23+
# resource "routeros_interface_list_member" "mgmt_vlan" {
24+
# list = routeros_interface_list.mgmt.name
25+
# interface = routeros_interface_vlan.mgmt.name
26+
# }
27+
28+
resource "routeros_interface_vlan" "mgmt" {
29+
name = "vlan-mgmt"
2630
interface = var.bridge_name
27-
name = "admin-vlan"
2831
vlan_id = var.mgmt_vlan_id
2932
}
3033

31-
resource "routeros_ip_address" "oob" {
32-
interface = var.oob_mgmt_interface
33-
address = "${cidrhost(local.oob_mgmt_cidr, 1)}/${var.oob_mgmt_cidr_bits}"
34+
resource "routeros_ip_address" "mgmt" {
35+
interface = routeros_interface_vlan.mgmt.name
36+
address = "${cidrhost(local.mgmt_cidr, var.mgmt_hostnum)}/${var.mgmt_cidr_bits}"
3437
}
3538

36-
module "oob_dhcp" {
37-
source = "../ros-dhcp"
38-
39-
interface = var.oob_mgmt_interface
40-
cidr_prefix = var.oob_mgmt_cidr_prefix
41-
cidr_bits = var.oob_mgmt_cidr_bits
39+
# TODO: remove when we have OSPF?
40+
resource "routeros_ip_route" "gateway" {
41+
dst_address = "0.0.0.0/0"
42+
gateway = cidrhost(local.mgmt_cidr, 1)
4243
}

terraform/stacks/network/routeros.tf

Lines changed: 10 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -27,23 +27,18 @@ locals {
2727
iot = {
2828
id = 101
2929
}
30-
# ioc = {
31-
# id = 102
32-
# }
3330
}
3431
wan_port = "ether8"
3532
ports = {
3633
sfp-sfpplus1 = {
3734
comment = "crs320-trunk"
38-
# pvid = local.vlans.adm.id
3935
tagged = [
4036
local.vlans.srv.id,
4137
local.vlans.media.id,
4238
local.vlans.k8s.id,
4339
local.vlans.lan.id,
4440
local.vlans.adm.id,
4541
local.vlans.iot.id,
46-
# 1099
4742
]
4843
}
4944
ether1 = {
@@ -54,12 +49,19 @@ locals {
5449
local.vlans.k8s.id,
5550
local.vlans.lan.id,
5651
local.vlans.adm.id,
57-
1099
5852
]
5953
}
54+
ether2 = {
55+
comment = "crs320-admin"
56+
}
57+
ether3 = {
58+
comment = "capxr0"
59+
}
60+
ether4 = {
61+
comment = "capxr1"
62+
}
6063
ether6 = {
6164
comment = "crs320-admin"
62-
# pvid = local.vlans.adm.id
6365
}
6466
}
6567
hosts = {
@@ -84,8 +86,7 @@ locals {
8486
dhcp_server = "adm"
8587
}
8688
pve0 = {
87-
# mac = "d0:50:99:fe:51:b4"
88-
mac = "4e:81:80:a2:bb:d2"
89+
mac = "a6:34:58:9f:98:09"
8990
ip = cidrhost(local.vlan_cidrs.srv, 10)
9091
dhcp_server = "srv"
9192
}
@@ -95,7 +96,6 @@ locals {
9596
dhcp_server = "adm"
9697
}
9798
pve1 = {
98-
# mac = "74:56:3c:69:1e:30",
9999
mac = "be:4f:11:f4:ba:61",
100100
ip = cidrhost(local.vlan_cidrs.srv, 20)
101101
dhcp_server = "srv"
@@ -128,7 +128,6 @@ locals {
128128
vlan_cidrs = { for k, v in local.vlans : k => lookup(v, "cidr", cidrsubnet(local.cidr, 15, v.id)) }
129129
}
130130

131-
132131
resource "routeros_interface_list" "wan" {
133132
name = "WAN"
134133
}
@@ -160,16 +159,3 @@ resource "routeros_ip_dns" "upstream" {
160159
max_concurrent_queries = 200
161160
max_concurrent_tcp_sessions = 40
162161
}
163-
164-
moved {
165-
from = routeros_dhcp_server_lease.static_hosts["pve"]
166-
to = routeros_dhcp_server_lease.static_hosts["pve0"]
167-
}
168-
moved {
169-
from = routeros_dhcp_server_lease.static_hosts["pve-ipmi"]
170-
to = routeros_dhcp_server_lease.static_hosts["pve0-ipmi"]
171-
}
172-
moved {
173-
from = routeros_dhcp_server_lease.static_hosts["hypernix"]
174-
to = routeros_dhcp_server_lease.static_hosts["pve1"]
175-
}

0 commit comments

Comments
 (0)