update
This commit is contained in:
@@ -1,5 +1,5 @@
|
||||
|
||||
VERS='2.5.157-01252024'
|
||||
VERS='2.5.158-01252024'
|
||||
|
||||
noheader=' update service dailytemp confsync -r -report '
|
||||
|
||||
|
||||
104
inc/power.inc.sh
104
inc/power.inc.sh
@@ -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
|
||||
|
||||
25
powerwall.sh
25
powerwall.sh
@@ -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
|
||||
|
||||
Reference in New Issue
Block a user