This commit is contained in:
2024-01-25 07:43:52 -06:00
parent 545c2d3843
commit 9cd61e70cb
3 changed files with 7 additions and 124 deletions

View File

@@ -1,5 +1,5 @@
VERS='2.5.157-01252024'
VERS='2.5.158-01252024'
noheader=' update service dailytemp confsync -r -report '

View File

@@ -227,20 +227,6 @@ CHECKPOWER(){
OFFSITE_BATT_RUNTIME=`echo "scale=2; ${OFFSITE_BATT_RUNTIME}/60" | bc`
OFFSITE_BATT_CAP=$(echo "${upsinfo}" | grep 'battery.charge:' | sed 's/.*: //')
# vHOSTFAN=$(ssh -q -o ConnectTimeout=1 -o ConnectionAttempts=1 root@${PW_RACADM_ACCESS} racadm -r 10.2.1.21 -u ${PW_ESXI_USER} -p "'${PW_ESXI_PASS}'" getsensorinfo | grep "System Board Fan3" 2>&1)
# FanSpeed=$(echo ${vHOSTFAN} | awk '/ / {print $8}' | sed -e 's/%//g')
# OFFSITE_VOLTIN=$(snmpwalk -t 1 -r 0 -v 1 -c public 10.2.1.100 iso.3.6.1.4.1.3808.1.1.1.3.2.1.0 | sed 's/.*: //')
# OFFSITE_VOLTIN=`echo "scale=2; ${OFFSITE_VOLTIN}/10" | bc`
# OFFSITE_VOLTOUT=$(snmpwalk -t 1 -r 0 -v 1 -c public 10.2.1.100 iso.3.6.1.4.1.3808.1.1.1.4.2.1.0 | sed 's/.*: //')
# OFFSITE_VOLTOUT=`echo "scale=2; ${OFFSITE_VOLTOUT}/10" | bc`
# OFFSITE_LOAD=$(snmpwalk -t 1 -r 0 -v 1 -c public 10.2.1.100 iso.3.6.1.4.1.3808.1.1.1.4.2.3.0 | sed 's/.*: //')
# OFFSITE_LOAD=`echo "scale=2; ${OFFSITE_LOAD}/100" | bc`
# OFFSITE_WATTS=`echo "scale=2; ${OFFSITE_LOAD}*900" | bc`
# OFFSITE_AMPS=`echo "scale=2; ${OFFSITE_WATTS}/${OFFSITE_VOLTOUT}" | bc`
# OFFSITE_BATT_RUNTIME=$(snmpwalk -t 1 -r 0 -v 1 -c public 10.2.1.100 iso.3.6.1.2.1.33.1.2.3.0 | sed 's/.*: //')
# OFFSITE_BATT_CAP=$(snmpwalk -t 1 -r 0 -v 1 -c public 10.2.1.100 iso.3.6.1.2.1.33.1.2.4.0 | sed 's/.*: //')
fi
[ ${REPORT} -eq 0 ] && echo -en "\r\033[K"
@@ -265,8 +251,6 @@ CHECKPOWER(){
echo -en "${idsCL[White]}Total Wattage ${idsCL[Default]}: ${idsCL[Green]}`IDS_NUMBER_FORMAT ${OFFSITE_WATTS} 0`'watts ${idsCL[Default]}~ est"
[ "${avgdays}" != "" ] && echo -e "${idsCL[LightYellow]} `IDS_NUMBER_FORMAT ${OFFSITE_WATT_avg} 0`'watts" || echo -e "${idsCL[Default]}\n"
# echo -e "${idsCL[LightCyan]}Current Fan Speed ${idsCL[Default]}: ${idsCL[Green]}${FanSpeed}'%${idsCL[Default]}"
# echo
fi
if [ "${PTYPE}" != "power" ]; then
@@ -562,58 +546,6 @@ Shutting down main servers" 1
sleep 20s
fi
######offsite check
# if [ "$(CHECK_HOST 10.2.1.1)" != "false" ]; then
# upsinfo=$(ssh -q -o ConnectTimeout=1 -o ConnectionAttempts=1 admin@10.2.1.1 'upsc CP1500PFCLCD')
# OFFSITE_VOLTIN=$(echo "${upsinfo}" | grep 'input.voltage:' | sed 's/.*: //')
# OFFSITE_BATT_RUNTIME=$(echo "${upsinfo}" | grep 'battery.runtime:' | sed 's/.*: //')
# OFFSITE_BATT_RUNTIME=`echo "scale=2; ${OFFSITE_BATT_RUNTIME}/60" | bc`
# OFFSITE_BATT_CAP=$(echo "${upsinfo}" | grep 'battery.charge:' | sed 's/.*: //')
#
# if (( $(bc <<<"${OFFSITE_VOLTIN} >= ${min_acvolt}") )); then
# if [ -f ${PW_TMPFOLDER}/power.offsite.ac.low ]; then
# echo "($(date +'%Y-%m-%d %H:%M:%S')) - ${OFFSITE_VOLTIN}'volts - Offsite Back to Normal Voltage" >> ${PW_LOGPOWER}
# echo "($(date +'%Y-%m-%d %H:%M:%S')) - ${OFFSITE_VOLTIN}'volts - OFFSITE POWER NOMINAL AGAIN" >> ${PW_LOGFILE}
# SENDNOTICE "OFFSITE POWER NOMINAL AGAIN" "Normal voltage detected
# VOLTAGE: ${OFFSITE_VOLTIN}'volts"
# rm -f ${PW_TMPFOLDER}/power.offsite.ac.*
# fi
# if [ -f ${PW_TMPFOLDER}/shutdown.OFFSITE ]; then
# if [ ! -f ${PW_TMPFOLDER}/power.offsite.restored ]; then
# touch ${PW_TMPFOLDER}/power.offsite.restored
#
# elif [ $(expr `date +%s` - $(stat -c %Y ${PW_TMPFOLDER}/power.offsite.restored)) -ge 60 ]; then
# SENDNOTICE "OFFSITE HOST POWER" "Powering offsite host(s) back on after power was restored"
# for offsite_host in "${PW_OFFSITEHOSTS[@]}"; do
# HOSTPOWER ${offsite_host} on >/dev/null 2>&1
# done
# rm -f ${PW_TMPFOLDER}/power.offsite.*
# fi
#
# else
# [ $(expr `date +%s` - $(stat -c %Y ${PW_LOGPOWER})) -le 300 ] && echo "($(date +'%Y-%m-%d %H:%M:%S')) - ${OFFSITE_VOLTIN}'volts - Offsite Normal Voltage" >> ${PW_LOGPOWER}
# fi
# else
# echo "($(date +'%Y-%m-%d %H:%M:%S')) - ${OFFSITE_VOLTIN}'volts - OFFSITE POWER OFF/LOW POWER" >> ${PW_LOGPOWER}
# echo "($(date +'%Y-%m-%d %H:%M:%S')) - ${OFFSITE_VOLTIN}'volts - OFFSITE POWER OFF/LOW POWER" >> ${PW_LOGFILE}
#
# if [ ! -f ${PW_TMPFOLDER}/power.offsite.ac.low ] || [ $(expr `date +%s` - $(stat -c %Y ${PW_TMPFOLDER}/power.offsite.ac.low)) -ge 240 ]; then
# SENDNOTICE "OFFSITE POWER ALERT - POWER OFF/LOW!!" "Power off or low voltage detected
# BATT CAPACITY: ${OFFSITE_BATT_CAP}'%
# BATT RUNTIME: ${OFFSITE_BATT_RUNTIME}'Mins" 1
# touch ${PW_TMPFOLDER}/power.offsite.ac.low
# fi
#
# if (( $(bc <<<"${OFFSITE_BATT_CAP} <= 95") )) && [ ! -f ${PW_TMPFOLDER}/shutdown.OFFSITE ]; then
# SENDNOTICE "OFFSITE HOST POWER" "Powering DOWN offsite host(s) due to power outage" 1
# SHUTDOWN_OFFSITE &
# touch ${PW_TMPFOLDER}/shutdown.OFFSITE
# fi
# fi
#
#
# fi
end=`date +%s`; runtime=$((end-start))
# echo -e "runtime: ${runtime}s"; [ ${runtime} -lt ${runEvery} ] && echo "Sleeping for $(expr ${runEvery} - ${runtime})s"
[ ${runtime} -lt ${runEvery} ] && sleep $(expr ${runEvery} - ${runtime})s ###|| echo "Not sleeping, ran for ${runtime}s previsoulsy"
@@ -705,16 +637,6 @@ POWERLOGGER_SERVICE(){
[[ "${PW_MAIN_HOSTS}" = *"${PW_HOST_ADDRESSES[${SENSOR}]}"* ]] && rm -f ${PW_TMPFOLDER}/shutdown.MAIN
[[ "${PW_SYS_HOSTS}" = *"${PW_HOST_ADDRESSES[${SENSOR}]}"* ]] && rm -f ${PW_TMPFOLDER}/shutdown.SYS
# for s in {1..5}; do
# if [[ "$(snmpwalk -t 1 -r 0 -v 1 -c public ${PW_HOST_IDRACS[${SENSOR}]} iso.3.6.1.4.1.674.10892.5.4.600.30.1.8.1.${s} | sed 's/.*: //')" = *"System Board"* ]]; then
# HOST_WATTS=$(snmpwalk -t 1 -r 0 -v 1 -c public ${PW_HOST_IDRACS[${SENSOR}]} iso.3.6.1.4.1.674.10892.5.4.600.30.1.6.1.${s} | sed 's/.*: //')
# if [[ "${HOST_WATTS}" != *"Timeout"* ]] && [ "${HOST_WATTS}" != "0" ]; then
# QRY="INSERT INTO power_data (\`sensorid\`, \`date\`, \`watt\`) VALUES ('${PW_POWERSENSOR_ID[${SENSOR}]}','${LogDataTime}','${HOST_WATTS}')"
# ${mysql_conn} -e "USE servermonitor; ${QRY}"
# fi
# break
# fi
# done
PS1='0.0'; PS2='0.0'; HOST_WATTS=0
for s in {1..5}; do
@@ -766,37 +688,11 @@ HOSTPOWER(){
idracip=''
fi
# if [ "${PW_iDRACHOST_SHORTNAMES[${1}]}" != "" ]; then
# tmp=${PW_iDRACHOST_SHORTNAMES[${1}]}
# ESXI_HOST=${PW_HOST_ADDRESSES[${tmp}]}
# elif [ "${PW_ESXI_HOST_NAMES[${1}]}" != "" ]; then
# ESXI_HOST=${1}
# elif [ "${PW_HOST_ADDRESSES[iDS-vMS-Host${1}]}" != "" ]; then
# ESXI_HOST=${PW_HOST_ADDRESSES[iDS-vMS-Host${1}]}
# elif ([ "${1::1}" == "o" ] || [ "${1::1}" == "O" ]) && [ "${PW_HOST_ADDRESSES[OFF-vMS-Host${1: -1}]}" != "" ]; then
# ESXI_HOST=${PW_HOST_ADDRESSES[OFF-vMS-Host${1: -1}]}
# elif [ "${PW_HOST_ADDRESSES[${1}]}" != "" ]; then
# ESXI_HOST=${PW_HOST_ADDRESSES[${1}]}
# elif [ "${1^^}" == "ALL" ] || [ "${1^^}" == "MAINSITE" ] || [ "${1^^}" == "OFFSITE" ] || [ "${1^^}" == "MAIN" ] || [ "${1^^}" == "SYS" ]; then
# ESXI_HOST=${HOST^^}
# MN=1
# else
# ESXI_HOST=''
# fi
# [ "${ESXI_HOST}" != "" ] && idracip=${PW_HOST_IDRACS[${PW_ESXI_HOST_NAMES[${ESXI_HOST}]}]} || idracip=''
echo -e "\n${idsCL[Yellow]}POWERING ${2^^} '${PW_iDRACHOST_SHORTNAMES[${idracip}]}'"
DIVIDER . yellow 75
if [ "${idracip}" != "" ]; then
# host=${PW_iDRACHOST_SHORTNAMES[${idracip}]}
# c=0; spcA=''; spc1=`expr 21 - ${#host} - 1`; until [ ${c} = ${spc1} ]; do spcA="${spcA} "; c=`expr ${c} + 1`; done
# c=0; spcB=''; spc1=`expr 18 - ${#PW_HOST_ADDRESSES[${host}]} - 1`; until [ ${c} = ${spc1} ]; do spcB="${spcB} "; c=`expr ${c} + 1`; done
# echo -en "${idsCL[LightCyan]} Host: ${idsCL[Green]}${host}${spcA}"
# echo -en "${idsCL[LightCyan]}Host IP: ${idsCL[Green]}${PW_HOST_ADDRESSES[${host}]}${spcB}"
# echo -e "${idsCL[LightCyan]}iDrac IP: ${idsCL[Green]}${idracip}${idsCL[Default]}"
# DIVIDER . yellow 75
# echo
if [ "${2^^}" == "ON" ] || [ "${2^^}" == "OFF" ] || [ "${2^^}" == "STATUS" ]; then
if [ "${idracip}" == "10.10.2.20" ] && [ "${2^^}" == "ON" ]; then

View File

@@ -11,7 +11,7 @@ source /opt/idssys/powerwall/inc/power.inc.sh
source /opt/idssys/powerwall/inc/temp.inc.sh
TEST=true
# TEST=true
shopt -s lastpipe
@@ -340,10 +340,9 @@ SHUTDOWN_SERVER(){
fi
done
echo
if [ ${MM} -eq 0 ] && ([ "${ESXI_HOST}" == "ALL" ] || [[ "${PW_OFFSITE_HOSTS}" = *"${ESXI_HOST}"* ]] || [ "${ESXI_HOST}" == "OFFSITE" ] || [ "${ESXI_HOST}" == "MAINSITE" ] || [ "${ESXI_HOST}" == "10.2.1.11" ] || ([ "${ESXI_HOST}" == "SYS" ] && [ -f ${PW_TMPFOLDER}/shutdown.MAIN ])); then
if [ ${MM} -eq 0 ] && ([ "${ESXI_HOST}" == "ALL" ] || [[ "${PW_OFFSITE_HOSTS}" = *"${ESXI_HOST}"* ]] || [ "${ESXI_HOST}" == "OFFSITE" ] || [ "${ESXI_HOST}" == "MAINSITE" ] || [[ "${PW_OFFSITE_HOSTS}" = *"${ESXI_HOST}"* ]] || ([ "${ESXI_HOST}" == "SYS" ] && [ -f ${PW_TMPFOLDER}/shutdown.MAIN ])); then
tmp=tmp
# elif [ "${ESXI_HOST}" != "OFFSITE" ] && [ "${ESXI_HOST}" != "ALL" ] && [ "${ESXI_HOST}" != "MAINSITE" ]; then
else
MSG="Starting iSCSI migrations"
c=0; MSG_SPC=''; spc1=`expr ${HC_CW} - ${#MSG}`; until [ ${c} = ${spc1} ]; do MSG_SPC="${MSG_SPC} "; ((c++)); done
@@ -627,24 +626,12 @@ HOSTMGMT(){
var=PW_${ESXI_HOST}HOSTS[@]; v=1
for vhost in "${!var}"; do
# if [ "${POWER^^}" == "ON" ] && [ "${vhost}" == "${PW_MAIN_ISCSI}" ] && ([ "${ESXI_HOST}" == "ALL" ] || [ "${ESXI_HOST}" == "MAINSITE" ] || [ "${ESXI_HOST}" == "MAIN" ]); then
# tmp=''
# else
# if [ "$(ipmitool -I lanplus -H ${PW_HOST_IDRACS[${PW_ESXI_HOST_NAMES[${vhost}]}]} -U ${PW_ESXI_USER} -P "${PW_ESXI_PASS}" chassis power status | grep Power is ${POWER,,})" == "" ]; then
HOSTPOWER ${vhost} ${POWER}
sleep 3s
# else
# echo -e "\n${idsCL[LightCyan]}Host is already Powered ${POWER^^}${idsCL[Default]}"
# fi
# fi
HOSTPOWER ${vhost} ${POWER}
sleep 3s
done
else
# if [ "$(ipmitool -I lanplus -H ${PW_HOST_IDRACS[${PW_ESXI_HOST_NAMES[${ESXI_HOST}]}]} -U ${PW_ESXI_USER} -P '${PW_ESXI_PASS}' chassis power status | grep 'Power is ${POWER,,}')" == "" ]; then
HOSTPOWER ${ESXI_HOST} ${POWER}
# else
# echo -e "${idsCL[LightCyan]}Host is already Powered ${POWER^^}${idsCL[Default]}\n"
# fi
HOSTPOWER ${ESXI_HOST} ${POWER}
fi
fi
echo