update
This commit is contained in:
12
defaults.inc
12
defaults.inc
@@ -1,16 +1,10 @@
|
||||
|
||||
VERS='2.5.79-12292023'
|
||||
VERS='2.5.81-12302023'
|
||||
|
||||
noheader=' update service dailytemp confsync '
|
||||
|
||||
HC_CW=60
|
||||
|
||||
# mqtt_conn='/usr/bin/mosquitto_sub -h 127.0.0.1 -u emonpi -P emonpimqtt'
|
||||
mqtt_conn='/usr/bin/mosquitto_sub -h 127.0.0.1 -u mqtt -P 12mqtt34password56'
|
||||
|
||||
# mysql_conn='/usr/bin/mysql -h mysqldb.scity.us -P 6033 --user=sysmoninsert --password=sysmoninsert'
|
||||
mysql_conn='/usr/bin/mysql'
|
||||
|
||||
PW_FOLDER='/opt/idssys/powerwall'
|
||||
PW_INCFOLDER=${PW_FOLDER}/inc
|
||||
PW_LOGFOLDER=${PW_FOLDER}/logs
|
||||
@@ -31,6 +25,10 @@ M_SRVCOPT=(start stop restart reload enable disable)
|
||||
|
||||
source ${PW_FOLDER}/settings.conf
|
||||
|
||||
mqtt_conn="/usr/bin/mosquitto_sub -h 127.0.0.1 -u ${PW_MQTT_USER} -P ${PW_MQTT_USER}"
|
||||
# mysql_conn="/usr/bin/mysql -h ${PW_MYSQL_HOST} -P 6033 --user=${PW_MYSQL_USER} --password=${PW_MYSQL_PASS}"
|
||||
mysql_conn='/usr/bin/mysql'
|
||||
|
||||
IFS=,
|
||||
PW_MAINSITEHOSTS=(${PW_MAINSITE_HOSTS})
|
||||
PW_MAIN_NOISCSIHOSTS=(${PW_MAIN_NOISCSI_HOSTS})
|
||||
|
||||
@@ -231,42 +231,6 @@ CHECKTEMPSENSOR(){
|
||||
[ ${#temp_crit} == 2 ] && spcc=' ' || spcc=' '
|
||||
echo -e "${idsCL[Default]}${spc}[${spcw}${idsCL[Yellow]}${temp_warn_disp}${GAUGESH}${idsCL[Default]} /${spcc}${idsCL[LightRed]}${temp_crit_disp}${GAUGESH}=>${idsCL[Default]} ]"
|
||||
|
||||
# if [ "${PW_SENSOR_TYPE[${1}]}" == "lacrosse" ]; then
|
||||
# temp_probe_f=$(bc <<< "scale=2; ${temp_probe_c}*1.8+32")
|
||||
# tmp="${spct}${temp_probe_f}"
|
||||
# c=0; spc=''; spc1=`expr 10 - ${#tmp}`; until [ ${c} = ${spc1} ]; do spc="${spc} "; c=`expr ${c} + 1`; done
|
||||
# [ ${#temp_warn} == 2 ] && spcw=' ' || spcw=' '
|
||||
# [ ${#temp_crit} == 2 ] && spcc=' ' || spcc=' '
|
||||
# echo -en "\r\033[K${idsCL[White]}${idsST[Bold]}${1}-Probe ${idsST[Reset]}${spc}${idsCL[Default]}: "
|
||||
# if [ "${average}" != "" ]; then
|
||||
# average=$(AVERAGETEMP ${PW_SENSOR_ID["${1}-Probe"]} ${avgdays})
|
||||
# c=0; spca=''; spc1=`expr 6 - ${#average}`; until [ ${c} = ${spc1} ]; do spca="${spca} "; c=`expr ${c} + 1`; done
|
||||
# if [ "${average}" == "" ]; then
|
||||
# averagedisp="${idsCL[Green]}"
|
||||
# elif [ $(bc -l <<< "${average} >= ${temp_warn}") -eq 1 ] && [ $(bc -l <<< "${average} < ${temp_crit}") -eq 1 ]; then
|
||||
# averagedisp="${idsCL[Yellow]}${average}"
|
||||
# elif [ $(bc -l <<< "${average} >= ${temp_crit}") -eq 1 ]; then
|
||||
# averagedisp="${idsCL[LightRed]}${average}"
|
||||
# else
|
||||
# averagedisp="${idsCL[Green]}${average}"
|
||||
# fi
|
||||
# fi
|
||||
#
|
||||
# if [ $(bc -l <<< "${temp_probe_f} >= ${temp_warn}") -eq 1 ] && [ $(bc -l <<< "${temp_probe_f} < ${temp_crit}") -eq 1 ]; then
|
||||
# lclr="${idsCL[Yellow]}"
|
||||
# lmd="WARNING "
|
||||
# elif [ $(bc -l <<< "${temp_probe_f} >= ${temp_crit}") -eq 1 ]; then
|
||||
# lclr="${idsCL[LightRed]}"
|
||||
# lmd="CRITICAL"
|
||||
# else
|
||||
# lclr="${idsCL[Green]}"
|
||||
# lmd="Normal "
|
||||
# fi
|
||||
# echo -en "${lclr}Normal ${spct}${temp_probe_f}${GAUGESH}"
|
||||
# [ "${average}" != "" ] && echo -en " /${spca}${averagedisp}${GAUGESH}"
|
||||
# echo -e "${spc}[${spcw}${idsCL[Yellow]}${temp_warn}${GAUGESH}${idsCL[Default]} /${spcc}${idsCL[LightRed]}${temp_crit}${GAUGESH}=>${idsCL[Default]} ]"
|
||||
#
|
||||
# fi
|
||||
else
|
||||
echo -e "${idsCL[Yellow]}Sensor Offline${idsCL[Default]}"
|
||||
fi
|
||||
|
||||
@@ -412,7 +412,7 @@ SHUTDOWN_SERVER(){
|
||||
MSG="Waiting for VM's, will then shutdown: ${PW_ESXI_HOST_NAMES[${ESXIHOST}]}"
|
||||
c=0; MSG_SPC=''; spc1=`expr ${HC_CW} - ${#MSG}`; until [ ${c} = ${spc1} ]; do MSG_SPC="${MSG_SPC} "; ((c++)); done
|
||||
echo -en "${idsCL[White]}${MSG//${PW_ESXI_HOST_NAMES[${ESXIHOST}]}/${idsCL[LightCyan]}${PW_ESXI_HOST_NAMES[${ESXIHOST}]}}${idsCL[White]}${MSG_SPC}: "
|
||||
if [ "${TEST}" != "true" ]; then
|
||||
if [ "${TEST^^}" != "TRUE" ] && [ "${TEST_DONOT_SHUTDOWN^^}" != "TRUE" ]; then
|
||||
if [ "$(ipmitool -I lanplus -H ${PW_HOST_IDRACS[${PW_ESXI_HOST_NAMES[${ESXIHOST}]}]} -U ${PW_ESXI_USER} -P "${PW_ESXI_PASS}" chassis power status | grep 'Power is on')" != "" ]; then
|
||||
MAINT_MODE_VERIFY_SHUTDOWN ${ESXIHOST} &
|
||||
echo -e "${idsCL[Green]}Continuing in background${idsCL[Default]}"
|
||||
|
||||
257
shutdown-test.sh
257
shutdown-test.sh
@@ -1,257 +0,0 @@
|
||||
SHUTDOWN_SERVER(){
|
||||
if [ "${1}" != "-h" ]; then
|
||||
HOST=${1}; MN=0
|
||||
if [ "${PW_iDRACHOST_SHORTNAMES[${HOST}]}" != "" ]; then
|
||||
tmp=${PW_iDRACHOST_SHORTNAMES[${HOST}]}
|
||||
ESXI_HOST=${PW_HOST_ADDRESSES[${tmp}]}
|
||||
elif [ "${PW_ESXI_HOST_NAMES[${HOST}]}" != "" ]; then
|
||||
ESXI_HOST=${HOST}
|
||||
elif [ "${PW_HOST_ADDRESSES[iDS-vMS-Host${HOST}]}" != "" ]; then
|
||||
ESXI_HOST=${PW_HOST_ADDRESSES[iDS-vMS-Host${HOST}]}
|
||||
elif ([ "${HOST::1}" == "o" ] || [ "${HOST::1}" == "O" ]) && [ "${PW_HOST_ADDRESSES[OFF-vMS-Host${HOST: -1}]}" != "" ]; then
|
||||
ESXI_HOST=${PW_HOST_ADDRESSES[OFF-vMS-Host${HOST: -1}]}
|
||||
elif [ "${PW_HOST_ADDRESSES[${HOST}]}" != "" ]; then
|
||||
ESXI_HOST=${PW_HOST_ADDRESSES[${HOST}]}
|
||||
elif [ "${1^^}" == "ALL" ] || [ "${1^^}" == "MAINSITE" ] || [ "${1^^}" == "OFFSITE" ] || [ "${1^^}" == "MAIN" ] || [ "${1^^}" == "SYS" ]; then
|
||||
ESXI_HOST=${HOST^^}
|
||||
MN=1
|
||||
else
|
||||
ESXI_HOST=''
|
||||
fi
|
||||
[ "${ESXI_HOST}" == "" ] && echo -e "Invalid host\n" && exit 1
|
||||
if [ "${PW_ESXI_HOST_NAMES[${ESXI_HOST}]}" != "" ]; then
|
||||
tmp=${PW_ESXI_HOST_NAMES[${ESXI_HOST}]}
|
||||
idracip=${PW_HOST_IDRACS[${tmp}]}
|
||||
hostname=${PW_iDRACHOST_SHORTNAMES[${idracip}]}
|
||||
fi
|
||||
fi
|
||||
|
||||
while [ $# -gt 0 ]; do
|
||||
case "$1" in
|
||||
-p|-power) POWER=${2}; MODE="power";;
|
||||
-e|-esxi) ESXI=${2}; MODE="esxi";;
|
||||
-h)
|
||||
echo -e "Usage: ${idsCL[Yellow]}pw host {host} {flags}${idsCL[Default]} {"
|
||||
width=35
|
||||
printf "%-${width}s- %s\n" " {host}" "(*required, can either be esxiIP,idracIP or Host#)"
|
||||
printf "%-${width}s- %s\n" " -p|-power {on / off}" "Controls Host Power"
|
||||
printf "%-${width}s- %s\n" " -e|-esxi {off / mm}" "Shuts down ESXi or puts into maintenance mode"
|
||||
echo -e "}\n"
|
||||
exit 0
|
||||
;;
|
||||
esac
|
||||
shift 1
|
||||
done
|
||||
|
||||
if [ ${MN} -eq 1 ]; then
|
||||
ESXI_HOSTS=PW_${ESXI_HOST}HOSTS[@]
|
||||
ESXI_HOSTS=(${!ESXI_HOSTS})
|
||||
[ "${ESXI_HOST}" == "ALL" ] && hostname="All Host Servers" || hostname="All ${ESXI_HOST} Host Servers"
|
||||
else
|
||||
ESXI_HOSTS=(${ESXI_HOST})
|
||||
hostname=${PW_ESXI_HOST_NAMES[${ESXI_HOST}]}
|
||||
fi
|
||||
|
||||
echo
|
||||
DIVIDER . yellow 75
|
||||
echo -e "${idsCL[Yellow]}Shutting down - ${hostname}${idsCL[Default]}"
|
||||
DIVIDER . yellow 75
|
||||
|
||||
if [ "${ESXI_HOSTS}" != "" ]; then
|
||||
if [ "${2}" == "maintenance" ]; then
|
||||
echo "($(date +'%Y-%m-%d %H:%M:%S')) - Putting ${hostname} into maintenance mode" >> ${PW_LOGFILE}
|
||||
else
|
||||
echo "($(date +'%Y-%m-%d %H:%M:%S')) - Shutting down ${hostname}" >> ${PW_LOGFILE}
|
||||
fi
|
||||
|
||||
if [ "${2}" != "maintenance" ] && ([ "${ESXI_HOST}" == "ALL" ] || [ "${ESXI_HOST}" == "OFFSITE" ] || [ "${ESXI_HOST}" == "MAINSITE" ]); then
|
||||
if [ "${ESXI_HOST}" == "ALL" ] || [ "${ESXI_HOST}" == "OFFSITE" ]; then
|
||||
MSG="Disabling CLS for the Offsite Cluster in vCenter"
|
||||
c=0; MSG_SPC=''; spc1=`expr ${HC_CW} - ${#MSG}`; until [ ${c} = ${spc1} ]; do MSG_SPC="${MSG_SPC} "; ((c++)); done
|
||||
echo -en "${idsCL[White]}${MSG}${MSG_SPC}: "
|
||||
if [ "${TEST}" != "true" ]; then
|
||||
run=$(ssh root@${PW_VCENTERHOST} "sed -i '/<domain-c105105>/{n;s/<enabled>.*<\/enabled>/<enabled>False<\/enabled>/}' /etc/vmware-vpx/vpxd.cfg >/dev/null 2>&1" >/dev/null 2>&1)
|
||||
echo -e "${idsCL[Green]}Done${idsCL[Default]}"
|
||||
touch ${PW_TMPFOLDER}/shutdown.cls.offsite
|
||||
else
|
||||
echo -e "${idsCL[Yellow]}(TEST MODE)${idsCL[Default]}"
|
||||
fi
|
||||
fi
|
||||
if [ "${ESXI_HOST}" == "ALL" ] || [ "${ESXI_HOST}" == "MAINSITE" ]; then
|
||||
MSG="Disabling CLS for the Primary Cluster in vCenter"
|
||||
c=0; MSG_SPC=''; spc1=`expr ${HC_CW} - ${#MSG}`; until [ ${c} = ${spc1} ]; do MSG_SPC="${MSG_SPC} "; ((c++)); done
|
||||
echo -en "${idsCL[White]}${MSG}${MSG_SPC}: "
|
||||
if [ "${TEST}" != "true" ]; then
|
||||
run=$(ssh root@${PW_VCENTERHOST} "sed -i '/<domain-c1001>/{n;s/<enabled>.*<\/enabled>/<enabled>False<\/enabled>/}' /etc/vmware-vpx/vpxd.cfg >/dev/null 2>&1" >/dev/null 2>&1)
|
||||
echo -e "${idsCL[Green]}Done${idsCL[Default]}"
|
||||
touch ${PW_TMPFOLDER}/shutdown.cls.mainsite
|
||||
else
|
||||
echo -e "${idsCL[Yellow]}(TEST MODE)${idsCL[Default]}"
|
||||
fi
|
||||
fi
|
||||
MSG="Restarting vCenter CLS Services"
|
||||
c=0; MSG_SPC=''; spc1=`expr ${HC_CW} - ${#MSG}`; until [ ${c} = ${spc1} ]; do MSG_SPC="${MSG_SPC} "; ((c++)); done
|
||||
echo -en "${idsCL[White]}${MSG}${MSG_SPC}: "
|
||||
if [ "${TEST}" != "true" ]; then
|
||||
ssh root@${PW_VCENTERHOST} "service-control --stop vmware-vpxd >/dev/null 2>&1 && service-control --start vmware-vpxd >/dev/null 2>&1" >/dev/null & 2>&1 &
|
||||
echo -e "${idsCL[Green]}Continuing in background${idsCL[Default]}"
|
||||
else
|
||||
echo -e "${idsCL[Yellow]}(TEST MODE)${idsCL[Default]}"
|
||||
fi
|
||||
echo
|
||||
fi
|
||||
|
||||
if [ "${ESXI_HOST}" == "10.10.2.10" ] || [ "${ESXI_HOST}" == "10.10.2.17" ] || [ "${ESXI_HOST}" == "MAIN" ] || [ "${ESXI_HOST}" == "MAINSITE" ] || [ "${ESXI_HOST}" == "ALL" ] || [ "${ESXI_HOST}" == "SYS" ]; then
|
||||
for ESXIHOST in "${PW_MAINSITEHOSTS[@]}"; do
|
||||
if [ "${ESXI_HOST}" == "10.10.2.10" ] || [ "${ESXI_HOST}" == "MAIN" ]; then
|
||||
MSG="Stopping iSCSI-PRI VM's on: ${PW_ESXI_HOST_NAMES[${ESXIHOST}]}"
|
||||
elif [ "${ESXI_HOST}" == "10.10.2.17" ] || [ "${ESXI_HOST}" == "SYS" ]; then
|
||||
MSG="Stopping iSCSI-SYS VM's on: ${PW_ESXI_HOST_NAMES[${ESXIHOST}]}"
|
||||
elif [ "${ESXI_HOST}" == "MAINSITE" ] || [ "${ESXI_HOST}" == "ALL" ]; then
|
||||
MSG="Stopping All iSCSI VM's on: ${PW_ESXI_HOST_NAMES[${ESXIHOST}]}"
|
||||
fi
|
||||
c=0; MSG_SPC=''; spc1=`expr ${HC_CW} - ${#MSG}`; until [ ${c} = ${spc1} ]; do MSG_SPC="${MSG_SPC} "; ((c++)); done
|
||||
echo -en "${idsCL[White]}${MSG//${PW_ESXI_HOST_NAMES[${ESXIHOST}]}/${idsCL[LightCyan]}${PW_ESXI_HOST_NAMES[${ESXIHOST}]}}${idsCL[White]}${MSG_SPC}: "
|
||||
if [ "${TEST}" != "true" ]; then
|
||||
if [ "${ESXI_HOST}" == "10.10.2.10" ] || [ "${ESXI_HOST}" == "MAIN" ]; then
|
||||
${PW_FOLDER}/esxi-scripts/iscsi-vm-shutdown.ps1 ${ESXIHOST} >/dev/null 2>&1 &
|
||||
elif [ "${ESXI_HOST}" == "10.10.2.17" ] || [ "${ESXI_HOST}" == "SYS" ]; then
|
||||
${PW_FOLDER}/esxi-scripts/iscsi-sys-vm-shutdown.ps1 ${ESXIHOST} >/dev/null 2>&1 &
|
||||
elif [ "${ESXI_HOST}" == "MAINSITE" ] || [ "${ESXI_HOST}" == "ALL" ]; then
|
||||
${PW_FOLDER}/esxi-scripts/iscsi-all-vm-shutdown.ps1 ${ESXIHOST} >/dev/null 2>&1 &
|
||||
fi
|
||||
sleep 5s
|
||||
echo -e "${idsCL[Green]}Commands sent${idsCL[Default]}"
|
||||
else
|
||||
echo -e "${idsCL[Yellow]}(TEST MODE)${idsCL[Default]}"
|
||||
fi
|
||||
done
|
||||
echo
|
||||
fi
|
||||
|
||||
for ESXIHOST in "${ESXI_HOSTS[@]}"; do
|
||||
MSG="Enabling maintenance mode on: ${PW_ESXI_HOST_NAMES[${ESXIHOST}]}"
|
||||
c=0; MSG_SPC=''; spc1=`expr ${HC_CW} - ${#MSG}`; until [ ${c} = ${spc1} ]; do MSG_SPC="${MSG_SPC} "; ((c++)); done
|
||||
echo -en "${idsCL[White]}${MSG//${PW_ESXI_HOST_NAMES[${ESXIHOST}]}/${idsCL[LightCyan]}${PW_ESXI_HOST_NAMES[${ESXIHOST}]}}${idsCL[White]}${MSG_SPC}: "
|
||||
if [ "${TEST}" != "true" ]; then
|
||||
${PW_FOLDER}/esxi-scripts/host-maintenance_mode.ps1 ${PW_VCENTER_HOST_NAMES[${ESXIHOST}]} >/dev/null 2>&1 &
|
||||
sleep 10s
|
||||
echo -e "${idsCL[Green]}Done${idsCL[Default]}"
|
||||
else
|
||||
echo -e "${idsCL[Yellow]}(TEST MODE)${idsCL[Default]}"
|
||||
fi
|
||||
done
|
||||
echo
|
||||
|
||||
if [ "${ESXI_HOST}" != "OFFSITE" ] && [ "${ESXI_HOST}" != "ALL" ] && [ "${ESXI_HOST}" != "MAINSITE" ]; then
|
||||
MSG="Starting iSCSI migrations"
|
||||
c=0; MSG_SPC=''; spc1=`expr ${HC_CW} - ${#MSG}`; until [ ${c} = ${spc1} ]; do MSG_SPC="${MSG_SPC} "; ((c++)); done
|
||||
echo -en "${idsCL[White]}${MSG}${MSG_SPC}: "
|
||||
if [ "${TEST}" != "true" ]; then
|
||||
sleep 20s
|
||||
echo -e "${idsCL[Green]}Done${idsCL[Default]}"
|
||||
else
|
||||
echo -e "${idsCL[Yellow]}(TEST MODE)${idsCL[Default]}"
|
||||
fi
|
||||
echo
|
||||
fi
|
||||
|
||||
if [ "${ESXI_HOST}" == "10.10.2.10" ] || [ "${ESXI_HOST}" == "10.10.2.17" ] || [ "${ESXI_HOST}" == "MAIN" ] || [ "${ESXI_HOST}" == "MAINSITE" ] || [ "${ESXI_HOST}" == "ALL" ] || [ "${ESXI_HOST}" == "SYS" ]; then
|
||||
for ESXIHOST in "${PW_MAINSITEHOSTS[@]}"; do
|
||||
MSG="Waiting for iSCSI VM's to power down on: ${PW_ESXI_HOST_NAMES[${ESXIHOST}]}"
|
||||
c=0; MSG_SPC=''; spc1=`expr ${HC_CW} - ${#MSG}`; until [ ${c} = ${spc1} ]; do MSG_SPC="${MSG_SPC} "; ((c++)); done
|
||||
echo -en "${idsCL[White]}${MSG//${PW_ESXI_HOST_NAMES[${ESXIHOST}]}/${idsCL[LightCyan]}${PW_ESXI_HOST_NAMES[${ESXIHOST}]}}${idsCL[White]}${MSG_SPC}: "
|
||||
if [ "${TEST}" != "true" ]; then
|
||||
if [ "${ESXI_HOST}" == "10.10.2.10" ] || [ "${ESXI_HOST}" == "MAIN" ]; then
|
||||
${PW_FOLDER}/esxi-scripts/iscsi-vm-shutdown-verify.ps1 ${ESXIHOST} >/dev/null 2>&1
|
||||
elif [ "${ESXI_HOST}" == "10.10.2.17" ] || [ "${ESXI_HOST}" == "SYS" ]; then
|
||||
${PW_FOLDER}/esxi-scripts/iscsi-sys-vm-shutdown-verify.ps1 ${ESXIHOST} >/dev/null 2>&1
|
||||
elif [ "${ESXI_HOST}" == "MAINSITE" ] || [ "${ESXI_HOST}" == "ALL" ]; then
|
||||
${PW_FOLDER}/esxi-scripts/iscsi-all-shutdown-verify.ps1 ${ESXIHOST} >/dev/null 2>&1
|
||||
fi
|
||||
echo -e "${idsCL[Green]}Done${idsCL[Default]}"
|
||||
else
|
||||
echo -e "${idsCL[Yellow]}(TEST MODE)${idsCL[Default]}"
|
||||
fi
|
||||
done
|
||||
|
||||
MSG="Shutting down iSCSI-Server(s)"
|
||||
c=0; MSG_SPC=''; spc1=`expr ${HC_CW} - ${#MSG}`; until [ ${c} = ${spc1} ]; do MSG_SPC="${MSG_SPC} "; ((c++)); done
|
||||
echo -en "${idsCL[White]}${MSG}${MSG_SPC}: "
|
||||
if [ "${TEST}" != "true" ]; then
|
||||
if [ "${ESXI_HOST}" == "10.10.2.10" ] || [ "${ESXI_HOST}" == "MAIN" ]; then
|
||||
${PW_FOLDER}/esxi-scripts/iscsi-server-shutdown.ps1 10.10.2.10 >/dev/null 2>&1 &
|
||||
elif [ "${ESXI_HOST}" == "10.10.2.17" ] || [ "${ESXI_HOST}" == "SYS" ]; then
|
||||
${PW_FOLDER}/esxi-scripts/iscsi-server-shutdown.ps1 10.10.2.17 >/dev/null 2>&1 &
|
||||
elif [ "${ESXI_HOST}" == "MAINSITE" ] || [ "${ESXI_HOST}" == "ALL" ]; then
|
||||
${PW_FOLDER}/esxi-scripts/iscsi-server-shutdown.ps1 10.10.2.10 >/dev/null 2>&1 &
|
||||
${PW_FOLDER}/esxi-scripts/iscsi-server-shutdown.ps1 10.10.2.17 >/dev/null 2>&1 &
|
||||
fi
|
||||
echo -e "${idsCL[Green]}Commands sent${idsCL[Default]}"
|
||||
else
|
||||
echo -e "${idsCL[Yellow]}(TEST MODE)${idsCL[Default]}"
|
||||
fi
|
||||
echo
|
||||
fi
|
||||
|
||||
for ESXIHOST in "${ESXI_HOSTS[@]}"; do
|
||||
MSG="Shutting down remaining VM's on: ${PW_ESXI_HOST_NAMES[${ESXIHOST}]}"
|
||||
c=0; MSG_SPC=''; spc1=`expr ${HC_CW} - ${#MSG}`; until [ ${c} = ${spc1} ]; do MSG_SPC="${MSG_SPC} "; ((c++)); done
|
||||
echo -en "${idsCL[White]}${MSG//${PW_ESXI_HOST_NAMES[${ESXIHOST}]}/${idsCL[LightCyan]}${PW_ESXI_HOST_NAMES[${ESXIHOST}]}}${idsCL[White]}${MSG_SPC}: "
|
||||
if [ "${TEST}" != "true" ]; then
|
||||
${PW_FOLDER}/esxi-scripts/vm-shutdown.ps1 ${ESXIHOST} >/dev/null 2>&1 &
|
||||
echo -e "${idsCL[Green]}Commands sent${idsCL[Default]}"
|
||||
else
|
||||
echo -e "${idsCL[Yellow]}(TEST MODE)${idsCL[Default]}"
|
||||
fi
|
||||
done
|
||||
echo
|
||||
|
||||
if [ "${2}" != "maintenance" ]; then
|
||||
for ESXIHOST in "${ESXI_HOSTS[@]}"; do
|
||||
MSG="Waiting for VM's, will then shutdown: ${PW_ESXI_HOST_NAMES[${ESXIHOST}]}"
|
||||
c=0; MSG_SPC=''; spc1=`expr ${HC_CW} - ${#MSG}`; until [ ${c} = ${spc1} ]; do MSG_SPC="${MSG_SPC} "; ((c++)); done
|
||||
echo -en "${idsCL[White]}${MSG//${PW_ESXI_HOST_NAMES[${ESXIHOST}]}/${idsCL[LightCyan]}${PW_ESXI_HOST_NAMES[${ESXIHOST}]}}${idsCL[White]}${MSG_SPC}: "
|
||||
if [ "${TEST}" != "true" ]; then
|
||||
MAINT_MODE_VERIFY_SHUTDOWN ${ESXIHOST} &
|
||||
echo -e "${idsCL[Green]}Continuing in background${idsCL[Default]}"
|
||||
else
|
||||
echo -e "${idsCL[Yellow]}(TEST MODE)${idsCL[Default]}"
|
||||
fi
|
||||
done
|
||||
echo
|
||||
|
||||
if [ "${ESXI_HOST}" == "10.10.2.10" ] || [ "${ESXI_HOST}" == "MAIN" ] || [ "${ESXI_HOST}" == "MAINSITE" ] || [ "${ESXI_HOST}" == "ALL" ]; then
|
||||
MSG="Waiting for iDS-vMS-iSCSI.scity.us to shutdown"
|
||||
c=0; MSG_SPC=''; spc1=`expr ${HC_CW} - ${#MSG}`; until [ ${c} = ${spc1} ]; do MSG_SPC="${MSG_SPC} "; ((c++)); done
|
||||
echo -en "${idsCL[White]}${MSG//iDS-vMS-iSCSI.scity.us/${idsCL[LightCyan]}iDS-vMS-iSCSI.scity.us${idsCL[White]}}${MSG_SPC}: "
|
||||
if [ "${TEST}" != "true" ]; then
|
||||
while ping -qw 10 -c3 "10.10.2.10">/dev/null 2>&1; do sleep 1; done
|
||||
echo -e "${idsCL[Green]}Done${idsCL[Default]}"
|
||||
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[White]}${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)
|
||||
echo -e "${idsCL[Green]}Done${idsCL[Default]}"
|
||||
else
|
||||
echo -e "${idsCL[Yellow]}(TEST MODE)${idsCL[Default]}"
|
||||
fi
|
||||
|
||||
fi
|
||||
[ "${ESXI_HOST}" != "10.10.2.10" ] && echo -e "\n${idsCL[LightCyan]}${hostname}${idsCL[White]} will be shutdown momentarily ... \n"
|
||||
touch ${PW_TMPFOLDER}/shutdown.${ESXI_HOST}
|
||||
else
|
||||
echo -e "\n${idsCL[LightCyan]}${hostname}${idsCL[White]} will be in maintenance mode momentarily ... \n"
|
||||
touch ${PW_TMPFOLDER}/maintmode.${ESXI_HOST}
|
||||
fi
|
||||
|
||||
else
|
||||
echo -e "${idsCL[LightRed]}Host cannot be found for '${1}'${idsCL[Default]}"
|
||||
fi
|
||||
echo
|
||||
}
|
||||
Reference in New Issue
Block a user