2.2. System Utilities

This section provides information on utilities that can be used to manage Virtuozzo Hybrid Server parameters.

2.2.1. prlsrvctl

The prlsrvctl command-line utility is used to perform management tasks on the hardware node and Virtuozzo Hybrid Server. The tasks include getting the Virtuozzo Hybrid Server information, modifying its preferences, installing a license, obtaining statistics and problem reports, and some others.

prlsrvctl [<command> [<options>]
          [-l, --login [<user>[:<passwd>]@]<server>[:<port>]]

Name

Description

<command>

The command to execute.

<options>

Command options. See individual commands for available options.

-l, --login

Connect to the remote hardware node and execute a command there. If this parameter is omitted, the command will be executed on the local server.

<user>

The name of the user used to log in to the remote server.

<passwd>

The user password. If the password is omitted, you will be prompted to enter it.

<server>:<port>

The remote server IP address or hostname and port number, If port number is omitted, the default port will be used.

Note

To display help, enter prlsrvctl on the command-line without any options.

2.2.1.1. prlsrvctl backup

The command is used to back up all virtual environments on the node.

prlsrvctl backup [-f,--full] [-i,--incremental]
                 [-s,--storage <user>[:<password>]@<server>[:<port>]]
                 [--description <desc>] [-u,--uncompressed]

Name

Description

-f,--full

Creates a full backup of each virtual environment on the node. A full backup contains all the virtual environment data.

-i,--incremental

Creates an incremental backup of each virtual environment on the node. An incremental backup contains only the files that were changed since the previous full or incremental backup. This is the default backup type.

-s,--storage <user>[:<password>]@<server>[:<port>]

The host to store backup images at.

--description <desc>

Adds a description to each virtual environment backup.

-u,--uncompressed

Does not compress backup images.

2.2.1.2. prlsrvctl info

Displays the hardware node and Virtuozzo Hybrid Server configuration information.

prlsrvctl info

The information returned by the info command includes the following:

  • Server ID and hostname.

  • Virtuozzo Hybrid Server version number.

  • Default directory for storing virtual machine files.

  • Virtuozzo Hybrid Server memory limits.

  • Virtuozzo Hybrid Server minimum allowable security level.

  • Default directory for storing virtual machine backups.

  • Virtuozzo Hybrid Server license information.

  • Server hardware configuration information.

  • Other miscellaneous info.

2.2.1.3. prlsrvctl net

The prlsrvctl net command is used to create and configure virtual networks.

Subcommands

Name

Description

net add

Creates a new virtual network

net set

Configures the parameters of an existing virtual network.

net del

Removes an existing virtual network.

net list

List the available virtual networks.

net add

Creates a new virtual network.

prlsrvctl net add <vnetwork_ID> [-i, --ifname <if>] [-m, --mac <mac_address>]
                  [-t, --type <bridged|host-only>] [-d, --description <desc>]
                  [--ip <IP_address>[/<mask>]] [--dhcp-server <on|off>]
                  [--dhcp-ip <IP_address>] [--ip-scope-start <IP_address>]
                  [--ip-scope-end <IP_address>] [--ip6 <IP_address>[/</emphasis><mask>_]]
                  [--dhcp6-server <on|off>] [--dhcp-ip6 <IP_address>]
                  [--ip6-scope-start <IP_address>] [--ip6-scope-end <IP_address>]

Name

Description

<vnetwork_ID>

A user-defined name that will identify the new virtual network.

-i, --ifname <if>

The name of a physical network adapter on the hardware node to which this virtual network should be bound.

-m, --mac <mac_address>

The MAC address of a virtual network adapter on the hardware node to which this virtual network should be bound.

-t, --type <bridged|host-only>

The type of the virtual network to create. Possible values are:

  • bridged. A virtual machine and container connected to this type of virtual network appears as an independent computer on the network.

  • host_only (default). A virtual machine and container connected to this type of virtual network can access only the hardware node and the virtual machines and containers connected to the same virtual network.

-d, --description <desc>

A user-defined description of the virtual network. Descriptions with white spaces must be enclosed in quotation marks.

--ip <IP_address>[/<mask>] --ip6 <IP_address>[/<mask>]

Set an IPv4/IPv6 address and subnet mask for the Virtuozzo Hybrid Server virtual adapter.

--dhcp-server <on|off> --dhcp6-server <on|off>

Enable or disable the Virtuozzo Hybrid Server virtual DHCPv4/DHCPv6 server.

--dhcp-ip <IP_address> --dhcp-ip6 <IP_address>

Set an IPv4/IPv6 address for the Virtuozzo Hybrid Server virtual DHCPv4/DHCPv6 server.

--ip-scope-start <IP_address> --ip-scope-end <IP_address> --ip6-scope-start <IP_address> --ip6-scope-end <IP_address>

Set the starting and ending IPv4/IPv6 addresses for the DHCPv4/DHCPv6 pool. The virtual machines and containers connected to the network you are creating will automatically receive their IPv4/IPv6 addresses from the respective DHCPv4/DHCPv6 pool.

net set

Configures the settings of an existing virtual network.

prlsrvctl net set <vnetwork_ID> [-i, --ifname <if>] [-m, --mac <mac_address>]
                  [-t, --type <bridged|host-only>] [-d, --description <desc>]
                  [--ip <IP_address>[/<mask>]] [--dhcp-server <on|off>]
                  [--dhcp-ip <IP_address>] [--ip-scope-start <IP_address>]
                  [--ip-scope-end <IP_address>] [--ip6 <IP_address>[/</emphasis><mask>_]]
                  [--dhcp6-server <on|off>] [--dhcp-ip6 <IP_address>]
                  [--ip6-scope-start <IP_address>] [--ip6-scope-end <IP_address>]

Name

Description

<vnetwork_ID>

The name of the virtual network to modify.

-i, --ifname <if>

The name of a physical network adapter on the hardware node to which this virtual network should be bound.

-m, --mac <mac_address>

The MAC address of a virtual network adapter on the hardware node to which this virtual network should be bound.

-t, --type <bridged|host-only>

The type of the virtual network to modify. Possible values are:

  • bridged. A virtual machine and container connected to this type of virtual network appears as an independent computer on the network.

  • host_only (default). A virtual machine and container connected to this type of virtual network can access only the hardware node and the virtual machines and containers connected to the same virtual network.

-d, --description <desc>

A user-defined description of the virtual network. Descriptions with white spaces must be enclosed in quotation marks.

--ip <IP_address>[/<mask>] --ip6 <IP_address>[/<mask>]

Set an IPv4/IPv6 address and subnet mask for the Virtuozzo Hybrid Server virtual adapter.

--dhcp-server <on|off> --dhcp6-server <on|off>

Enable or disable the Virtuozzo Hybrid Server virtual DHCPv4/DHCPv6 server.

--dhcp-ip <IP_address> --dhcp-ip6 <IP_address>

Set an IPv4/IPv6 address for the Virtuozzo Hybrid Server virtual DHCPv4/DHCPv6 server.

--ip-scope-start <IP_address> --ip-scope-end <IP_address> --ip6-scope-start <IP_address> --ip6-scope-end <IP_address>

Set the starting and ending IPv4/IPv6 addresses for the DHCPv4/DHCPv6 pool. The virtual machines and containers connected to the network you are creating will automatically receive their IPv4/IPv6 addresses from the respective DHCPv4/DHCPv6 pool.

net del

Deletes an existing virtual network.

prlsrvctl net del <vnetwork_ID>

Name

Description

<vnetwork_ID>

The name of the virtual network to delete.

net list

Lists the existing virtual networks.

prlsrvctl net list

2.2.1.4. prlsrvctl problem-report

Generates and displays problem reports.

prlsrvctl problem-report

The command collects technical data about Virtuozzo Hybrid Server and the hardware node and displays the report on screen (the output can also be piped to a file). The report can then be directed to the Virtuozzo technical support team for analysis.

2.2.1.5. prlsrvctl set

Configures Virtuozzo Hybrid Server preferences.

prlsrvctl set [-s, --min-security-level <low|normal|high>]
              [--mng-settings <allow|deny>]
              [--device <device> --assignment <host|vm>_]
              [--backup-storage [<user>[:<passwd>]@]<server>[:<port>]]
              [--backup-tmpdir <path>] [--backup-path <path>]
              [--backup-mode <push|push-with-reversed-delta>]
              [--idle-connection-timeout <timeout>]
              [--verbose-log <on|off>] [--cluster-mode <on|off>]
              [--cpu-features-mask <{+|-}feature1,feature2=value[,...]>]
              [--vm-cpulimit-type <full|guest>]
              [--vcmmd-policy <density|performance>]
              [--vnc-ssl-certificate <path> --vnc-ssl-key <path>]

Name

Description

-s, --min-security-level <low|normal|high>

The lowest allowable security level that can be used to connect to the hardware node. The following options are available:

  • low, plain TCP/IP (no encryption).

  • normal, most important data is sent and received using SSL

    over TCP/IP (user credentials during login, guest OS clipboard, etc.) Other data is sent and received using plain TCP/IP with no encryption.

  • high, all of the data is sent and received using SSL.

--mng-settings <allow|deny>

Grants or denies permission to new users to modify Virtuozzo Hybrid Server preferences. By default, only administrators of the host OS can modify Virtuozzo Hybrid Server preferences. When a new user profile is created (this happens when a user logs in to the hardware node for the first time), he/she will be granted or denied this privilege based on the default setting. This parameter allows you to set that default setting. Please note that this parameter only affects new users (the users that will be created in the future). The profiles of the existing users will not be modified.

--device <device> --assignment <host|vm>

Allows to set the assignment mode for the specified VTd device. The following options are available:

  • host, assign the device to the hardware node.

  • vm, assign the device to virtual machines.

--backup-storage <server>[:<port>]

The default backup server where to store virtual machine backups.

Requires RSA authentication to be set up. See Setting Up RSA Authentication Between Nodes.

--backup-path <path>

The name and path of the default directory on the backup server where to store virtual machine backups.

--verbose-log <on|off>

Turns the verbose output for the command on or off.

--cluster-mode <on|off>

Turns the cluster mode on or off.

--idle-connection-timeout <timeout>

Sets a timeout interval in seconds after which, if no data has been received from the storage server or backup client, the process of backup/restore is terminated.

--backup-tmpdir <path>

Sets the directory for temporary snapshots created during backup. If this directory is set without setting the backup mode as well, and if the value is not empty, the backup mode automatically switches to push-with-reversed-delta with a corresponding warning.

--backup-mode <push|push-with-reversed-delta>

Sets the backup mode. If both the backup-mode and backup-tmpdir options are set, the latter has higher priority. If only backup-tmpdir is set, the backup mode switches to push-with-reversed-delta.

--cpu-features-mask <{+|-}feature1,feature2=value[,...]>

Changes CPU features mask on the host. To mask/unmask features, use the +feature/-feature syntax respectively. Omitting the sign is equvalent to unmasking. Features that require specific value can be set using the feature=value syntax. To view a full list of host CPU features which are supported, unmaskable and already masked, run the prlsrvctl info --full command.

Note the following:

  • Only Intel Ivy Bridge and newer CPUs are supported. AMD processors are not supported.

  • All virtual machines and containers on the host must be stopped.

  • You can change CPU features mask only for physical servers.

--vm-cpulimit-type <full|guest>

Specifies the type of virtual machine threads to be affected by the CPU limit:

  • full (default) - both hardware emulation and guest OS threads

    are limited.

  • guest - only guest OS threads are limited.

With the guest option, the guest OS is guaranteed to have all the resources implied by the VM configuration. At the same time, the VM’s hardware emulation threads spend additional resources of the host. For example, for a VM with two 2.8 GHz vCPUs, switching to guest means that VM’s guest applications will have all the resources of two 2.8 GHz vCPUs at their disposal.

Note the following:

  • Some types of guest applications, like voice-over-IP software, significantly increase expenses on hardware emulation threads.

  • After changing this parameter, restart running virtual machines for the changes to take effect.

--vcmmd-policy <density|performance>

Switches the automatic memory management policy on the host:

  • performance (default), used for nodes without memory

    overcommit.

  • density, recommended for nodes with memory overcommit.

Note

Before setting a policy, make sure there are no running virtual machines or containers on the host.

--vnc-ssl-certificate <path> --vnc-ssl-key <path>

Names and paths of SSL certificate file and key used to encrypt VNC connections on the node. To disable VNC encryption, specify empty arguments (e.g., ‘’).

2.2.1.6. prlsrvctl usb

The prlsrvctl usb command is used to permanently assign a USB device to a specific virtual machine. This functionality works only with virtual machines (not containers).

Subcommands

Name

Description

usb list

Lists USB devices connected to the server together with the information about their virtual machine assignments for the current user.

usb set

Permanently assigns a USB device to the specified virtual machine.

usb del

Removes a previously created USB device assignment.

usb list

Lists the USB devices connected to the physical server.

prlsrvctl usb list

Returns a list of USB devices in tabular format with the following columns:

  • Name - the USB device name.

  • ID - a string that uniquely identifies the USB devices on the physical server. The ID never changes even if the device is disconnected from the server and then reconnected again. Please note that if a device ID is listed in quotes, they are a part of the ID and must be included in other calls that use it as an input parameter.

  • VM UUID - a universally unique ID of the virtual machine to which this USB device is permanently assigned. If a USB device is not assigned to any virtual machine, this column will be empty.

usb set

Permanently assigns a USB device to the specified virtual machine. A permanently assigned USB device will be connected to the virtual machine automatically every time you start this virtual machine and connect the device to the hardware node. This functionality works only with virtual machines (not containers).

prlsrvctl usb set <usb_dev_ID> <VM_UUID>

Name

Description

<usb_dev_ID>

The USB device ID. To obtain the list of USB devices connected to the server use the usb list command.

<VM_UUID>

The UUID of the virtual machine to which to assign the USB device.

usb del

Deletes a USB device assignment previously created with the usb set command.

prlsrvctl usb del <usb_dev_ID>

Name

Description

<usb_dev_ID>

The USB device ID. To see the current USB device assignments for the current user use the usb list command.

2.2.1.7. prlsrvctl user list

Displays the list of Virtuozzo Hybrid Server users. Only those users are displayed who has created at least one virtual machine and container.

prlsrvctl user list [-o, --output <name|mng_settings|def_vm_home>]

Name

Description

-o, --output <name|mng_settings|def_vm_home>

Fields to include in the output. The following fields are available:

  • name, user name.

  • mng_settings, indicates whether the user is allowed to modify

    Virtuozzo Hybrid Server preferences.

  • def_vm_home, user’s default virtual machine folder.

The fields must be specified in lowercase.

2.2.1.8. prlsrvctl user set

Configures the profile of the user currently logged in to the Virtuozzo Hybrid Server server.

prlsrvctl user set [--def-vm-home <path>]

Name

Description

--def-vm-home <path>

The default virtual machine and container directory name and path.

2.2.1.9. prlsrvctl cttemplate

The prlsrvctl cttemplate command is used to manage OS and application EZ templates for containers on the Virtuozzo Hybrid Server server.

list

Lists all the OS and application templates installed on the server.

prlsrvctl cttemplate list

copy

Copies the specified OS or application template from the local server to the destination server. To copy an application EZ template, additionally specify the os_template_name parameter.

prlsrvctl cttemplate copy <dst_node> <name> [<os_template_name>] [-f, --force]

Name

Description

<name>

OS or application template name.

<os_template_name>

OS template name. Required for copying application templates.

<dst_node>

Destination server specified in the format [<user>[:<password>]@]<server>[:<port>].

-f, --force

Specifies whether all validation checks should be skipped.

remove

Removes the specified OS or application template from the server.

prlsrvctl cttemplate remove <name> [<os_template_name>]

Name

Description

<name>

OS or application template name.

<os_template_name>

OS template name. Required for deleting application templates.