diff --git a/modules/install/node_role.sh b/modules/install/node_role.sh index a1390ebd..32806fa4 100644 --- a/modules/install/node_role.sh +++ b/modules/install/node_role.sh @@ -3,7 +3,7 @@ # that is readable by rke2 or k3s if [ $# != 9 ]; then - echo "Usage: node_roles.sh node_index role_order all_role_nodes etcd_only_nodes etcd_cp_nodes etcd_worker_nodes cp_only_nodes cp_worker_nodes product" + echo "Usage: node_roles.sh node_index role_order all_role_nodes etcd_only_nodes etcd_cp_nodes etcd_worker_nodes cp_only_nodes cp_worker_nodes product datastore_type" exit 1 fi @@ -16,6 +16,12 @@ etcd_worker_nodes=$6 cp_only_nodes=$7 cp_worker_nodes=$8 product=$9 +if [ -z $10 ]; then + datastore_type="etcd" +else + datastore_type=$10 +fi +echo "Datastore type: $datastore_type" role_config_yaml_path="/etc/rancher/${product}/config.yaml.d/role_config.yaml" # Set the desired role into an array based on the index @@ -113,11 +119,19 @@ true EOF else -cat << EOF > "${role_config_yaml_path}" + if [[ "$datastore_type" == "etcd" ]] + then + cat << EOF > "${role_config_yaml_path}" node-label: - role-etcd=true - role-control-plane=true - role-worker=true +EOF + else + cat << EOF > "${role_config_yaml_path}" +node-label: + - role-control-plane=true + - role-worker=true EOF cat << EOF > /tmp/.control-plane true diff --git a/modules/k3s/master/instances_server.tf b/modules/k3s/master/instances_server.tf index 36378670..318bb050 100644 --- a/modules/k3s/master/instances_server.tf +++ b/modules/k3s/master/instances_server.tf @@ -87,7 +87,7 @@ resource "aws_instance" "master" { provisioner "remote-exec" { inline = [ "chmod +x /tmp/node_role.sh", - "sudo /tmp/node_role.sh -1 \"${var.role_order}\" ${var.all_role_nodes} ${var.etcd_only_nodes} ${var.etcd_cp_nodes} ${var.etcd_worker_nodes} ${var.cp_only_nodes} ${var.cp_worker_nodes} ${var.product}", + "sudo /tmp/node_role.sh -1 \"${var.role_order}\" ${var.all_role_nodes} ${var.etcd_only_nodes} ${var.etcd_cp_nodes} ${var.etcd_worker_nodes} ${var.cp_only_nodes} ${var.cp_worker_nodes} ${var.product} ${var.datastore_type}", ] } provisioner "file" { @@ -234,7 +234,7 @@ resource "aws_instance" "master2-ha" { provisioner "remote-exec" { inline = [ "chmod +x /tmp/node_role.sh", - "sudo /tmp/node_role.sh ${count.index} \"${var.role_order}\" ${var.all_role_nodes} ${var.etcd_only_nodes} ${var.etcd_cp_nodes} ${var.etcd_worker_nodes} ${var.cp_only_nodes} ${var.cp_worker_nodes} ${var.product}", + "sudo /tmp/node_role.sh ${count.index} \"${var.role_order}\" ${var.all_role_nodes} ${var.etcd_only_nodes} ${var.etcd_cp_nodes} ${var.etcd_worker_nodes} ${var.cp_only_nodes} ${var.cp_worker_nodes} ${var.product} ${var.datastore_type}", ] } provisioner "file" {