Update nodemgmt-scripts.sh

This commit is contained in:
2023-06-23 22:44:21 -05:00
parent c22f52d0e4
commit c7de73c522

View File

@@ -727,9 +727,9 @@ HAPROXY-CONFIG() {
} }
SINGLE_SERVER_SERVICE_CHECK(){ SINGLE_SERVER_SERVICE_CHECK(){
servicestocheck=${1^^}_SINGLESRVR_SERVICES servicestocheck=${1^^}_SINGLESRVR_SERVICES[@]
dockerstocheck=${1^^}_SINGLESRVR_DOCKERS dockerstocheck=${1^^}_SINGLESRVR_DOCKERS[@]
hosts=${1^^}_HOSTS hosts=${1^^}_HOSTS[@]
if [ "${!servicestocheck}" != "" ] || [ "${!dockerstocheck}" != "" ]; then if [ "${!servicestocheck}" != "" ] || [ "${!dockerstocheck}" != "" ]; then
local_ips=$(ip addr show $(ip route | awk '/default/ { print $5 }') | grep "inet" | awk '/inet/ {print $2}' | cut -d'/' -f1); 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 sleep 5s
fi fi
if [ -f /mnt/web-data/mounted ]; then if [ -f /mnt/web-data/mounted ]; then
for stc in "${!servicestocheck[@]}"; do for stc in "${!servicestocheck}"; do
echo "stc: $stc" echo "stc: $stc"
if [ "$(systemctl is-active ${stc}.service)" != "active" ]; then 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" 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} 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" [ "${stc}" = "pdnsadmin" ] && stc="pdnsadmin.socket pdnsadmin.service"
for nip in "${!hosts[@]}"; do for nip in "${!hosts}"; do
if [[ "${local_ip}" != *"${nip}"* ]]; then if [[ "${local_ip}" != *"${nip}"* ]]; then
ssh root@${nip} /bin/systemctl stop ${stc} ssh root@${nip} /bin/systemctl stop ${stc}
fi fi
@@ -756,17 +756,17 @@ SINGLE_SERVER_SERVICE_CHECK(){
/bin/systemctl start ${stc} & /bin/systemctl start ${stc} &
fi fi
done done
for docker in "${!dockerstocheck[@]}"; do for docker in "${!dockerstocheck}"; do
echo "docker: $docker" echo "docker: $docker"
for nip in "${!hosts[@]}"; do for nip in "${!hosts}"; do
if [[ "${local_ip}" = *"${nip}"* ]]; then if [[ "${local_ip}" = *"${nip}"* ]]; then
[ ! "$(/usr/bin/docker ps -q -f name=${docker})" ] && /usr/bin/docker start ${docker} & >/dev/null 2>&1 [ ! "$(/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 [ "${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 else
[ "$(ssh root@${nip} /usr/bin/docker ps -q -f name=${docker})" ] && ssh root@${nip} /usr/bin/docker stop ${docker} & >/dev/null 2>&1 [ "$(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 [ "${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 fi
done done
done done
@@ -774,12 +774,11 @@ SINGLE_SERVER_SERVICE_CHECK(){
else else
for stc in "${!servicestocheck[@]}"; do for stc in "${!servicestocheck}"; do
[ "${stc}" = "pdnsadmin" ] && stc="pdnsadmin.socket pdnsadmin.service" [ "${stc}" = "pdnsadmin" ] && stc="pdnsadmin.socket pdnsadmin.service"
/bin/systemctl stop ${stc} & /bin/systemctl stop ${stc} &
done done
for docker in "${!dockerstocheck[@]}"; do for docker in "${!dockerstocheck}"; do
# echo "DOCKER: $docker"
[ "$(/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})" ] && /usr/bin/docker stop ${docker} & >/dev/null 2>&1
# [ "$(/usr/bin/docker ps -q -f name=${docker})" ] && echo "stopping" || echo "already stopped" # [ "$(/usr/bin/docker ps -q -f name=${docker})" ] && echo "stopping" || echo "already stopped"
done done