Upcloud: Added support for deprecated network field for loadbalancers
parent
e574cab44d
commit
57f65da9e4
|
@ -134,6 +134,7 @@ terraform destroy --var-file cluster-settings.tfvars \
|
||||||
* `end_address`: End of address range to allow
|
* `end_address`: End of address range to allow
|
||||||
* `loadbalancer_enabled`: Enable managed load balancer
|
* `loadbalancer_enabled`: Enable managed load balancer
|
||||||
* `loadbalancer_plan`: Plan to use for load balancer *(development|production-small)*
|
* `loadbalancer_plan`: Plan to use for load balancer *(development|production-small)*
|
||||||
|
* `loadbalancer_legacy_network`: If the loadbalancer should use the deprecated network field instead of networks blocks. You probably want to have this set to false (default value)
|
||||||
* `loadbalancers`: Ports to load balance and which machines to forward to. Key of this object will be used as the name of the load balancer frontends/backends
|
* `loadbalancers`: Ports to load balance and which machines to forward to. Key of this object will be used as the name of the load balancer frontends/backends
|
||||||
* `port`: Port to load balance.
|
* `port`: Port to load balance.
|
||||||
* `target_port`: Port to the backend servers.
|
* `target_port`: Port to the backend servers.
|
||||||
|
|
|
@ -36,6 +36,7 @@ module "kubernetes" {
|
||||||
loadbalancer_enabled = var.loadbalancer_enabled
|
loadbalancer_enabled = var.loadbalancer_enabled
|
||||||
loadbalancer_plan = var.loadbalancer_plan
|
loadbalancer_plan = var.loadbalancer_plan
|
||||||
loadbalancer_outbound_proxy_protocol = var.loadbalancer_proxy_protocol ? "v2" : ""
|
loadbalancer_outbound_proxy_protocol = var.loadbalancer_proxy_protocol ? "v2" : ""
|
||||||
|
loadbalancer_legacy_network = var.loadbalancer_legacy_network
|
||||||
loadbalancers = var.loadbalancers
|
loadbalancers = var.loadbalancers
|
||||||
|
|
||||||
router_enable = var.router_enable
|
router_enable = var.router_enable
|
||||||
|
|
|
@ -549,16 +549,27 @@ resource "upcloud_loadbalancer" "lb" {
|
||||||
name = "${local.resource-prefix}lb"
|
name = "${local.resource-prefix}lb"
|
||||||
plan = var.loadbalancer_plan
|
plan = var.loadbalancer_plan
|
||||||
zone = var.private_cloud ? var.public_zone : var.zone
|
zone = var.private_cloud ? var.public_zone : var.zone
|
||||||
networks {
|
network = var.loadbalancer_legacy_network ? upcloud_network.private.id : null
|
||||||
name = "Private-Net"
|
|
||||||
type = "private"
|
dynamic "networks" {
|
||||||
family = "IPv4"
|
for_each = var.loadbalancer_legacy_network ? [] : [1]
|
||||||
network = upcloud_network.private.id
|
|
||||||
|
content {
|
||||||
|
name = "Private-Net"
|
||||||
|
type = "private"
|
||||||
|
family = "IPv4"
|
||||||
|
network = upcloud_network.private.id
|
||||||
|
}
|
||||||
}
|
}
|
||||||
networks {
|
|
||||||
name = "Public-Net"
|
dynamic "networks" {
|
||||||
type = "public"
|
for_each = var.loadbalancer_legacy_network ? [] : [1]
|
||||||
family = "IPv4"
|
|
||||||
|
content {
|
||||||
|
name = "Public-Net"
|
||||||
|
type = "public"
|
||||||
|
family = "IPv4"
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
lifecycle {
|
lifecycle {
|
||||||
|
@ -584,8 +595,13 @@ resource "upcloud_loadbalancer_frontend" "lb_frontend" {
|
||||||
mode = "tcp"
|
mode = "tcp"
|
||||||
port = each.value.port
|
port = each.value.port
|
||||||
default_backend_name = upcloud_loadbalancer_backend.lb_backend[each.key].name
|
default_backend_name = upcloud_loadbalancer_backend.lb_backend[each.key].name
|
||||||
networks {
|
|
||||||
name = "Public-Net"
|
dynamic "networks" {
|
||||||
|
for_each = var.loadbalancer_legacy_network ? [] : [1]
|
||||||
|
|
||||||
|
content {
|
||||||
|
name = "Public-Net"
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
dynamic "networks" {
|
dynamic "networks" {
|
||||||
|
|
|
@ -98,6 +98,11 @@ variable "loadbalancer_outbound_proxy_protocol" {
|
||||||
type = string
|
type = string
|
||||||
}
|
}
|
||||||
|
|
||||||
|
variable "loadbalancer_legacy_network" {
|
||||||
|
type = bool
|
||||||
|
default = false
|
||||||
|
}
|
||||||
|
|
||||||
variable "loadbalancers" {
|
variable "loadbalancers" {
|
||||||
description = "Load balancers"
|
description = "Load balancers"
|
||||||
|
|
||||||
|
|
|
@ -136,6 +136,13 @@ variable "loadbalancer_proxy_protocol" {
|
||||||
default = false
|
default = false
|
||||||
}
|
}
|
||||||
|
|
||||||
|
variable "loadbalancer_legacy_network" {
|
||||||
|
description = "If the loadbalancer should use the deprecated network field instead of networks blocks. You probably want to have this set to false"
|
||||||
|
|
||||||
|
type = bool
|
||||||
|
default = false
|
||||||
|
}
|
||||||
|
|
||||||
variable "loadbalancers" {
|
variable "loadbalancers" {
|
||||||
description = "Load balancers"
|
description = "Load balancers"
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue