VMware ESXi a UPS

Narazil jsem na zajímavé informace ohledně APC UPS připojených k VMWare ESXi 6.0 pomocí USB portu. Myšlenka je založena na tom, že UPS je připojená k virtuálnímu serveru s Ubuntu a na něm je nainstalován program apcupsd. Tento program potom komunikuje pomocí programu plink (SSH protokol) s VMware ESXi a provede jeho vlastní vypnutí. V popisu k apcupsd je uvedena i konfigurace pro Webmin. Instalace plink-u se provede instalací balíku putty-tools.

Odkazy:
balíček apcupsd pro Ubuntu
Setup UPS on Ubuntu server
Shutting Down ESXi and VMs During a Power Failure

Základní nastavení

Základem je nastavení automatického spuštění virtuálních strojů v nastavení VMware ESXi a povolený SSH server. Dále musíme přiřadit USB zařízení k danému linuxovému VM. To provedeme ve vlastnostech VM. Budu popisovat instalaci a nastavení pro Ubuntu 16.04 LTS.

Instalace balíčků

Ve vybraném VM spustíme instalaci balíčku apcupsd

apt-get -y install apcupsd

pro jistotu provedeme zálohu originální konfigurace

cp /etc/apcupsd/apcupsd.conf /etc/apcupsd/apcupsd.conf.bak

otevřeme konfiguraci apcupsd pro editaci

nano /etc/apcupsd/apcupsd.conf

nastavíme požadované vlastnosti

UPSNAME Back-UPS-950
UPSCABLE usb
UPSTYPE usb
DEVICE
POLLTIME 60
NETSERVER on
NISIP 0.0.0.0

provedeme záloh další konfigurace

cp /etc/default/apcupsd /etc/default/apcupsd.bak

otevřeme konfiguraci pro editaci

nano /etc/default/apcupsd

nastavíme novou hodnotu vybrané vlastnosti

 ISCONFIGURED=yes

restartujeme službu apcupsd

systemctl restart apcupsd

Aby bylo možné zobrazit stav UPS, je nejprve zapotřebí zastavit službu apcupsd

systemctl stop apcupsd

zobrazíme si stav služby apcupsd v terminálu. To provedeme zadáním příkazu

apcaccess status

Tento příkaz zadáme taky po restartu serveru, aby se nám správně načetly konfigurace. Test UPS provedeme zadáním příkazu

apctest

po ukončení testů je třeba opět spustit službu apcupsd příkazem

systemctl start apcupsd

Zobrazení stavu UPS

Pro zobrazení stavu UPS použijeme webserver Apache s povoleným modulem cgi. Instalaci provedeme příkazem
apt-get -y install apcupsd-cgi
a zobrazíme na adrese
http://ip-adresa-serveru/cgi-bin/apcupsd/multimon.cgi
Pokud máme nainstalován Webmin, tak provedeme zkopírování obsahu z /usr/lib/cgi-bin/apcupsd/ do /etc/apcupsd/ příkazem
cp /usr/lib/cgi-bin/apcupsd/*.cgi /etc/apcupsd/
Přihlásíme se do Webmina a ve Webmin / Konfigurace / Moduly / Instalovat
zvolíme Modul třetích stran z a zadáme
http://diego.caravana.to/wp-content/apcupsd0.812.wbm.gz
a pokračujeme Instalovat modul ze souboru. Nový modul se nám objeví v sekci Ostatní.

Vypnutí ESXi během výpadku napájení

Na VM s Ubuntu nainstalujeme putty-tools
apt-get -y install putty-tools
pro test komunikace mezi Ubuntu a ESXi spustíme příkaz
plink -ssh -2 -pw password root@ip-adresa-ESXi "ls /tmp"
tento příkaz se nás nejprve zeptá na uložení klíče a potom by nám měl vypsat soubory ve složce /tmp na ESXi.
Dále upravíme soubor /etc/apcupsd/apccontrol
nano /etc/apcupsd/apccontrol
a najdeme sekci

doreboot)
    echo "UPS ${2} initiating Reboot Sequence" | ${WALL}
    ${SHUTDOWN} -r now "apcupsd UPS ${2} initiated reboot"
;;
doshutdown)
    echo "UPS ${2} initiated Shutdown Sequence" | ${WALL}
    ${SHUTDOWN} -h now "apcupsd UPS ${2} initiated shutdown"
 ;;

kde do sekce doshutdown) vložíme další dva řádky

doshutdown)
    echo "UPS ${2} initiated Shutdown Sequence" | ${WALL}
    ${SHUTDOWN} -h now "apcupsd UPS ${2} initiated shutdown"
    echo "****** Executing ESXi Shutdown Command ******" | ${WALL}
    plink -ssh -2 -pw heslo-vmware root@ip-adresa-vmware "/sbin/shutdown.sh && /sbin/poweroff"
;;

Napsat komentář

Vaše e-mailová adresa nebude zveřejněna. Vyžadované informace jsou označeny *