Update offsite-power-check.sh
This commit is contained in:
@@ -25,9 +25,25 @@ RENOTIFY_LOWPOWER=10 #minutes
|
|||||||
PW_OFFSITEHOSTS="10.2.1.11"
|
PW_OFFSITEHOSTS="10.2.1.11"
|
||||||
# PW_OFFSITEHOSTS="10.2.1.11 10.2.1.12"
|
# PW_OFFSITEHOSTS="10.2.1.11 10.2.1.12"
|
||||||
|
|
||||||
for host in ${PW_OFFSITEHOSTS}; do
|
if [ -f ${PW_TMPFOLDER}/power.offsite.off ]; then
|
||||||
echo "H: ${host}"
|
if [ ! -f ${PW_TMPFOLDER}/power.offsite.restored ]; then
|
||||||
done
|
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
|
||||||
|
|
||||||
# TEST=true
|
# TEST=true
|
||||||
TEST=full
|
TEST=full
|
||||||
@@ -42,8 +58,6 @@ else
|
|||||||
TESTMODE=""
|
TESTMODE=""
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
PWO_START(){
|
PWO_START(){
|
||||||
startup=true
|
startup=true
|
||||||
while true; do
|
while true; do
|
||||||
@@ -90,24 +104,24 @@ $(date)"
|
|||||||
|
|
||||||
rm -f ${PW_TMPFOLDER}/power.offsite.ac.*
|
rm -f ${PW_TMPFOLDER}/power.offsite.ac.*
|
||||||
fi
|
fi
|
||||||
if [ -f ${PW_TMPFOLDER}/power.offsite.off ]; then
|
# if [ -f ${PW_TMPFOLDER}/power.offsite.off ]; then
|
||||||
if [ ! -f ${PW_TMPFOLDER}/power.offsite.restored ]; then
|
# if [ ! -f ${PW_TMPFOLDER}/power.offsite.restored ]; then
|
||||||
touch ${PW_TMPFOLDER}/power.offsite.restored
|
# 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
|
# 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}
|
# 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"
|
# SENDNOTICE "OFFSITE HOST POWER" "Powering offsite host(s) back ONLINE after power outage"
|
||||||
for host in ${PW_OFFSITEHOSTS}; do
|
# for host in ${PW_OFFSITEHOSTS}; do
|
||||||
if [ "${TEST}" == "" ] || [ "${TEST}" == "full" ]; then
|
# if [ "${TEST}" == "" ] || [ "${TEST}" == "full" ]; then
|
||||||
echo "Powering on after power outage"
|
# echo "Powering on after power outage"
|
||||||
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
|
# else
|
||||||
echo "TESTMODE: Powering up '${host}'"
|
# echo "TESTMODE: Powering up '${host}'"
|
||||||
fi
|
# fi
|
||||||
done
|
# done
|
||||||
rm -f ${PW_TMPFOLDER}/power.offsite.*
|
# rm -f ${PW_TMPFOLDER}/power.offsite.*
|
||||||
fi
|
# fi
|
||||||
fi
|
# fi
|
||||||
logtime=$(expr `date +%s` - $(stat -f %m ${PW_LOGPOWER}))
|
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
|
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}
|
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}
|
||||||
|
|||||||
Reference in New Issue
Block a user