Update nodemgmt-scripts.sh

This commit is contained in:
2019-02-07 10:05:36 -06:00
parent bb0b96e2be
commit 4190bbc70e

View File

@@ -66,7 +66,34 @@ STATUS() {
if [[ $(/sbin/ip -o -4 addr list ens192 | awk '{print $4}' | cut -d/ -f1) != *"${nip}"* ]]; then
echo -e "Node hostname: ${idsST[Bold]}${idsCL[LightCyan]}iDS-Node${nid} (${nip})${idsST[Reset]}${idsCL[Default]}"
DIVIDER false green
for rcheck in "${!REPL_CHECKS[@]}"
do
rm -f ${FOLDER}/test.repl
daterun=`date +%Y-%m-%d-%H-%M`
echo -e "iDS-Node${nid} (${nip})\n${daterun}" > ${FOLDER}/test.repl
yes | cp -rfH ${FOLDER}/test.repl ${REPL_CHECKS[${rcheck}]}/test.repl
declare -i cw; declare -i spc1; declare -i c
c=0; cw=20; spc=''
spc1=${cw}-${#SUBJECT}
until [ $c = ${spc1} ]; do spc="${spc} "; c=`expr $c + 1`; done
echo -en "${REPL_DESC[${rcheck}]}${spc}: "
checked=false
until [ "${checked}" = "" ]; do
checked=`ssh root@${nip} "cat ${REPL_CHECKS[${rcheck}]}/test.repl" | diff - ${REPL_CHECKS[${rcheck}]}/test.repl`
if [ "`date +%s`" -gt "$timeout" ]; then
if [ "${STATUS_CHECK_EMAIL}" != "" ]; then
echo "Timeout occurred in waiting for replication between nodes." | mail -s "Status-Check" ${STATUS_CHECK_EMAIL}
fi
timeout=true
break
fi
done
if [ "${timeout}" = "true" ]; then
echo -e "${idsCL[Red]}Timeout${idsCL[Default]}"
else
echo -e "${idsCL[Green]}Good${idsCL[Default]}"
fi
done
fi
echo
nid=`expr $nid + 1`
@@ -145,10 +172,10 @@ NEWCERT(){
if [ -f /etc/letsencrypt/live/${MAIN_CERT}/cert.pem ]; then
do_with_root chown -R root:letsencrypt /etc/letsencrypt
do_with_root chmod -R 6775 /etc/letsencrypt
# rm -f /opt/idssys/nodemgmt/cert-request.lastrun
# rm -f ${FOLDER}/cert-request.lastrun
# daterun=`date +%Y-%m-%d-%H-%M`
# echo -e "${NEW_CERT}\n${daterun}" > /opt/idssys/nodemgmt/cert-request.lastrun
# yes | cp -rfH /opt/idssys/nodemgmt/cert-request.lastrun /etc/letsencrypt/cert-request.lastrun
# echo -e "${NEW_CERT}\n${daterun}" > ${FOLDER}/cert-request.lastrun
# yes | cp -rfH ${FOLDER}/cert-request.lastrun /etc/letsencrypt/cert-request.lastrun
# DIVIDER true
# echo -en "${idsCL[LightYellow]}Waiting for certificate replication between the nodes... ${idsCL[Default]}"
# checked=false
@@ -197,10 +224,10 @@ NEWCERT(){
CERTRENEW(){
echo -e "${idsCL[LightGreen]}Renewing Certificates...${idsCL[Default]}"
echo
do_with_root $CERT_DAEMON renew --webroot -w /var/www/html 2>&1 | tee /opt/idssys/nodemgmt/cert-renewal.lastrun
do_with_root chown -R root:letsencrypt /etc/letsencrypt 2>&1 | tee -a /opt/idssys/nodemgmt/cert-renewal.lastrun
do_with_root chmod -R 6775 /etc/letsencrypt 2>&1 | tee -a /opt/idssys/nodemgmt/cert-renewal.lastrun
yes | cp -rfH /opt/idssys/nodemgmt/cert-renewal.lastrun /etc/letsencrypt/cert-renewal.lastrun
do_with_root $CERT_DAEMON renew --webroot -w /var/www/html 2>&1 | tee ${FOLDER}/cert-renewal.lastrun
do_with_root chown -R root:letsencrypt /etc/letsencrypt 2>&1 | tee -a ${FOLDER}/cert-renewal.lastrun
do_with_root chmod -R 6775 /etc/letsencrypt 2>&1 | tee -a ${FOLDER}/cert-renewal.lastrun
yes | cp -rfH ${FOLDER}/cert-renewal.lastrun /etc/letsencrypt/cert-renewal.lastrun
daterun=`date +%Y-%m-%d-%H-%M`
echo -e "${daterun}" >> /etc/letsencrypt/cert-renewal.lastrun
DIVIDER true
@@ -221,7 +248,9 @@ CERTRENEW(){
if [ "`date +%s`" -gt "$timeout" ]; then
echo -e "${idsCL[Red]}Timeout${idsCL[Default]}"
timeout=true
echo "Timeout occurred in waiting for replication between nodes." | mail -s "Cert-Renewal" ${STATUS_CHECK_EMAIL}
if [ "${STATUS_CHECK_EMAIL}" != "" ]; then
echo "Timeout occurred in waiting for replication between nodes." | mail -s "Status-Check" ${STATUS_CHECK_EMAIL}
fi
break
fi
done
@@ -229,7 +258,7 @@ CERTRENEW(){
echo -e "${idsCL[Green]}Completed${idsCL[Default]}"
fi
echo
SERVICE nginx reload 2>&1 | tee -a /opt/idssys/nodemgmt/cert-renewal.lastrun
SERVICE nginx reload 2>&1 | tee -a ${FOLDER}/cert-renewal.lastrun
echo -e "${idsCL[LightGreen]}The certificates have been renewed.${idsCL[Default]}"
echo ""
if [ -z $action ] || [ "${action}" = "gui" ]; then
@@ -238,11 +267,11 @@ CERTRENEW(){
fi
}
NIGHTLYRENEW(){
rm -f /opt/idssys/nodemgmt/cert-renewal.lastrun
do_with_root $CERT_DAEMON renew --webroot -w /var/www/html &>> /opt/idssys/nodemgmt/cert-renewal.lastrun
do_with_root chown -R root:letsencrypt /etc/letsencrypt &>> /opt/idssys/nodemgmt/cert-renewal.lastrun
do_with_root chmod -R 6775 /etc/letsencrypt &>> /opt/idssys/nodemgmt/cert-renewal.lastrun
yes | cp -rfH /opt/idssys/nodemgmt/cert-renewal.lastrun /etc/letsencrypt/cert-renewal.lastrun
rm -f ${FOLDER}/cert-renewal.lastrun
do_with_root $CERT_DAEMON renew --webroot -w /var/www/html &>> ${FOLDER}/cert-renewal.lastrun
do_with_root chown -R root:letsencrypt /etc/letsencrypt &>> ${FOLDER}/cert-renewal.lastrun
do_with_root chmod -R 6775 /etc/letsencrypt &>> ${FOLDER}/cert-renewal.lastrun
yes | cp -rfH ${FOLDER}/cert-renewal.lastrun /etc/letsencrypt/cert-renewal.lastrun
daterun=`date +%Y-%m-%d-%H-%M`
echo -e "${daterun}" >> /etc/letsencrypt/cert-renewal.lastrun
checked=false
@@ -258,12 +287,12 @@ NIGHTLYRENEW(){
fi
done
checked=${tchecked}
if [ "`date +%s`" -gt "$timeout" ]; then
if [ "`date +%s`" -gt "$timeout" ] && [ "${STATUS_CHECK_EMAIL}" != "" ]; then
echo "Timeout occurred in waiting for replication between nodes." | mail -s "Nightly-Cert-Renewal" ${STATUS_CHECK_EMAIL}
break
fi
done
SERVICE nginx reload &>> /opt/idssys/nodemgmt/cert-renewal.lastrun
SERVICE nginx reload &>> ${FOLDER}/cert-renewal.lastrun
}
LISTCERTS(){
@@ -666,11 +695,11 @@ NEWSITE(){
NEWCERT ${NEW_SITE}
fi
rm -f /opt/idssys/nodemgmt/new-site.lastrun
rm -f ${FOLDER}/new-site.lastrun
daterun=`date +%Y-%m-%d-%H-%M`
echo -e "${NEW_SITE}\n${daterun}" > /opt/idssys/nodemgmt/new-site.lastrun
yes | cp -rfH /opt/idssys/nodemgmt/new-site.lastrun /etc/nginx/new-site.lastrun
yes | cp -rfH /opt/idssys/nodemgmt/new-site.lastrun /var/www/new-site.lastrun
echo -e "${NEW_SITE}\n${daterun}" > ${FOLDER}/new-site.lastrun
yes | cp -rfH ${FOLDER}/new-site.lastrun /etc/nginx/new-site.lastrun
yes | cp -rfH ${FOLDER}/new-site.lastrun /var/www/new-site.lastrun
daterun=`date +%Y-%m-%d-%H-%M`
echo -e "${daterun}" >> /etc/nginx/new-site.lastrun
DIVIDER true
@@ -692,7 +721,9 @@ NEWSITE(){
if [ "`date +%s`" -gt "$timeout" ]; then
echo -e "${idsCL[Red]}Timeout${idsCL[Default]}"
timeout=true
echo "Timeout occurred in waiting for replication between nodes." | mail -s "New-Site" ${STATUS_CHECK_EMAIL}
if [ "${STATUS_CHECK_EMAIL}" != "" ]; then
echo "Timeout occurred in waiting for replication between nodes." | mail -s "Status-Check" ${STATUS_CHECK_EMAIL}
fi
break
fi
done