update
This commit is contained in:
@@ -413,6 +413,46 @@ STATUS(){
|
||||
echo -e "${idsCL[Yellow]} Replication Status Between the Primary and Secondary Nodes${idsCL[Default]}"
|
||||
DIVIDER; echo -e "${idsST[Reset]}"
|
||||
fi
|
||||
|
||||
|
||||
for NTYPE in "${NODE_TYPES[@]}"; do
|
||||
PH=${NTYPE}_HOSTS[0]
|
||||
PH_CMD="ssh root@${!PH}"
|
||||
var=${NTYPE}_REPL_CHECK[@]
|
||||
if [ ! -z ${!var+x} ]; then
|
||||
nid=1
|
||||
var=${NTYPE}_HOSTS[@]
|
||||
for nip in "${!var}"; do
|
||||
if [[ $(/sbin/ip -o -4 addr list eth0 | awk '{print $4}' | cut -d/ -f1) != *"${nip}"* ]] && [ "${nip}" != "${!PH}" ]; then
|
||||
if [ ! -f ${FOLDER}/${!PH}.down ] && [ ! -f ${FOLDER}/${nip}.down ]; then
|
||||
var2=${NTYPE}_REPL_CHECK[@]
|
||||
for rcheck in "${!var2}"; do
|
||||
if [ "${1}" != "check" ]; then
|
||||
timeout=`date --date='1 minutes' +%s`
|
||||
else
|
||||
timeout=`date --date='2 minutes' +%s`
|
||||
fi
|
||||
checked=false
|
||||
until [ "${checked}" == "" ]; do
|
||||
if [ "${PH_CMD}" == "" ]; then
|
||||
ssh -q root@${nip} [[ -f ${REPL_CHECKS[${rcheck}]}/test.repl ]] && checked=`ssh root@${nip} "cat ${REPL_CHECKS[${rcheck}]}/test.repl" | diff - ${REPL_CHECKS[${rcheck}]}/test.repl`
|
||||
else
|
||||
ssh -q root@${nip} [[ -f ${REPL_CHECKS[${rcheck}]}/test.repl ]] && checked="`${PH_CMD} \"ssh root@${nip} \"cat ${REPL_CHECKS[${rcheck}]}/test.repl\" | diff - ${REPL_CHECKS[${rcheck}]}/test.repl\"`"
|
||||
fi
|
||||
[ "`date +%s`" -gt "${timeout}" ] && timeout=true && break
|
||||
done
|
||||
[ "${timeout}" == "true" ] && touch ${TMPFOLDER}/repl.${rcheck}.${nip}.timeout || touch ${TMPFOLDER}/repl.${rcheck}.${nip}.good
|
||||
done
|
||||
|
||||
fi
|
||||
fi
|
||||
nid=`expr $nid + 1`
|
||||
done
|
||||
fi
|
||||
done
|
||||
|
||||
|
||||
|
||||
# replcheckstart=`date +%s`
|
||||
# echo "$(date) - STARTING REPL CHECK - $(SHOW_TIME $(expr `date +%s` - $replstart) s)" >> ${FOLDER}/log.repl
|
||||
for NTYPE in "${NODE_TYPES[@]}"; do
|
||||
@@ -657,6 +697,14 @@ STATUS(){
|
||||
|
||||
|
||||
REPLCHECK(){
|
||||
nip=
|
||||
rcheck=
|
||||
PH_CMD=
|
||||
if [ "${1}" != "check" ]; then
|
||||
timeout=`date --date='1 minutes' +%s`
|
||||
else
|
||||
timeout=`date --date='2 minutes' +%s`
|
||||
fi
|
||||
checked=false
|
||||
until [ "${checked}" == "" ]; do
|
||||
if [ "${PH_CMD}" == "" ]; then
|
||||
@@ -664,26 +712,7 @@ REPLCHECK(){
|
||||
else
|
||||
ssh -q root@${nip} [[ -f ${REPL_CHECKS[${rcheck}]}/test.repl ]] && checked="`${PH_CMD} \"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
|
||||
[ "`date +%s`" -gt "${timeout}" ] && timeout=true && break
|
||||
done
|
||||
if [ "${timeout}" == "true" ]; then
|
||||
[ "${ST_ACTION}" != "check" ] && echo -e "${idsCL[Red]}Timeout${idsCL[Default]} - ${rrmsg}"
|
||||
if [ ! -f ${FOLDER}/${nip}-${rcheck}.down ]; then
|
||||
touch ${FOLDER}/${nip}-${rcheck}.down
|
||||
SENDNOTICE "Repl-Timeout-'${NM_NODETYPES[$NTYPE]}-Node${nid}'" "${REPL_DESC[${rcheck}]} (${REPL_CHECKS[${rcheck}]})" 1
|
||||
echo "$(date) - ${nip} - ${NM_NODETYPES[$NTYPE]}-Node${nid} - (${REPL_DESC[${rcheck}]}) Replicated folder timeout, it is not syncing" >> ${LOGFILE}
|
||||
fi
|
||||
# echo "$(date) - TIMEOUT - ${rcheck} - ${rrmsg}" >> ${FOLDER}/log.repl
|
||||
else
|
||||
[ "${ST_ACTION}" != "check" ] && echo -e "${idsCL[Green]}Good${idsCL[Default]} - ${rrmsg}"
|
||||
if [ -f ${FOLDER}/${nip}-${rcheck}.down ]; then
|
||||
rm -f ${FOLDER}/${nip}-${rcheck}.down
|
||||
SENDNOTICE "Repl-Timeout-'${NM_NODETYPES[$NTYPE]}-Node${nid}'" "Replicated folder is back up!\n${REPL_DESC[${rcheck}]} (${REPL_CHECKS[${rcheck}]})"
|
||||
echo "$(date) - ${nip} - ${NM_NODETYPES[$NTYPE]}-Node${nid} - (${REPL_DESC[${rcheck}]}) Replicated folder is back up" >> ${LOGFILE}
|
||||
fi
|
||||
# echo "$(date) - SYNCED - ${rcheck} - ${rrmsg}" >> ${FOLDER}/log.repl
|
||||
fi
|
||||
[ "${timeout}" == "true" ] && touch ${TMPFOLDER}/repl.${rcheck}.${nip}.timeout || touch ${TMPFOLDER}/repl.${rcheck}.${nip}.good
|
||||
}
|
||||
Reference in New Issue
Block a user