diff --git a/terraform/modules/rke1/network.tf b/terraform/modules/rke1/network.tf index 0a23a7e663475c93ddfd972fad5e6c7f86b8a948..10d41755a0f91f2ec3964afa5fb64e76461d5740 100644 --- a/terraform/modules/rke1/network.tf +++ b/terraform/modules/rke1/network.tf @@ -40,7 +40,7 @@ resource "openstack_networking_router_interface_v2" "kube_gateway" { resource "openstack_networking_port_v2" "controlplane_ip" { count = var.controlplane_count - name = format("%s-controlplane-%d", var.cluster_name, count.index + 1) + name = local.controlplane[count.index] network_id = openstack_networking_network_v2.cluster_net.id security_group_ids = [openstack_networking_secgroup_v2.cluster_security_group.id] depends_on = [openstack_networking_router_interface_v2.kube_gateway] @@ -55,7 +55,7 @@ resource "openstack_networking_port_v2" "controlplane_ip" { resource "openstack_networking_port_v2" "controlplane_ip_public" { count = var.controlplane_count - name = format("%s-controlplane-%d", var.cluster_name, count.index + 1) + name = local.controlplane[count.index] network_id = data.openstack_networking_network_v2.ext_net.id security_group_ids = [openstack_networking_secgroup_v2.cluster_security_group.id] } @@ -85,7 +85,7 @@ resource "openstack_networking_floatingip_v2" "floating_ip" { # well. resource "openstack_networking_port_v2" "worker_ip" { count = var.worker_count - name = format("%s-worker-%02d", var.cluster_name, count.index + 1) + name = local.worker[count.index] network_id = openstack_networking_network_v2.cluster_net.id security_group_ids = [openstack_networking_secgroup_v2.cluster_security_group.id] depends_on = [openstack_networking_router_interface_v2.kube_gateway] diff --git a/terraform/modules/rke1/nodes.tf b/terraform/modules/rke1/nodes.tf index c7337a296a94e5fe32aeb56cc398ce3dee6d366b..08b77254eead91faf54a0a6004098c7cdc99d7bb 100644 --- a/terraform/modules/rke1/nodes.tf +++ b/terraform/modules/rke1/nodes.tf @@ -1,9 +1,14 @@ +locals { + controlplane = [for l in range(var.controlplane_count): var.old_hostnames ? format("%s-controlplane-%d", var.cluster_name, l) : format("%s-controlplane-%d", var.cluster_name, l + 1)] + worker = [for l in range(var.worker_count): var.old_hostnames ? format("%s-worker-%d", var.cluster_name, l) : format("%s-worker-%02d", var.cluster_name, l + 1)] +} + # ---------------------------------------------------------------------- # control-plane nodes # ---------------------------------------------------------------------- resource "openstack_compute_instance_v2" "controlplane" { count = var.controlplane_count - name = format("%s-controlplane-%d", var.cluster_name, count.index + 1) + name = local.controlplane[count.index] image_name = var.os flavor_name = var.controlplane_flavor key_pair = openstack_compute_keypair_v2.key.name @@ -26,7 +31,7 @@ resource "openstack_compute_instance_v2" "controlplane" { private_key = openstack_compute_keypair_v2.key.private_key project_name = data.openstack_identity_auth_scope_v3.scope.project_name cluster_name = var.cluster_name - node_name = "${var.cluster_name}-controlplane-${count.index}" + node_name = local.controlplane[count.index] node_command = rancher2_cluster.kube.cluster_registration_token.0.node_command node_options = "--address eth1 --internal-address eth0 --controlplane --etcd" })) @@ -61,7 +66,7 @@ resource "openstack_compute_instance_v2" "controlplane" { # ---------------------------------------------------------------------- resource "openstack_compute_instance_v2" "worker" { count = var.worker_count - name = format("%s-worker-%02d", var.cluster_name, count.index + 1) + name = local.worker[count.index] flavor_name = var.worker_flavor key_pair = local.key config_drive = false @@ -78,7 +83,7 @@ resource "openstack_compute_instance_v2" "worker" { private_key = openstack_compute_keypair_v2.key.private_key project_name = data.openstack_identity_auth_scope_v3.scope.project_name cluster_name = var.cluster_name - node_name = format("%s-worker-%02d", var.cluster_name, count.index + 1) + node_name = local.worker[count.index] node_command = rancher2_cluster.kube.cluster_registration_token.0.node_command node_options = "--worker" })) diff --git a/terraform/modules/rke1/variables.tf b/terraform/modules/rke1/variables.tf index 3c580740d07c731f1257c1cf86042a0c5cd3b956..82491a9e1eb2b0d8fa6ba4745348c5a46e183472 100644 --- a/terraform/modules/rke1/variables.tf +++ b/terraform/modules/rke1/variables.tf @@ -130,6 +130,12 @@ variable "openstack_ssh_key" { # OPENSTACK NODES # ---------------------------------------------------------------------- +variable "old_hostnames" { + type = bool + description = "should old hostname be used (base 0)" + default = false +} + variable "os" { type = string description = "Base image to use for the OS"