From c7de73c522f08d1563f710d14627b575c6e3f8f8 Mon Sep 17 00:00:00 2001 From: David Schroeder Date: Fri, 23 Jun 2023 22:44:21 -0500 Subject: [PATCH] Update nodemgmt-scripts.sh --- nodemgmt-scripts.sh | 23 +++++++++++------------ 1 file changed, 11 insertions(+), 12 deletions(-) diff --git a/nodemgmt-scripts.sh b/nodemgmt-scripts.sh index 5d0166fc..226fee05 100755 --- a/nodemgmt-scripts.sh +++ b/nodemgmt-scripts.sh @@ -727,9 +727,9 @@ HAPROXY-CONFIG() { } SINGLE_SERVER_SERVICE_CHECK(){ - servicestocheck=${1^^}_SINGLESRVR_SERVICES - dockerstocheck=${1^^}_SINGLESRVR_DOCKERS - hosts=${1^^}_HOSTS + servicestocheck=${1^^}_SINGLESRVR_SERVICES[@] + dockerstocheck=${1^^}_SINGLESRVR_DOCKERS[@] + hosts=${1^^}_HOSTS[@] if [ "${!servicestocheck}" != "" ] || [ "${!dockerstocheck}" != "" ]; then local_ips=$(ip addr show $(ip route | awk '/default/ { print $5 }') | grep "inet" | awk '/inet/ {print $2}' | cut -d'/' -f1); @@ -740,14 +740,14 @@ SINGLE_SERVER_SERVICE_CHECK(){ sleep 5s fi if [ -f /mnt/web-data/mounted ]; then - for stc in "${!servicestocheck[@]}"; do + for stc in "${!servicestocheck}"; do echo "stc: $stc" if [ "$(systemctl is-active ${stc}.service)" != "active" ]; then SENDNOTICE "Node-Balancing Notice" "Starting ${stc} on ${NM_NODETYPES["WEB"]}-Node${local_ip: -1} (${local_ip}), stopping on the other Nodes" echo "$(date) - ${NM_NODETYPES["WEB"]}-Node${local_ip: -1} - Starting ${stc} on ${local_ip}, stopping on the other Nodes" >> ${LOGFILE} [ "${stc}" = "pdnsadmin" ] && stc="pdnsadmin.socket pdnsadmin.service" - for nip in "${!hosts[@]}"; do + for nip in "${!hosts}"; do if [[ "${local_ip}" != *"${nip}"* ]]; then ssh root@${nip} /bin/systemctl stop ${stc} fi @@ -756,17 +756,17 @@ SINGLE_SERVER_SERVICE_CHECK(){ /bin/systemctl start ${stc} & fi done - for docker in "${!dockerstocheck[@]}"; do + for docker in "${!dockerstocheck}"; do echo "docker: $docker" - for nip in "${!hosts[@]}"; do + for nip in "${!hosts}"; do if [[ "${local_ip}" = *"${nip}"* ]]; then [ ! "$(/usr/bin/docker ps -q -f name=${docker})" ] && /usr/bin/docker start ${docker} & >/dev/null 2>&1 [ "${docker}" == "authelia" ] && [ ! "$(/usr/bin/docker ps -q -f name=${docker}_redis)" ] && /usr/bin/docker start ${docker}_redis & >/dev/null 2>&1 - [ ! "$(/usr/bin/docker ps -q -f name=${docker})" ] && echo "starting local" || echo "already started local" + # [ ! "$(/usr/bin/docker ps -q -f name=${docker})" ] && echo "starting local" || echo "already started local" else [ "$(ssh root@${nip} /usr/bin/docker ps -q -f name=${docker})" ] && ssh root@${nip} /usr/bin/docker stop ${docker} & >/dev/null 2>&1 [ "${docker}" == "authelia" ] && [ "$(ssh root@${nip} /usr/bin/docker ps -q -f name=${docker}_redis)" ] && ssh root@${nip} /usr/bin/docker stop ${docker}_redis & >/dev/null 2>&1 - [ "$(ssh root@${nip} /usr/bin/docker ps -q -f name=${docker})" ] && echo "stopping on $nip" || echo "already stopped on $nip" + # [ "$(ssh root@${nip} /usr/bin/docker ps -q -f name=${docker})" ] && echo "stopping on $nip" || echo "already stopped on $nip" fi done done @@ -774,12 +774,11 @@ SINGLE_SERVER_SERVICE_CHECK(){ else - for stc in "${!servicestocheck[@]}"; do + for stc in "${!servicestocheck}"; do [ "${stc}" = "pdnsadmin" ] && stc="pdnsadmin.socket pdnsadmin.service" /bin/systemctl stop ${stc} & done - for docker in "${!dockerstocheck[@]}"; do - # echo "DOCKER: $docker" + for docker in "${!dockerstocheck}"; do [ "$(/usr/bin/docker ps -q -f name=${docker})" ] && /usr/bin/docker stop ${docker} & >/dev/null 2>&1 # [ "$(/usr/bin/docker ps -q -f name=${docker})" ] && echo "stopping" || echo "already stopped" done