Mgrctl

Материал из ISPWiki
Перейти к: навигация, поиск

Mgrctl - утилита, доступная во всех наших продуктах, для вызова функций панелей из shell.

Находится по пути

/usr/local/mgr5/sbin/mgrctl

Синтаксис

/usr/local/mgr5/sbin/mgrctl [-m <manager>] [-u | -i | -l | [[-o <output format>] [-R | funcname [[param=value] ...]]]
-m <manager> - краткое названием панели управления (ispmgr, billmgr, vmmgr, vemgr, dcimgr, ipmgr, dnsmgr).
-i [funcname [lang=ru]] - краткая информация о всех возможных функциях или информация о всех возможных параметрах выбранной функции.
-o <output format> - режим вывода; возможные значения: text, xml, devel, json. По умолчанию - text.
-l - приостановить работу панели управления
-u - возобновить работу панели управления, приостановленной при помощи ключа -l

Приостановка работы панели подразумевает выключение панели (вызовом функции "exit"). Также блокируется возможность ее повторного запуска.

Если приостанавливается работа CORE - приостанавливается работа всех панелей. Возобновление работы CORE не подразумевает восстановление работы остальных панелей, если они были приостановлены самостоятельно командой mgrctl -m panel -l.

Список всех допустимых функций mgrctl можно получить командой

/usr/local/mgr5/sbin/mgrctl -m <manager> -i

Список параметров определеноой функции можно получить командой

/usr/local/mgr5/sbin/mgrctl -m <manager>  -i funcname lang=ru

Примеры использования

  • Перезапуск любой панели
/usr/local/mgr5/sbin/mgrctl -m <manager> exit

Для ISPmanager

Описание всех доступных функций и их параметров находится здесь. или mgrctl -m ispmgr -i

  • Получить список всех Web доменов
/usr/local/mgr5/sbin/mgrctl -m ispmgr webdomain  | sed 's/=/ /' | awk '{print $2}'
  • Получить список всех Web доменов, принадлежащих определенному пользователю
/usr/local/mgr5/sbin/mgrctl -m ispmgr webdomain  su=user  | sed 's/=/ /' | awk '{print $2}'
  • Обновить все домены на внешних серверах имен
for i in `/usr/local/mgr5/sbin/mgrctl -m ispmgr webdomain | awk '{print $1}' | awk -F = '{print $2}'`; do /usr/local/mgr5/sbin/mgrctl -m ispmgr domain.fix elid=$i;done
  • Отключить php для всех доменов
for i in `/usr/local/mgr5/sbin/mgrctl -m ispmgr webdomain | awk '{print $1}' | awk -F = '{print $2}'`; do /usr/local/mgr5/sbin/mgrctl -m ispmgr webdomain.edit php=off elid=$i sok=ok;done

Для VMmanager OVZ

Описание всех доступных функций и их параметров находится здесь. или mgrctl -m vemgr -i

  • Перезапустить контейнер
/usr/local/mgr5/sbin/mgrctl -m vemgr vm.restart elid=<id_контейнера>
  • Получить список всех доступных Шаблонов ОС
/usr/local/mgr5/sbin/mgrctl -m vemgr osmgr | sed 's/=/ /g' | awk '{print $4}'
  • Установить/Обновить все доступные шаблоны ОС
for i in `/usr/local/mgr5/sbin/mgrctl -m vemgr osmgr | sed 's/=/ /g' | awk '{print $2}'`; do /usr/local/mgr5/sbin/mgrctl -m vemgr osmgr.install elid=$i sok=ok;done

Для VMmanager KVM

Описание всех доступных функций и их параметров находится здесь. или mgrctl -m vmmgr -i

  • Остановить виртуальные машины
/usr/local/mgr5/sbin/mgrctl -m vmmgr vm.stop elid=id1,id2,....
  • Остановить все виртуальные машины
for i in `/usr/local/mgr5/sbin/mgrctl -m vmmgr vm | awk '{print $1}' | awk -F= '{print $2}'`; do /usr/local/mgr5/sbin/mgrctl -m vmmgr vm.stop elid=$i; done
  • Получить названия всех запущенных виртуальных машин
/usr/local/mgr5/sbin/mgrctl -m vmmgr vm | grep running | awk '{print $2}' | awk -F= '{print $2}'

Для DNSmanager

Описание всех доступных функций и их параметров находится здесь. или mgrctl -m dnsmgr -i

  • Обновить данные домена domain.com на ведомом сервере
/usr/local/mgr5/sbin/mgrctl -m dnsmgr domain.refresh elid=domain.com
  • Обновить данные всех доменов владельца user
for i in `/usr/local/mgr5/sbin/mgrctl -m dnsmgr domain su=user | awk '{print $4}' | awk -F= '{print $2}'`; do /usr/local/mgr5/sbin/mgrctl -m dnsmgr domain.refresh elid=$i;done

Для IPmanager

Описание всех доступных функций и их параметров находится здесь. или mgrctl -m ipmgr -i

  • Получить статистику по выданным ip адресам
/usr/local/mgr5/sbin/mgrctl -m ipmgr permstat

Для DCImanager

Описание всех доступных функций и их параметров находится здесь. или mgrctl -m dcimgr -i

  • Получить названия всех серверов, находящихся в стойке 'RAC 5'
/usr/local/mgr5/sbin/mgrctl -m dcimgr server su=admin | grep 'RAC 5' | awk '{print $2}' | awk -F= '{print $2}'