This commit is contained in:
2024-04-23 15:59:06 -05:00
parent a0acf1110f
commit e3b60c208c
2 changed files with 22 additions and 21 deletions

View File

@@ -846,7 +846,7 @@ CHECKTEMP_SERVICE_RUNSENSOR(){
echo "($(date +'%Y-%m-%d %H:%M:%S')) - ${FanSpeed}% - ${SENSORa} - Goldilock Zone Found (1HR)" >> ${PW_LOGFOLDER}/esxi-fanspeeds.log
elif [ -f ${PW_TMPFOLDER}/.lastfancheck/${SENSORa}.gl ] && [ $(expr `date +%s` - $(stat -c %Y ${PW_TMPFOLDER}/.lastfancheck/${SENSORa}.gl)) -ge 3600 ] && [ ${FanSpeed} -gt ${ESXI_DEF_FANSPEED} ] && (( $(bc <<< "${temp_f} < ${ESXI_DEFAULT_EXHAUST_MIN}") )); then
SET_ESXI_FANSPEED $(expr $(cat ${PW_TMPFOLDER}/.lastfancheck/${SENSORa}.set | cut -d'~' -f 1) - 5) ${SENSORa} >/dev/null 2>&1 &
SET_ESXI_FANSPEED $(expr $(cat ${PW_TMPFOLDER}/.lastfancheck/${SENSORa}.set | cut -d'~' -f 1) - 5) ${SENSORa} 5 >/dev/null 2>&1 &
echo "($(date +'%Y-%m-%d %H:%M:%S')) - ${FanSpeed}% - ${SENSORa} - Goldilock zone, below min for another 1HR, reducing fans by 5" >> ${PW_LOGFOLDER}/esxi-fanspeeds.log
@@ -854,7 +854,7 @@ CHECKTEMP_SERVICE_RUNSENSOR(){
# SENDNOTICE "${PW_HOST_IDRACS[${SENSORa}]} FAN CONTROL" "DAAAMMMNN GOLDIE!!!! Decreasing by 5 - ${FanSpeed}% --> $(expr ${FanSpeed} - 5)%"
# echo "($(date +'%Y-%m-%d %H:%M:%S')) - ${FanSpeed}% - ${SENSORa} - DAAAMMMNN GOLDIE!!!! Decreasing by 5 - ${FanSpeed}% --> $(expr ${FanSpeed} - 5)%" >> ${logtemp}
# echo "($(date +'%Y-%m-%d %H:%M:%S')) - ${FanSpeed}% - ${SENSORa} - DAAAMMMNN GOLDIE!!!! Decreasing by 5 - ${FanSpeed}% --> $(expr ${FanSpeed} - 5)%" >> ${PW_LOGFOLDER}/esxi-fanspeeds.log
# SET_ESXI_FANSPEED $(expr $(cat ${PW_TMPFOLDER}/.lastfancheck/${SENSORa}.set | cut -d'~' -f 1) - 5) ${SENSORa} >/dev/null 2>&1 &
# SET_ESXI_FANSPEED $(expr $(cat ${PW_TMPFOLDER}/.lastfancheck/${SENSORa}.set | cut -d'~' -f 1) - 5) ${SENSORa} 5 >/dev/null 2>&1 &
elif [ ! -f ${PW_TMPFOLDER}/.lastfancheck/${SENSORa}.set ]; then
NEW_FanSpeed=$(GET_DEFAULT_FANSPEED ${SENSORa} ${FanSpeed})
@@ -866,14 +866,14 @@ CHECKTEMP_SERVICE_RUNSENSOR(){
if [ ! -f ${PW_TMPFOLDER}/.lastfancheck/${SENSORa}.set ]; then
NEW_FanSpeed=$(expr $(GET_DEFAULT_FANSPEED ${SENSORa} ${FanSpeed}) + 5)
# SENDNOTICE "${PW_HOST_IDRACS[${SENSORa}]} FanSpeed Control" "INCREASE: Defaulting FanSpeeds to ${NEW_FanSpeed}%"
SET_ESXI_FANSPEED ${NEW_FanSpeed} ${SENSORa} >/dev/null 2>&1 &
SET_ESXI_FANSPEED ${NEW_FanSpeed} ${SENSORa} 5 >/dev/null 2>&1 &
else
(( $(bc <<< "${temp_f} >= $(expr ${ESXI_DEFAULT_EXHAUST_MIN} + 5)") )) && FAN_INCREASE=10 || FAN_INCREASE=5
NEW_FanSpeed=$(expr $(cat ${PW_TMPFOLDER}/.lastfancheck/${SENSORa}.set | cut -d'~' -f 1) + ${FAN_INCREASE})
if [ ${NEW_FanSpeed} -le $(expr ${PW_ESXI_MAX_FANSPEED} + 4) ] && [ ${FanSpeed} -ne ${PW_ESXI_MAX_FANSPEED} ]; then
[ ${NEW_FanSpeed} -gt ${PW_ESXI_MAX_FANSPEED} ] && NEW_FanSpeed=${PW_ESXI_MAX_FANSPEED}
[ ${NEW_FanSpeed} -ge 60 ] && SENDNOTICE "${PW_HOST_IDRACS[${SENSORa}]} Exhaust Warm" "Increasing fans to ${NEW_FanSpeed}%"
SET_ESXI_FANSPEED ${NEW_FanSpeed} ${SENSORa} >/dev/null 2>&1 &
SET_ESXI_FANSPEED ${NEW_FanSpeed} ${SENSORa} ${FAN_INCREASE} >/dev/null 2>&1 &
fi
fi
### DECREASING ###
@@ -881,14 +881,14 @@ CHECKTEMP_SERVICE_RUNSENSOR(){
if [ ! -f ${PW_TMPFOLDER}/.lastfancheck/${SENSORa}.set ]; then
NEW_FanSpeed=$(expr $(GET_DEFAULT_FANSPEED ${SENSORa} ${FanSpeed}) - 5)
# SENDNOTICE "${PW_HOST_IDRACS[${SENSORa}]} FanSpeed Control" "DECREASE: Defaulting FanSpeeds to ${NEW_FanSpeed}%"
SET_ESXI_FANSPEED ${NEW_FanSpeed} ${SENSORa} >/dev/null 2>&1 &
SET_ESXI_FANSPEED ${NEW_FanSpeed} ${SENSORa} 5 >/dev/null 2>&1 &
else
(( $(bc <<< "${temp_f} <= $(expr ${ESXI_DEFAULT_EXHAUST_MIN} - 5)") )) && FAN_DECREASE=10 || FAN_DECREASE=5
NEW_FanSpeed=$(expr $(cat ${PW_TMPFOLDER}/.lastfancheck/${SENSORa}.set | cut -d'~' -f 1) - ${FAN_DECREASE})
if [ ${NEW_FanSpeed} -ge $(expr ${ESXI_DEF_FANSPEED} - 4) ] && [ ${FanSpeed} -ne ${ESXI_DEF_FANSPEED} ]; then
[ ${NEW_FanSpeed} -lt ${ESXI_DEF_FANSPEED} ] && NEW_FanSpeed=${ESXI_DEF_FANSPEED}
[ ${NEW_FanSpeed} -ge 65 ] && SENDNOTICE "${PW_HOST_IDRACS[${SENSORa}]} Exhaust Cooling" "Decreasing fans to ${NEW_FanSpeed}%"
SET_ESXI_FANSPEED ${NEW_FanSpeed} ${SENSORa} >/dev/null 2>&1 &
SET_ESXI_FANSPEED ${NEW_FanSpeed} ${SENSORa} ${FAN_DECREASE} >/dev/null 2>&1 &
fi
fi
fi
@@ -1131,6 +1131,7 @@ SET_ESXI_FANSPEED(){
SET_FanSpeed=${1}
SET_HOST=${2}
SET_fanchange=${3}
fan="${FanSpeed}%"
if [ ${SET_FanSpeed} -ge ${ESXI_DEF_FANSPEED} ] && [ ${SET_FanSpeed} -le ${PW_ESXI_MAX_FANSPEED} ]; then
ipmitool -I lanplus -H ${PW_HOST_IDRACS[${SET_HOST}]} -U ${PW_ESXI_USER} -P "${PW_ESXI_PASS}" raw 0x30 0x30 0x01 0x00 >/dev/null 2>&1
@@ -1150,23 +1151,23 @@ SET_ESXI_FANSPEED(){
[ ${SET_FanSpeed} -ge 70 ] && echo "($(date +'%Y-%m-%d %H:%M:%S')) - ${SET_FanSpeed}% - ${SET_HOST} - ${MSG}" >> ${PW_LOGFILE}
echo "($(date +'%Y-%m-%d %H:%M:%S')) - ${fan} - ${SET_HOST} - ${MSG}" >> ${PW_LOGFOLDER}/esxi-fanspeeds.log
if [ $(bc -l <<< "${SET_FanSpeed} < $(cat ${PW_TMPFOLDER}/.lastfancheck/${SET_HOST}.set | cut -d'~' -f 1)") -eq 1 ]; then
if [ "${FAN_DECREASE}" == "5" ]; then
echo "${SET_FanSpeed}~d" >| ${PW_TMPFOLDER}/.lastfancheck/${SET_HOST}.set
else
echo "${SET_FanSpeed}~dd" >| ${PW_TMPFOLDER}/.lastfancheck/${SET_HOST}.set
fi
elif [ $(bc -l <<< "$(cat ${PW_TMPFOLDER}/.lastfancheck/${SET_HOST}.set | cut -d'~' -f 1) < ${SET_FanSpeed}") -eq 1 ]; then
if [ "${FAN_INCREASE}" == "5" ]; then
echo "${SET_FanSpeed}~u" >| ${PW_TMPFOLDER}/.lastfancheck/${SET_HOST}.set
else
echo "${SET_FanSpeed}~uu" >| ${PW_TMPFOLDER}/.lastfancheck/${SET_HOST}.set
fi
if [ "${SET_fanchange}" == "manual" ]; then
echo "${SET_FanSpeed}~m" >| ${PW_TMPFOLDER}/.lastfancheck/${SET_HOST}.set
elif [ "${SET_fanchange}" == "" ]; then
echo "${SET_FanSpeed}~" >| ${PW_TMPFOLDER}/.lastfancheck/${SET_HOST}.set
else
echo "${SET_FanSpeed}~e" >| ${PW_TMPFOLDER}/.lastfancheck/${SET_HOST}.set
if [ $(bc -l <<< "${SET_FanSpeed} < $(cat ${PW_TMPFOLDER}/.lastfancheck/${SET_HOST}.set | cut -d'~' -f 1)") -eq 1 ]; then
[ "${SET_fanchange}" == "10" ] && echo "${SET_FanSpeed}~dd" >| ${PW_TMPFOLDER}/.lastfancheck/${SET_HOST}.set || echo "${SET_FanSpeed}~d" >| ${PW_TMPFOLDER}/.lastfancheck/${SET_HOST}.set
elif [ $(bc -l <<< "$(cat ${PW_TMPFOLDER}/.lastfancheck/${SET_HOST}.set | cut -d'~' -f 1) < ${SET_FanSpeed}") -eq 1 ]; then
[ "${SET_fanchange}" == "10" ] && echo "${SET_FanSpeed}~uu" >| ${PW_TMPFOLDER}/.lastfancheck/${SET_HOST}.set || echo "${SET_FanSpeed}~u" >| ${PW_TMPFOLDER}/.lastfancheck/${SET_HOST}.set
else
echo "${SET_FanSpeed}~e" >| ${PW_TMPFOLDER}/.lastfancheck/${SET_HOST}.set
fi
fi
[ "${SET_HOST}" == "iDS-vMS-Host7" ] && [ ! -f ${PW_TMPFOLDER}/iDS-vMS-Host6.down ] && SET_ESXI_FANSPEED ${SET_FanSpeed} iDS-vMS-Host6 >/dev/null 2>&1 &
[ "${SET_HOST}" == "iDS-vMS-Host7" ] && [ ! -f ${PW_TMPFOLDER}/iDS-vMS-Host6.down ] && SET_ESXI_FANSPEED ${SET_FanSpeed} iDS-vMS-Host6 ${SET_fanchange} >/dev/null 2>&1 &
[ -f ${PW_TMPFOLDER}/.lastfancheck/${SET_HOST}.gl ] && rm -f ${PW_TMPFOLDER}/.lastfancheck/${SET_HOST}.gl
fi
}