May 28th, 2011

  • nil59

virsh list extention

писал скрипт для себя, но вдруг еще кому пригодится.

Скрипт использует virsh, выдает список гостевых доменов со следующей информацией:
имяДомена статус(running/shutoff) автостарт(on/off) vnc-порт списокIPАдресовЧерезЗапятую

Где берутся первые 4 параметра - понятно, мне просто захотелось иметь их на одном экране.

Со списком адресов сложнее.
1) из описания виртуалки выдирается список MAC-ов и соответствующих им бриджей.
2) MAC-и ищутся в arp-кеше, выбираются соответствующие IP
3) если в arp-кеше ничего не нашлось, то
4) с соответствующего бриджа берется ip и маска (если бридж без адреса - определить ничего не получится, да)
5) по всему подключенному диапазону делается пинг, один адрес за другим, да. таймаут на пинге там 10мс, пинг по /24 идет секунды 3.
6) снова проверяется arp-кеш

Способ варварский, чего уж там. Если есть предложения по улучшению - с радостью приму.

из нестандартных утилит используется fping - за умение задавать короткий таймаут.

Основное место жизни скрипта - http://www.djarvur.net/products/howtos-and-other-docs/virsh, но под катом - он же.

Предложения по улучшению приветствуются.

Да, еще разыскивается веб-морда с функциональностью virt-manager. Гугл предлагает все каких-то монстров...

Collapse )