diff --git a/powerwall.sh b/powerwall.sh index 294d41c2..042e7f85 100755 --- a/powerwall.sh +++ b/powerwall.sh @@ -1469,8 +1469,11 @@ SHUTDOWN_SERVER(){ # echo -e "${idsCL[LightCyan]}iDrac IP: ${idsCL[Green]}${PW_HOST_IDRACS[${host}]}${idsCL[Default]}" # DIVIDER . yellow 75 # echo - - echo "($(date +'%Y-%m-%d %H:%M:%S')) - Shutting down ${host} (${ESXIHOST})" >> ${PW_LOGFILE} + if [ "${2}" == "maintenance" ]; then + echo "($(date +'%Y-%m-%d %H:%M:%S')) - Putting ${host} [${ESXIHOST}] into maintenance mode" >> ${PW_LOGFILE} + else + echo "($(date +'%Y-%m-%d %H:%M:%S')) - Shutting down ${host} [${ESXIHOST}]" >> ${PW_LOGFILE} + fi if [ "${ESXIHOST}" == "10.10.2.10" ]; then echo -e "${idsCL[LightYellow]}Since this is the iSCSI-PRI host server, all iSCSI-PRI VM's are being shutdown ... " @@ -1535,41 +1538,45 @@ SHUTDOWN_SERVER(){ echo -e "${idsCL[Yellow]}(TEST MODE)${idsCL[Default]}" fi - MSG="Waiting for VM's to power off or migrate" - c=0; MSG_SPC=''; spc1=`expr ${hc_cw} - ${#MSG}`; until [ ${c} = ${spc1} ]; do MSG_SPC="${MSG_SPC} "; ((c++)); done - echo -en "${idsCL[LightCyan]}${MSG}${MSG_SPC}: " - if [ "${TEST}" != "true" ]; then - MAINT_MODE_VERIFY_SHUTDOWN ${ESXIHOST} & - echo -e "${idsCL[Green]}Continuing in background\n" - else - echo -e "${idsCL[Yellow]}(TEST MODE)${idsCL[Default]}" - fi - - - if [ "${ESXIHOST}" == "10.10.2.10" ]; then - MSG="Waiting for Host ${host} [${ESXIHOST}] to shutdown" + if [ "${2}" != "maintenance" ]; then + MSG="Waiting for VM's to power off or migrate" c=0; MSG_SPC=''; spc1=`expr ${hc_cw} - ${#MSG}`; until [ ${c} = ${spc1} ]; do MSG_SPC="${MSG_SPC} "; ((c++)); done echo -en "${idsCL[LightCyan]}${MSG}${MSG_SPC}: " if [ "${TEST}" != "true" ]; then - while ping -qw 10 -c3 "${ESXIHOST}">/dev/null 2>&1; do sleep 1; done - echo -e "${idsCL[Green]}Done${idsCL[Default]}\n" + MAINT_MODE_VERIFY_SHUTDOWN ${ESXIHOST} & + echo -e "${idsCL[Green]}Continuing in background\n" else echo -e "${idsCL[Yellow]}(TEST MODE)${idsCL[Default]}" fi + + + if [ "${ESXIHOST}" == "10.10.2.10" ]; then + MSG="Waiting for Host ${host} [${ESXIHOST}] to shutdown" + c=0; MSG_SPC=''; spc1=`expr ${hc_cw} - ${#MSG}`; until [ ${c} = ${spc1} ]; do MSG_SPC="${MSG_SPC} "; ((c++)); done + echo -en "${idsCL[LightCyan]}${MSG}${MSG_SPC}: " + if [ "${TEST}" != "true" ]; then + while ping -qw 10 -c3 "${ESXIHOST}">/dev/null 2>&1; do sleep 1; done + echo -e "${idsCL[Green]}Done${idsCL[Default]}\n" + else + echo -e "${idsCL[Yellow]}(TEST MODE)${idsCL[Default]}" + fi + + MSG="Powering off SAS Enclosure" + c=0; MSG_SPC=''; spc1=`expr ${hc_cw} - ${#MSG}`; until [ ${c} = ${spc1} ]; do MSG_SPC="${MSG_SPC} "; ((c++)); done + echo -en "${idsCL[LightCyan]}${MSG}${MSG_SPC}: " + if [ "${TEST}" != "true" ] && [ "$(CHECK_HOST 10.10.2.10)" == "false" ]; then + run=$(snmpset -v 1 -c private ${PW_APCPDU_IP} .1.3.6.1.4.1.318.1.1.12.3.3.1.1.4.14 i 2) + sleep 3s + echo -e "${idsCL[Green]}Done${idsCL[Default]}\n" + else + echo -e "${idsCL[Yellow]}(TEST MODE)${idsCL[Default]}" + fi - MSG="Powering off SAS Enclosure" - c=0; MSG_SPC=''; spc1=`expr ${hc_cw} - ${#MSG}`; until [ ${c} = ${spc1} ]; do MSG_SPC="${MSG_SPC} "; ((c++)); done - echo -en "${idsCL[LightCyan]}${MSG}${MSG_SPC}: " - if [ "${TEST}" != "true" ] && [ "$(CHECK_HOST 10.10.2.10)" == "false" ]; then - run=$(snmpset -v 1 -c private ${PW_APCPDU_IP} .1.3.6.1.4.1.318.1.1.12.3.3.1.1.4.14 i 2) - sleep 3s - echo -e "${idsCL[Green]}Done${idsCL[Default]}\n" else - echo -e "${idsCL[Yellow]}(TEST MODE)${idsCL[Default]}" + echo -e "\n${idsCL[LightCyan]}The host ${host} [${ESXIHOST}] will be shutdown momentarily ... \n" fi - else - echo -e "\n${idsCL[LightCyan]}The host ${host} (${ESXIHOST}) will be shutdown momentarily ... \n" + echo -e "\n${idsCL[LightCyan]}The host ${host} [${ESXIHOST}] will be in maintenance mode momentarily ... \n" fi else @@ -1844,7 +1851,7 @@ GET_SNAPSHOTS(){ for SENSOR in ${PW_SENSOR_ORD[@]}; do if [ "${PW_HOST_ADDRESSES[${SENSOR}]}" != "" ]; then ESXIHOST=${PW_HOST_ADDRESSES[${SENSOR}]} - echo -e "${idsCL[LightGreen]}${PW_ESXI_HOST_NAMES[${ESXIHOST}]} (${ESXIHOST}) " + echo -e "${idsCL[LightGreen]}${PW_ESXI_HOST_NAMES[${ESXIHOST}]} [${ESXIHOST}] " DIVIDER . lightGreen 70 echo -en "${idsCL[LighGreen]}Looking for snapshots...${idsCL[Default]}" snapshots=`${PW_FOLDER}/esxi-scripts/get-snapshots.ps1 ${ESXIHOST}`