diff --git a/powerwall.sh b/powerwall.sh index 8cc0ac83..da5ae053 100755 --- a/powerwall.sh +++ b/powerwall.sh @@ -35,7 +35,20 @@ CHECKTEMP(){ if [ "$(CHECK_HOST ${vHOSTIP})" != "false" ]; then vHOSTDATA=$(ssh root@${PW_RACADM_ACCESS} racadm -r ${vHOSTiDRACIP} -u ${PW_ESXI_USER} -p "'${PW_ESXI_PASS}'" getsensorinfo | grep " Temp" 2>&1) - IFS=$'\n' read -rd '' -a vHOSTDATA <<<"${vHOSTDATA}"; unset IFS + + # iDS-vMS-Offsite Fan Issue Workaround + if [ "${vHOSTiDRACIP}" == "10.2.1.21" ]; then + vHOSTFAN=$(ssh root@${PW_RACADM_ACCESS} racadm -r ${vHOSTiDRACIP} -u ${PW_ESXI_USER} -p "'${PW_ESXI_PASS}'" getsensorinfo | grep "System Board Fan1" 2>&1) + FanSpeed=$(echo ${vHOSTFAN} | awk '/ / {print $8}' | sed -e 's/%//g') + if [ ${FanSpeed} -gt 90 ]; then + SENDNOTICE "${vHOSTiDRACIP} Fan Issue" "Workaround commands sent to set the Fans at 30%" 1 + ssh root@${PW_RACADM_ACCESS} "ipmitool -I lanplus -H ${vHOSTiDRACIP} -U ${PW_ESXI_USER} -P '${PW_ESXI_PASS}' raw 0x30 0x30 0x01 0x00" + ssh root@${PW_RACADM_ACCESS} "ipmitool -I lanplus -H ${vHOSTiDRACIP} -U ${PW_ESXI_USER} -P '${PW_ESXI_PASS}' raw 0x30 0x30 0x02 0xff 0x1E" + fi + + fi + + ]IFS=$'\n' read -rd '' -a vHOSTDATA <<<"${vHOSTDATA}"; unset IFS echo -en "\r\033[K" if [ ${#vHOSTDATA[@]} > 1 ]; then for sensordata in "${vHOSTDATA[@]}"; do @@ -186,11 +199,24 @@ CHECKTEMP_SERVICE(){ fi - if [ "${PW_SENSOR_TYPE[${SENSORa}]}" == "esxi222" ]; then + if [ "${PW_SENSOR_TYPE[${SENSORa}]}" == "esxi" ]; then unset IFS SENSORS_CHECK=$(ssh root@${PW_RACADM_ACCESS} racadm -r ${PW_HOST_IDRACS[${SENSORa}]} -u ${PW_ESXI_USER} -p "'${PW_ESXI_PASS}'" getsensorinfo | grep " Temp" 2>&1) IFS=$'\n' read -rd '' -a SENSORS_CHECK <<<"${SENSORS_CHECK}"; unset IFS # for i in ${SENSORS_CHECK[@]}; do echo $i; done + + # iDS-vMS-Offsite Fan Issue Workaround + if [ "${vHOSTiDRACIP}" == "10.2.1.21" ]; then + vHOSTFAN=$(ssh root@${PW_RACADM_ACCESS} racadm -r ${PW_HOST_IDRACS[${SENSORa}]} -u ${PW_ESXI_USER} -p "'${PW_ESXI_PASS}'" getsensorinfo | grep "System Board Fan1" 2>&1) + FanSpeed=$(echo ${vHOSTFAN} | awk '/ / {print $8}' | sed -e 's/%//g') + if [ ${FanSpeed} -gt 90 ]; then + SENDNOTICE "${vHOSTiDRACIP} Fan Issue" "Workaround commands sent to set the Fans at 30%" 1 + ssh root@${PW_RACADM_ACCESS} "ipmitool -I lanplus -H ${vHOSTiDRACIP} -U ${PW_ESXI_USER} -P '${PW_ESXI_PASS}' raw 0x30 0x30 0x01 0x00" + ssh root@${PW_RACADM_ACCESS} "ipmitool -I lanplus -H ${vHOSTiDRACIP} -U ${PW_ESXI_USER} -P '${PW_ESXI_PASS}' raw 0x30 0x30 0x02 0xff 0x1E" + fi + + fi + else SENSORS_CHECK=(${SENSORa}) fi