Update nodemgmt-scripts.sh

This commit is contained in:
2019-02-26 23:16:20 -06:00
parent 0cf43c29e8
commit e06736f0a7

View File

@@ -37,7 +37,7 @@ STATUS(){
echo
fi
if [ ! -z ${LOCAL_SERVICES+x} ];
then NHCMD="ssh root@${PRIMARYHOST}"
then NHCMD="ssh root@${NODE_HOSTS[0]}"
else NHCMD=''
fi
for rcheck in "${REPL_CHECK[@]}"; do
@@ -307,7 +307,7 @@ STATUS(){
fi
nid=1
for nip in "${NODE_HOSTS[@]}"; do
if [ "${nip}" = "${PRIMARYHOST}" ] && [ ! -z ${LOCAL_SERVICES+x} ]; then isreplhost=true; else isreplhost=false; fi
if [ "${nip}" = "${NODE_HOSTS[0]}" ] && [ ! -z ${LOCAL_SERVICES+x} ]; then isreplhost=true; else isreplhost=false; fi
if [[ $(/sbin/ip -o -4 addr list ens192 | awk '{print $4}' | cut -d/ -f1) != *"${nip}"* ]] && [ "${isreplhost}" = "false" ]; then
if [ "${ST_ACTION}" != "check" ]; then
echo -e " ${idsST[Bold]}${idsCL[LightCyan]}iDS-MySQL${nid} (${nip})${idsST[Reset]}${idsCL[Default]}"
@@ -319,7 +319,7 @@ STATUS(){
rm -f ${FOLDER}/${nip}.down
echo "iDS-MySQL${nid} is back UP!" | mail -s "iDS-MySQL${nid}-${nip}-UP" ${STATUS_CHECK_EMAIL}
fi
for rcheck in "${REPL_CHECK[@]}"; do
for rcheck in "${NODE_REPL_CHECK[@]}"; do
if [ "${ST_ACTION}" != "check" ]; then
c=0; cw=22; spc=''
spc1=${cw}-${#REPL_DESC[${rcheck}]}
@@ -371,6 +371,72 @@ STATUS(){
fi
nid=`expr $nid + 1`
done
nid=1
for nip in "${WEB_HOSTS[@]}"; do
if [ "${nip}" = "${WEB_HOSTS[0]}" ] && [ ! -z ${LOCAL_SERVICES+x} ]; then isreplhost=true; else isreplhost=false; fi
if [[ $(/sbin/ip -o -4 addr list ens192 | awk '{print $4}' | cut -d/ -f1) != *"${nip}"* ]] && [ "${isreplhost}" = "false" ]; then
if [ "${ST_ACTION}" != "check" ]; then
echo -e " ${idsST[Bold]}${idsCL[LightCyan]}iDS-Webserver${nid} (${nip})${idsST[Reset]}${idsCL[Default]}"
DIVIDER false green
fi
checkhost=$(CHECK_HOST ${nip})
if [ "${checkhost}" != "false" ]; then
if [ -f ${FOLDER}/${nip}.down ]; then
rm -f ${FOLDER}/${nip}.down
echo "iDS-Webserver${nid} is back UP!" | mail -s "iDS-Webserver${nid}-${nip}-UP" ${STATUS_CHECK_EMAIL}
fi
for rcheck in "${WEB_REPL_CHECK[@]}"; do
if [ "${ST_ACTION}" != "check" ]; then
c=0; cw=22; spc=''
spc1=${cw}-${#REPL_DESC[${rcheck}]}
timeout=`date --date='20 seconds' +%s`
until [ $c = ${spc1} ]; do spc="${spc} "; c=`expr $c + 1`; done
echo -en " ${REPL_DESC[${rcheck}]}${spc}: "
fi
checked=false
until [ "${checked}" = "" ]; do
if [ "${NHCMD}" = "" ]; then
checked=`ssh root@${nip} "cat ${REPL_CHECKS[${rcheck}]}/test.repl" | diff - ${REPL_CHECKS[${rcheck}]}/test.repl`
else
checked="`${NHCMD} \"ssh root@${nip} \"cat ${REPL_CHECKS[${rcheck}]}/test.repl\" | diff - ${REPL_CHECKS[${rcheck}]}/test.repl\"`"
fi
if [ "`date +%s`" -gt "$timeout" ]; then
timeout=true
break
fi
done
if [ "${timeout}" = "true" ]; then
if [ "${ST_ACTION}" != "check" ]; then
echo -e "${idsCL[Red]}Timeout${idsCL[Default]}"
fi
if [ ! -f ${FOLDER}/${nip}-${rcheck}.down ]; then
touch ${FOLDER}/${nip}-${rcheck}.down
echo "${REPL_DESC[${rcheck}]} (${REPL_CHECKS[${rcheck}]})" | mail -s "Repl-Timeout-'iDS-Webserver${nid}'" ${STATUS_CHECK_EMAIL}
fi
else
if [ "${ST_ACTION}" != "check" ]; then
echo -e "${idsCL[Green]}Good${idsCL[Default]}"
fi
if [ -f ${FOLDER}/${nip}-${rcheck}.down ]; then
rm -f ${FOLDER}/${nip}-${rcheck}.down
echo "Replicated folder is back up!\n${REPL_DESC[${rcheck}]} (${REPL_CHECKS[${rcheck}]})" | mail -s "Repl-Timeout-'iDS-Webserver${nid}'" ${STATUS_CHECK_EMAIL}
fi
fi
done
else
if [ "${ST_ACTION}" != "check" ]; then
echo -e "${idsCL[Red]}Node is Down!${idsCL[Default]}"
fi
if [ ! -f ${FOLDER}/${nip}.down ]; then
touch ${FOLDER}/${nip}.down
echo "iDS-Webserver${nid} is down" | mail -s "iDS-Webserver${nid}-${nip}-DOWN" ${STATUS_CHECK_EMAIL}
fi
fi
if [ "${ST_ACTION}" != "check" ]; then echo; fi
fi
nid=`expr $nid + 1`
done
fi
if [ "${ST_ACTION}" != "check" ]; then
@@ -388,7 +454,7 @@ STATUS(){
# STATUS-CHECK(){
# start=`date +%s`
# if [ "${STATUS_CHECK_EMAIL}" != "" ]; then
# if [ ! -z ${LOCAL_SERVICES+x} ]; then NHCMD="ssh root@${PRIMARYHOST}"
# if [ ! -z ${LOCAL_SERVICES+x} ]; then NHCMD="ssh root@${NODE_HOSTS[0]}"
# else NHCMD=''; fi
# # for rcheck in "${REPL_CHECK[@]}"; do
# # ${NHCMD} rm -f ${FOLDER}/test.repl
@@ -459,7 +525,7 @@ STATUS(){
# ##REPLICATION CHECK
# # nid=1
# # for nip in "${NODE_HOSTS[@]}"; do
# # if [ "${nip}" = "${PRIMARYHOST}" ] && [ ! -z ${LOCAL_SERVICES+x} ]; then isreplhost=true; else isreplhost=false; fi
# # if [ "${nip}" = "${NODE_HOSTS[0]}" ] && [ ! -z ${LOCAL_SERVICES+x} ]; then isreplhost=true; else isreplhost=false; fi
# # if [[ $(/sbin/ip -o -4 addr list ens192 | awk '{print $4}' | cut -d/ -f1) != *"${nip}"* ]] && [ "${isreplhost}" = "false" ]; then
# # checkhost=$(CHECK_HOST ${nip})
# # if [ "${checkhost}" != "false" ]; then
@@ -731,7 +797,7 @@ LISTCERTS(){
done
unset IFS
if [ ! -z ${LOCAL_SERVICES+x} ]; then
NCMD="ssh root@${PRIMARYHOST}"
NCMD="ssh root@${NODE_HOSTS[0]}"
${NCMD} rm -f /tmp/ssllist
${NCMD} 'for certdir in /etc/letsencrypt/live/*/ ; do echo $certdir; done' > /tmp/ssllist
else