Mgrctl is a utility that is used for performing operations with a control panel and calling its functions from the command line. The default location of the utility is /usr/local/mgr5/sbin/mgrctl.

Syntax


/usr/local/mgr5/sbin/mgrctl [-m <manager>] [-u | -i [lang=<language>] | -l | [[-o <output format>] [-R | <funcname> [[<param>=<value>] ...]] [[-e ‘<param>=$<ENV_NAME>’] ...]]] 
BASH

-m <manager> - a short name of a control panel associated with the command. Enter a short name after the key: 

  • core — COREmanager;
  • billmgr — BILLmanager;

  • vmmgr — VMmanager KVM or Cloud;

  • vemgr — VMmanager OVZ;

  • dcimgr — DCImanager;

  • dcimini — DCImanager location;
  • ipmgr — IPmanager;

  • dnsmgr — DNSmanager.

-i — brief information about the functions of the control panel.  If the function <funcname> is specified, brief information about all its parameters will be displayed. If the parameter lang is specified, the information on a selected language <language> will be displayed. Possible values:ru, en. The default value is ru.

-o <output format> — information output format. Possible values: text,xml, devel,json. The default value is text.

-l — suspend a control panel. The panel is suspended with the function exit. It cannot be restarted. 

Note.

Suspending COREmanager will also suspend all the control panels on the server. Activating COREmanager will activate all the panels as well.

-u — resume the control panel that has been suspended with the -l key. 

Note. h

The control panels won't be activated if:

  1. The command mgrctl -m <manager> -l was executed to suspend several control panels on the server including COREmanager.
  2. COREmanager was activated with the command mgrctl -m core -u.

-R — restart the control panel before the function is executed. 

<funcname> —a function name. 

<param>=<value> — function parameter and its value. 

-e ‘<param>=$<ENV_NAME>’  — parameters conveyed via environment variables.

Conveying parameters via environment variables


Note

The feature is available in COREmanager version 5.325 and higher.

To convey secret data in mrgctl parameters, you can use environment variables. Run the utility with the parameter

 -e ‘<param>=$<ENV_NAME>’
BASH

<param> — parameter name

<ENV_NAME> — environment variable name

Note

Put a $ sign in front of the variable name and escape the <param>=$<ENV_NAME> argument.

Example of conveying a password

  1.   Set the password value in the SECRET_PASSWORD environment variable: 

    export SECRET_PASSWORD=secret
    BASH
  2.   Create an FTP user in BILLmanager:

    /usr/local/mgr5/sbin/mgrctl -m billmgr ftp.user.edit name=ftpuser home=/ owner=www-root -e 'passwd=$SECRET_PASSWORD' sok=ok
    BASH

Examples


General examples 

Terminate the control panel

/usr/local/mgr5/sbin/mgrctl -m <manager> exit
BASH

Retrieve a list of all the mgrctl functions for the control panel

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

Retrieve a list of parameters of a certain function

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

Examples for BILLmanager

Disable the tariff plan

/usr/local/mgr5/sbin/mgrctl -m billmgr pricelist.suspend elid=<id>
BASH

<id> — the tariff identifier

Examples for VMmanager KVM and Cloud

Stop virtual machines

/usr/local/mgr5/sbin/mgrctl -m vmmgr vm.stop elid=<id1>,<id2>
BASH
<id1>, <id2> — VM identifier.

Stop all virtual machines

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
BASH

Retrieve the names of all running virtual machines

/usr/local/mgr5/sbin/mgrctl -m vmmgr vm | grep running | awk '{print $2}' | awk -F= '{print $2}'
BASH

Examples for VMmanager OVZ

Restart the container

/usr/local/mgr5/sbin/mgrctl -m vemgr vm.restart elid=<id>
BASH

<id> — the VM identifier.

Retrieve a list of all OS templates

/usr/local/mgr5/sbin/mgrctl -m vemgr osmgr | sed 's/=/ /g' | awk '{print $4}'
BASH

Install/Update OS templates

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
BASH

Examples for DCImanager

Retrieve the names of all the servers located in the rack

/usr/local/mgr5/sbin/mgrctl -m dcimgr server su=<admin> | grep '<rack>' | awk '{print $2}' | awk -F= '{print $2}'
BASH

<admin> — administrator name in DCImanager.

<rack> — a rack name.

Create a control panel administrator

/usr/local/mgr5/sbin/mgrctl -m dcimgr user.edit name=<admin> level=lvAdmin passwd=<pass> confirm=<pass> sok=ok
BASH

<admin> — administrator name

<pass> — administrator password

Examples for IPmanager

Statistics on allocated IP addresses

/usr/local/mgr5/sbin/mgrctl -m ipmgr permstat
BASH

Examples for DNSmanager

Updates domain names of slave servers

/usr/local/mgr5/sbin/mgrctl -m dnsmgr domain.refresh elid=<domain>
BASH

<domain> — a domain name.

Updated data for all the user's domains

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
BASH

<user> — a User name in DNSmanager