From aee983ff43655771a9102592a284d0b0a29ad89f Mon Sep 17 00:00:00 2001 From: "Kaleb S. KEITHLEY" Date: Wed, 5 Aug 2015 11:16:34 -0400 Subject: common-ha: delete virt-IP entry of deleted node Avoid accumulating invalid/defunct virtual IP entries in the HA config file. use correct 'clean' name when adding a node and its virtual IP Also fix a nit in the sample HA config file Change-Id: I2b7ca279f6390ee34b4e0689039eb7d846ed7e34 BUG: 1250601 Signed-off-by: Kaleb S. KEITHLEY Reviewed-on: http://review.gluster.org/11841 Tested-by: NetBSD Build System Tested-by: Gluster Build System Reviewed-by: Meghana M Reviewed-by: soumya k --- extras/ganesha/scripts/ganesha-ha.sh | 17 ++++++++++++++--- 1 file changed, 14 insertions(+), 3 deletions(-) (limited to 'extras/ganesha/scripts') diff --git a/extras/ganesha/scripts/ganesha-ha.sh b/extras/ganesha/scripts/ganesha-ha.sh index 9c82c091304..37b90e4718a 100644 --- a/extras/ganesha/scripts/ganesha-ha.sh +++ b/extras/ganesha/scripts/ganesha-ha.sh @@ -107,6 +107,7 @@ ${SECRET_PEM} root@${new_node} "$SERVICE_MAN nfs-ganesha ${action}" fi } + check_cluster_exists() { local name=${1} @@ -781,6 +782,16 @@ deletenode_delete_resources() } +deletenode_update_haconfig() +{ + local name="VIP_${1}" + local clean_name=${name//[-.]/_} + + ha_servers=$(echo ${HA_SERVERS} | sed -e "s/ /,/") + sed -i -e "s/^HA_CLUSTER_NODES=.*$/HA_CLUSTER_NODES=\"${ha_servers// /,}\"/" -e "s/^${clean_name}=.*$//" -e "/^$/d" ${HA_CONFDIR}/ganesha-ha.conf +} + + setup_state_volume() { local mnt=${HA_VOL_MNT} @@ -938,7 +949,8 @@ main() #from the entries in the ganesha-ha.conf file. Adding the #newly added node to the file so that the resources specfic #to this node is correctly recreated in the future. - echo "VIP_$node=\"$vip\"" >> ${HA_CONFDIR}/ganesha-ha.conf + clean_node=${node//[-.]/_} + echo "VIP_$clean_node=\"${vip}\"" >> ${HA_CONFDIR}/ganesha-ha.conf NEW_NODES="$HA_CLUSTER_NODES,$node" @@ -963,8 +975,7 @@ $HA_CONFDIR/ganesha-ha.conf logger "warning: pcs cluster node remove ${node} failed" fi - ha_servers=$(echo ${HA_SERVERS} | sed -e "s/ /,/") - sed -i "s/^HA_CLUSTER_NODES=.*$/HA_CLUSTER_NODES=\"${ha_servers// /,}\"/" ${HA_CONFDIR}/ganesha-ha.conf + deletenode_update_haconfig ${node} setup_copy_config ${HA_SERVERS} -- cgit