diff --git a/offsite-power-check.sh b/offsite-power-check.sh index 5703317f..6d8119e1 100755 --- a/offsite-power-check.sh +++ b/offsite-power-check.sh @@ -25,25 +25,8 @@ RENOTIFY_LOWPOWER=10 #minutes PW_OFFSITEHOSTS="10.2.1.11" # PW_OFFSITEHOSTS="10.2.1.11 10.2.1.12" -if [ -f ${PW_TMPFOLDER}/power.offsite.off ]; then - if [ ! -f ${PW_TMPFOLDER}/power.offsite.restored ]; then - touch ${PW_TMPFOLDER}/power.offsite.restored - - elif [ $(expr `date +%s` - $(stat -f %m ${PW_TMPFOLDER}/power.offsite.restored)) -gt 30 ]; then - echo "($(date +'%Y-%m-%d %H:%M:%S')) - ${OFFSITE_VOLTIN}'volts - ${OFFSITE_BATT_CAP}'% Battery - Powering Hosts ON After Power Outage" >> ${PW_LOGFILE} - SENDNOTICE "OFFSITE HOST POWER" "Powering offsite host(s) back ONLINE after power outage" - for host in ${PW_OFFSITEHOSTS}; do - if [ "${TEST}" == "" ] || [ "${TEST}" == "full" ]; then - echo "Powering on after power outage" - echo "ipmitool -I lanplus -H ${host} -U ${PW_ESXI_USER} -P "${PW_ESXI_PASS}" chassis power on" - ipmitool -I lanplus -H ${host} -U ${PW_ESXI_USER} -P "${PW_ESXI_PASS}" chassis power on & - else - echo "TESTMODE: Powering up '${host}'" - fi - done - rm -f ${PW_TMPFOLDER}/power.offsite.* - fi -fi +PW_OFFSITEHOSTS_IDRAC="10.2.1.21" +# PW_OFFSITEHOSTS_IDRAC="10.2.1.21 10.2.1.22" # TEST=true TEST=full @@ -104,24 +87,24 @@ $(date)" rm -f ${PW_TMPFOLDER}/power.offsite.ac.* fi - # if [ -f ${PW_TMPFOLDER}/power.offsite.off ]; then - # if [ ! -f ${PW_TMPFOLDER}/power.offsite.restored ]; then - # touch ${PW_TMPFOLDER}/power.offsite.restored - # - # elif [ $(expr `date +%s` - $(stat -f %m ${PW_TMPFOLDER}/power.offsite.restored)) -gt $(echo "scale=2; ${WAIT_TO_POWER_SERVERS}*60" | bc) ]; then - # echo "($(date +'%Y-%m-%d %H:%M:%S')) - ${OFFSITE_VOLTIN}'volts - ${OFFSITE_BATT_CAP}'% Battery - Powering Hosts ON After Power Outage" >> ${PW_LOGFILE} - # SENDNOTICE "OFFSITE HOST POWER" "Powering offsite host(s) back ONLINE after power outage" - # for host in ${PW_OFFSITEHOSTS}; do - # if [ "${TEST}" == "" ] || [ "${TEST}" == "full" ]; then - # echo "Powering on after power outage" - # ipmitool -I lanplus -H ${host} -U ${PW_ESXI_USER} -P "${PW_ESXI_PASS}" chassis power on & - # else - # echo "TESTMODE: Powering up '${host}'" - # fi - # done - # rm -f ${PW_TMPFOLDER}/power.offsite.* - # fi - # fi + if [ -f ${PW_TMPFOLDER}/power.offsite.off ]; then + if [ ! -f ${PW_TMPFOLDER}/power.offsite.restored ]; then + touch ${PW_TMPFOLDER}/power.offsite.restored + + elif [ $(expr `date +%s` - $(stat -f %m ${PW_TMPFOLDER}/power.offsite.restored)) -gt $(echo "scale=2; ${WAIT_TO_POWER_SERVERS}*60" | bc) ]; then + echo "($(date +'%Y-%m-%d %H:%M:%S')) - ${OFFSITE_VOLTIN}'volts - ${OFFSITE_BATT_CAP}'% Battery - Powering Hosts ON After Power Outage" >> ${PW_LOGFILE} + SENDNOTICE "OFFSITE HOST POWER" "Powering offsite host(s) back ONLINE after power outage" + for host in ${PW_OFFSITEHOSTS_IDRAC}; do + if [ "${TEST}" == "" ] || [ "${TEST}" == "full" ]; then + echo "Powering on after power outage" + ipmitool -I lanplus -H ${host} -U ${PW_ESXI_USER} -P "${PW_ESXI_PASS}" chassis power on & + else + echo "TESTMODE: Powering up '${host}'" + fi + done + rm -f ${PW_TMPFOLDER}/power.offsite.* + fi + fi logtime=$(expr `date +%s` - $(stat -f %m ${PW_LOGPOWER})) if [ ${logtime} -ge $(echo "scale=2; ${LOG_INTERVAL_NORMAL}*60" | bc) ] || ([ ${OFFSITE_BATT_CAP%.*} -lt 100 ] && [ ${logtime} -gt ${LOG_INTERVAL_CHARGING} ]); then echo "($(date +'%Y-%m-%d %H:%M:%S')) - ${OFFSITE_VOLTIN}'volts - ${OFFSITE_WATTS}'watts - ${OFFSITE_BATT_CAP}'% Battery - ${OFFSITE_BATT_RUNTIME}'mins - Normal" >> ${PW_LOGPOWER}