diff --git a/defaults.inc b/defaults.inc index e6a4be09..69390cfa 100755 --- a/defaults.inc +++ b/defaults.inc @@ -6,7 +6,7 @@ WEBHOSTS=10.5.10.120,10.5.10.121 PRIMARYHOST=10.5.10.51 NODESERVICES=mysql,nginx,gitea,powerdns-admin,haproxy,keepalived,maxscale,postgresql NODESERVICES_CHECK=mysql,haproxy,keepalived,maxscale -WEBSERVICES_CHECK=nginx,gitea,haproxy +WEBSERVICES_CHECK=nginx,gitea,haproxy,keepalived noheader=' service status-check nightlyrenew backup report check checkcerts gitea ' CERT_DAEMON='/usr/bin/certbot' FOLDER=/opt/idssys/nodemgmt diff --git a/nodemgmt-scripts.sh b/nodemgmt-scripts.sh index 65a87f90..5bbdd301 100755 --- a/nodemgmt-scripts.sh +++ b/nodemgmt-scripts.sh @@ -1451,6 +1451,55 @@ HAPROXY-CONFIG() { echo -e "${idsCL[Green]}HAProxy Config Files have been created.${idsCL[Default]}" echo "" } + +KEEPALIVE-CONFIG() { + echo -e "${idsCL[Yellow]}Creating Keepalive Config Files${idsCL[Default]}" + DIVIDER false yellow + if [[ "${NODESERVICES_CHECK}" = *"keepalive"* ]]; then + nid=1 + for nip in "${NODE_HOSTS[@]}"; do + if [[ $(/sbin/ip -o -4 addr list ens192 | awk '{print $4}' | cut -d/ -f1) == *"${nip}"* ]]; then + nip='localhost ' + NCMD='' + else + NCMD="ssh root@${nip}" + fi + echo -en "Creating File on iDS-MySQL${nid} ($nip)... ${idsCL[Default]}" + + ${NCMD} "nodemgmt update q" + ${NCMD} "rm -f /etc/keepalived/keepalived.conf" + ${NCMD} "sed -e 's;%NIP%;${nip};g' ${FOLDER}/templates/keepalived.config > /etc/keepalived/keepalived.conf" + + echo -e "${idsCL[Green]}COMPLETE${idsCL[Default]}" + nid=`expr $nid + 1` + done + echo + fi + if [[ "${WEBSERVICES_CHECK}" = *"keepalive"* ]]; then + nid=1 + for nip in "${WEB_HOSTS[@]}"; do + if [[ $(/sbin/ip -o -4 addr list ens192 | awk '{print $4}' | cut -d/ -f1) == *"${nip}"* ]]; then + nip='localhost ' + NCMD='' + else + NCMD="ssh root@${nip}" + fi + echo -en "Creating File on iDS-Webserver${nid} ($nip)... ${idsCL[Default]}" + + ${NCMD} "nodemgmt update q" + ${NCMD} "rm -f /etc/keepalived/keepalived.conf" + ${NCMD} "sed -e 's;%NIP%;${nip};g' ${FOLDER}/templates/keepalived.config > /etc/keepalived/keepalived.conf" + + echo -e "${idsCL[Green]}COMPLETE${idsCL[Default]}" + nid=`expr $nid + 1` + done + fi + SERVICE keepalived reload + echo "" + echo -e "${idsCL[Green]}Keepalive Config Files have been created.${idsCL[Default]}" + echo "" +} + NODEUPDATE() { echo -e "${idsCL[LightGreen]}Updating All Nodes and Webservers${idsCL[Default]}" echo -e "${idsCL[LightGreen]}-------------------------------------------${idsCL[Default]}"