Reklama

Virtualbox: kontrola funkčnosti VM a automatický start

(Čtení tohoto článku zabere přibližně: 1 minutu.)

Dnes jsem řešil zajímavý problém - náhodně se nám vypíná virtuální počítač (VM) a musíme ho pak ručně startovat. Je to otrava a hlavně se VM vypíná v tu nejméně vhodnou dobu. Proto jsem napsal jednoduchý script v bashi pro kontrolu VM a automatické spuštění při výpadku.

Script, zkontroluje, zda VM běží. Pokud ne, nastartuje ho a pošle o tom informační email. I když v bashi moc nedělám, tak tento scriptík se povedl (v jednoduchosti je síla). Proto jsem se rozhodl jej zde zveřejnit.

CODE

#!/bin/bash

declare -a vm
vm[0]='VM1'
vm[1]='VM2'
vm[2]='VM3'

for i in "${vm[@]}"; do
    status=$(/usr/bin/vboxmanage showvminfo "${i}" | /bin/grep -c "running (since")
    if [ $status -eq 0 ]; then
        /usr/bin/vboxmanage startvm "${i}" --type headless
        /usr/bin/mail -s "subject" info@valeas.cz <<< "Zapinam VM ${i}"
    fi;
done

 

  • Pole vm definuje, které VM se mají tímto scriptem monitorovat
    (záměrně nekontrolujeme všechny VM, jelikož na serveru mohou být i různé testovací instalace, které se zapínají pouze vyjímečně)
  • Email zasílám čistě informativně, abych byl informován o výpadku
  • Script se spouští přes CRON každou minutu
    (proto jsou zde uvedeny kompletní cesty)

Programátor... občas normální, častěji tak trochu blázen.

Internetová stránka: www.valeas.cz

 

Zanechat komentář

Ujistěte se, že zadáte požadované informace, tam kde je vyznačeno (*). Kód HTML není povolen.