diff --git a/configs/k8s_ha/check_apiserver.sh b/configs/k8s_ha/check_apiserver.sh old mode 100644 new mode 100755 diff --git a/configs/k8s_ha/keepalived_backup.conf b/configs/k8s_ha/keepalived_backup.conf index e10ae22e4..57fe34a3e 100644 --- a/configs/k8s_ha/keepalived_backup.conf +++ b/configs/k8s_ha/keepalived_backup.conf @@ -13,7 +13,7 @@ vrrp_script check_apiserver { vrrp_instance VI_1 { state BACKUP - interface enp4s0f1 + interface $INTERFACE_NAME virtual_router_id 51 priority 101 authentication { diff --git a/configs/k8s_ha/keepalived_master.conf b/configs/k8s_ha/keepalived_master.conf index 9a27196be..82d42d1d9 100644 --- a/configs/k8s_ha/keepalived_master.conf +++ b/configs/k8s_ha/keepalived_master.conf @@ -13,7 +13,7 @@ vrrp_script check_apiserver { vrrp_instance VI_1 { state MASTER - interface enp4s0f1 + interface $INTERFACE_NAME virtual_router_id 51 priority 101 authentication { diff --git a/configs/k8s_ha/substitute_interface.sh b/configs/k8s_ha/substitute_interface.sh new file mode 100755 index 000000000..31c53eab1 --- /dev/null +++ b/configs/k8s_ha/substitute_interface.sh @@ -0,0 +1,10 @@ +#!/bin/bash + +readonly DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" > /dev/null 2>&1 && pwd)" + +export INTERFACE_NAME=$(ifconfig | grep -B1 "10.0.1" | head -n1 | sed 's/:.*//') + +cat $DIR/keepalived_master.conf | envsubst > $DIR/keepalived_master.conff +cat $DIR/keepalived_backup.conf | envsubst > $DIR/keepalived_backup.conff + +echo "Successfully created HA load balancer configuration!" \ No newline at end of file diff --git a/scripts/setup/setup.go b/scripts/setup/setup.go index d5f821d94..2084e0298 100644 --- a/scripts/setup/setup.go +++ b/scripts/setup/setup.go @@ -306,13 +306,18 @@ func SetupSystem(haMode string) error { return err } + _, err = utils.ExecVHiveBashScript("configs/k8s_ha/substitute_interface.sh") + if !utils.CheckErrorWithTagAndMsg(err, "Failed to create HA load balancer !\n") { + return err + } + if haMode == "MASTER" { - err = utils.CopyToDir(path.Join(k8s_ha_path, "keepalived_master.conf"), "/etc/keepalived/keepalived.conf", true) + err = utils.CopyToDir(path.Join(k8s_ha_path, "keepalived_master.conff"), "/etc/keepalived/keepalived.conf", true) if !utils.CheckErrorWithMsg(err, "Failed to copy files to /etc/keepalived/keepalived.conf!\n") { return err } } else { - err = utils.CopyToDir(path.Join(k8s_ha_path, "keepalived_backup.conf"), "/etc/keepalived/keepalived.conf", true) + err = utils.CopyToDir(path.Join(k8s_ha_path, "keepalived_backup.conff"), "/etc/keepalived/keepalived.conf", true) if !utils.CheckErrorWithMsg(err, "Failed to copy files to /etc/keepalived/keepalived.conf!\n") { return err }