LVE Manager

LVE Manager is a plugin for most popular control panels including cPanel, Plesk, DirectAdmin and ISPmanager (InterWorx coming soon). It allows you to control and monitor limits, and set limits on per package bases.

LVE Manager is installed by default on most servers. If it is missing you can always install it by running:

$ yum install lvemanager

Dashboard

Note

Available starting from LVE Manager Beta version 4.0-26.8

CloudLinux dashboard provides a quick overview of statistics and all administrative information for server administrators.

Go to LVE Manager | Dashboard.

The Cloudlinux Dashboard provides the following information:

  • End Users hitting limits — number of users reaching their limit in any kind of resource. Data is within the last 24 hours.
  • Resellers hitting limits —  number of enrolled Resellers that are reaching their limit in any kind of resource. Data is within the last 24 hours.
  • Node.js Selector block displays the following data:
    • Node.js Selector status (Enabled/Disabled/Not installed) —  displays a current status of the Node.js Selector.

      • To manage Node.js Selector, click Manage. You will be redirected to LVE Manager | Options | Node.js Selector.

      • Click Install to install Node.js Selector, you will be redirected to LVE Manager | Options | Node.js.Selector.

    • Default version — the current default version of Node.js set in your system. Click Manage to change the default version account wide.

    • Applications —  number of installed/all applications for the account.

  • Ruby Selector block displays the following data:
    • Ruby Selector status (Enabled/Disabled/Not installed) — displays a current status of the Ruby Selector.

      • To manage Ruby Selector, click Manage. You will be redirected to LVE Manager | Options | Ruby Selector.

      • Click Install to install Ruby Selector, you will be redirected to LVE Manager | Options | Ruby Selector.

    • Applications — number of installed/all applications for the account.

  • PHP Selector block displays the following data:
    • Default version — the default version of PHP binaries. Click Manage to change the default version, enable or disable PHP Selector, change the list of supported versions, and choose default modules. You will be redirected to LVE Manager | PHP Selector.
  • Python Selector block displays the following data:
    • Python Selector status (Enabled/Disabled/Not installed — displays a current status of the Python Selector.

      • To manage Python Selector, click Manage. You will be redirected to LVE Manager | Options | Python Selector.

      • Click Install to install Python Selector, you will be redirected to LVE Manager | Options | Python Selector.

    • Applications —  number of installed/all applications for the account.

  • Reseller Limits block displays the following data:
    • Reseller Limits status (Enabled/Disabled). To manage Reseller Limits, click Manage. You will be redirected to LVE Manager | Users tab.
    • Reseller’s accounts with Reseller Limits/all —  the number of Reseller accounts with Reseller Limits enabled versus the total number of Reseller accounts.
    • Reseller’s End Users with enabled Reseller Limits/all — the number of end users with Reseller Limits enabled versus all End Users that belong to all resellers.
  • MySQL Governor block displays the following data:
    • MySQL Governor status (Enabled/Disabled/Not installed). To manage MySQL Governor, click Manage. You will be redirected to LVE Manager | Options | MySQL Governor Mode of Operation. Click Install to install MySQL Governor.
    • Mode — displays the MySQL Governor mode of operation. Click Manage to change the mode.
      • Single — single LVE is used for all customers that go over their DB limits (deprecated).
      • Off — monitor Only, no DB query limits are applied.
      • All — all queries are run inside user's LVE.
      • Abusers — only queries that go over DB limits are executed inside that user's LVE (this is the default mode).
    • Database version —  displays a current version of MySQL/MariaDB/Percona server installed in the system.
  • CageFS block displays the following data:
    • CageFS status (Enabled/Disabled/Not installed). To manage CageFS, click Manage. You will be redirected to LVE Manager | Options | CageFS. Click Install to install CageFS.
    • Mode displays the current CageFS mode of operation.
    • End users — displays the number of users with CageFS enabled/all.
  • ModLSAPI block displays the following data:
    • Mod_lsapi status (Enabled/Disabled/Not installed). Click Install to install Mod_lsapi.
    • Module version displays the running version of Mod_lsapi.
    • Criu_status displays the status of lsapi_criu:
      • Running —  means that lsapi_criu is working.
      • Stopped —  means that lsapi_criu is not working.
    • Total Domains displays the total number of domains with Mod_lsapi configured as PHP handler.
    • Criu_version displays the running version of lsapi_criu.
    • LSAPI with connection pool.

Note

  • If statistics for server is absent for any reasons, you can update it by pressing the Refresh button. This process can last from 10 seconds to one hour depending on your server's performance, number of users and applications.
  • If statistics collection is turned off it is not displayed. If you wish to get daily statistics for your server, please turn it on by adding cl_statistics_enabled=1 parameter to the /etc/sysconfig/cloudlinux file.
  • Data for the Dashboard is collected once per day. If you want to update data manually, press Refresh. This process can last from 10 seconds to one hour depending on your server's performance, number of users and applications.

CloudLinux Installation Wizard

Overview

CloudLinux Installation Wizard allows you to easily install and set up CloudLinux OS components on your server with cPanel, Plesk or DirectAdmin.

Set up

As you have CloudLinux OS installed, navigate to CloudLinux LVE Manager in your control panel. CloudLinux Installation Wizard starts automatically if lvemanager package is installed for the first time (not updated).

To start setting up your CloudLinux OS, click Start Wizard, otherwise click Skip Wizard, and you will be redirected to the LVE Manager Dashboard.

Note

Installation statuses of all components are duplicated inside their corresponding boxes on the Dashboard. All Wizard actions are available there as well. Dashboard will be automatically updated as soon as the installation process finishes.

The next step is selecting required components to be installed.

Click Finish_and Install to complete installation or click Skip Wizard to go back to the Dashboard.

You can find a complete description of the CloudLinux components below.

CloudLinux Components

CageFS

A virtualized per-user file system encapsulates each customer into a ‘cage’ preventing them from seeing each other files and viewing sensitive information (e.g., system files)

Toggle the sliders to enable CageFS by default for new and/or existing users.

Note

CageFS is a requirement for PHP Selector operation.

LSAPI

It is the fastest and most reliable way to serve PHP pages for Apache web-servers, a drop-in replacement for SuPHP, FCGID, RUID2, and ITK.

LSAPI requires CRIU to operate and we also recommend you to use mod_suexec. You can find details in our documentation.

MySQL Governor

Monitors MySQL usage to throttle abusers, preventing server overload and improving overall performance.

Note

MySQL Governor can be automatically installed only with cPanel/WHM and DirectAdmin - use CLI instructions available here in all other cases.

We recommend you to create a full database backup before the MySQL Governor installation.

Node.js Selector

Allows end users to create Node.js applications and select the specific version of Node.js and other parameters.

Here you can choose versions to be installed and the version to be used as default.

Ruby Selector

Allows end users to select the specific version of Ruby they need.

Here you can choose Ruby versions to be installed.

Python Selector

Allows end users to select the default version of Python and set the required versions for installation.

Here you can choose Python versions to be installed.

PHP Selector

Allows end users to select the specific version of PHP they need, with over 120 PHP extensions to choose from.

Go to LVE Manager settings to set up PHP Selector options and parameters. Read more in the PHP Selector documentation.

Note

CageFS should be enabled for PHP Selector to operate.

When the components to be installed are selected and configured, and installation is started, you will be redirected to the LVE Manager | Dashboard.

Installation Process and Possible Errors

Installation status is displayed throughout the process in the Dashboard. Click Installing to show modules installation state.

All installed modules are displayed on the Dashboard. When installation is completed successfully, you will see the following status.

If you decide to remove failed module or a module to be installed by clicking the (X) button, a confirmation dialog will appear.

After confirming the action, the module will disappear from the list.

If module installation fails, the Installing button changes to Warning and the module indicator will turn red.

  • Click to download the error log.
  • Click to try to install a module again.
  • Click to remove a specific module from the installation queue. The module will be displayed on the Dashboard but will not be installed.

If module auto-installation fails, you will see that the module indicator turns yellow.

In this case, you can download a log for details and try to install the module again.

Wizard Fatal Error

In case of a fatal error, you will see the following warning.

  • Click to download the error log.
  • Click to try to install module(s) again.
  • Click to cancel installation. The canceled modules will be removed from the installation process.

You can contact our support team for further assistance anytime by submitting a ticket in our helpdesk system.

cPanel LVE Manager

cPanel LVE Manager Administrator interface allows monitoring and managing limits for hosts end users, managing packages and monitoring statistics.

Administrator credentials allow controlling limits for host users.

Log in as administrator to get access to the following functionality:

  • Current usage tab - allows monitoring users resource usage at the moment;
  • Users tab with the list of all users allows viewing and managing all the users limits;
  • Statistics tab displays the statistics of resource usage for proper timeframe or proper users;
  • Options tab - allows setting LVE Faults email notifications for users;
  • Packages allows managing packages limits;
  • PHP Selector tab.
  • ImunifyAV allows to get access to a brand new malware scanner installed with LVE Manager. Click ImunifyAV on the main menu to go to ImunifyAV interface and use the next-generation, automated security solution that automatically scans the file system for malware injection and quarantines infected files.

For more details, please go to the ImunifyAV documentation.

Note

Available starting from LVE Manager Beta version 4.0-26.8.

Current usage

Choose Current usage tab to monitor users resource usage at the moment displayed in the table.

Current usage table provides the information on the usage of Speed, memory, IO, IOPS, Number of Processes, and Entry Processes.

Resource usage values are being refreshed every 10 seconds which is set in Auto-refresh field. You can refresh the table manually by clicking Refresh now or you can freeze the values by clicking pause button. Usage values will not change until the next manual refresh.

Tick Hide MySQL usage checkbox to hide the information on MySQL usage.

To expand the list of users click on the number above and in the dropdown choose the number of user to be displayed on the page.

Users

Choose Users tab to view the list of all users of the system and manage their limits.

Click Filter by to apply filters. The following filters available in the dropdown:

  • Username
  • Domain
  • LVE ID

Actions column – click on a pencil icon in Actions column to edit a proper user limits.

Set proper LVE values:

  • SPEED
  • PMEM
  • VMEM
  • EP
  • IO
  • IOPS
  • NPROC
  • INODES

Click Save to apply changes or Cancel to close the window.

Statistics

Choose Statistics tab to view hosts users resource usage statistics.

The following parameters are displayed in the statistics table:

  • CPU usage per user;
  • PMEM usage per user;
  • VMEM usage per user;
  • IO (in Kb/sec per user).

Statistics table can be filtered by:

  • Timeframe - to view the statistics for a proper period;
  • Limit ID - to view a proper limit type usage only;
  • Top LVEs - to view top used limits only;
  • LVE approaching limit - to view the limits that are approaching maximum allocated value;
  • Fault LVE - the limits that have reached the maximum value.

Options

An administrator can set email notifications for users and resellers in cases of limits faults.

Choose Options tab to manage LVE Faults email notifications.

In LVE Faults email notifications section check proper checkboxes to set the required type of notification:

  • Notify me on users faults - to receive notifications on users LVE faults;
  • Notify customers - to allow hosts users receiving notifications on their LVE faults;
  • Notify me when I hit my limits - to receive notifications on LVE faults.

In Faults to include section check proper checkboxes to include proper limits to the notifications:

  • SPEED - include speed limit fault to the notification;
  • IO - include I/O limit fault info to the notification;
  • IOPS - include IOPS limit fault info to the notification;
  • Memory - include Memory limit fault info to the notification;
  • Concurrent connections - include concurrent connections limit fault info to the notification.

In Minimum number of Faults to notify section enter proper number of faults required for the notification to be sent for:

  • Me - for an administrator;
  • User - for a User;

Set the frequency of email notifications sending in Notify me every.. hours/days section.

Click Save to apply changes.

Packages

Packages tab allows setting the limits for as many users as you need by editing packages of proper limits. Each account belonging to a proper package adheres to those limits.

Choose Packages tab to view and modify:

  • limits for hosts user’s packages (Created by Admin);
  • limits for reseller’s packages (Created by Admin).

To modify package limits click on a pencil icon in Action column in a proper package row. The following limits for this package are available for setting:

  • SPEED in percent (%);
  • Virtual memory (VMEM) (can be set as unlimited by setting 0);
  • Physical memory (PMEM) (can be set as unlimited by setting 0);
  • Concurrent connections (EP);
  • Number of processes (NPROC) (can be set as unlimited by setting 0);
  • IOPS limits;
  • I/O limits (IO) (can be set as unlimited by setting 0);
  • INODES soft;
  • INODES hard.

When limits are set click Save to apply changes or Cancel to close the window.

Selector

Selector tab allows controlling PHP Selector settings.

In Selector is section choose Enabled or Disabled from the dropdown list to enable or disable PHP Selector.

In Default PHP version choose a proper PHP version or Native from dropdown list to apply.

In Supported versions choose required PHP versions to support.

Choose default modules from the list for a proper PHP version or for native.

LVE Manager Options

When you need to change LVE Manager options in cPanel config file on big amount of servers, you don't have to edit file manually, therefore there is no need to login into cPanel on each server. Just go to WHM, choose CloudLinux and click Options - and you will be able to change settings from here.

root@toaster [~]# grep lve /var/cpanel/cpanel.config
lve_hideextensions Hides (when =1) range of php extensions for user in Select PHP version.
lve_hideuserstat Hides (when =1) LVE statistics in cPanel Stats Bar (UI) .
lve_showinodeusage Displays (when =1) used inodes in cPanel (UI).
lve_hide_selector Turns off UI PHP Selector (Select PHP Version option).

Server Processes Snapshots

In case when a CloudLinux user hits LVE limits, appropriate faults are generated and lvestats package generates Server processes snapshot. Snapshot is a list of running applications and a list of running MySQL queries right after the faults happened.

Snapshots allow users to investigate the reason of account hitting its limits. Several snapshots are generated for each incident. An incident is a state when faults are generated in a close time period. The time period is configurable. By default, if faults are generated in 300 seconds time period, we consider them as a single incident.

The snapshot configuration options are available in

/etc/sysconfig/lvestats.config/SnapshotSaver.cfg
  • period_between_incidents = 300 by default, time in seconds
  • snapshots_per_minute = 2 by default, maximum number of snapshots per minute
  • max_snapshots_per_incident = 10 by default, maximum number of snapshots for an incident

To access Snapshots on Plesk you can use lve-read-snapshot utility.

To access Snapshots on cPanel perform the following steps:

  1. Go to cPanel | CPU and Concurrent Connection Usage in paper_latern theme:

  1. Click the Snapshots in paper_latern theme:

  1. Select a date:

  1. Select an appropriate Snapshot in the combobox:

Note

The list of processes in a snapshot is close but not similar to the real processes list when faults were generated. It happens because of delay when the faults are happened and the snapshot is taken by the system.

The list of MySQL queries is an output of a query:

SELECT command, time, info FROM information_schema.processlist

WHERE user = '%username';

LVE Plugins Branding

Note

Requires LVE Manager 2.0-33+

It is possible to apply branding to the LVE Plugins in cPanel end users’ interface. To brand the cPanel end users' interface please do the following:

  • Create a script that will patch LVE Manager files (with branding data, for example, image and logo) after every update of lvemanager rpm package;

  • Locate this script in /usr/share/l.v.e-manager/branding_script;

  • Make this script executable by running the command:

chmod a+x /usr/share/l.v.e-manager/branding_script

When done, the branding script will be executed while every update of lvemanager package and all branding changes will be applied in the end user’s interface.

Note

Modifying the LVE Manager WHM plugin (/usr/local/cpanel/whostmgr/docroot/cgi/CloudLinux.cgi) via branding_script is not allowed.

User Message for PHP version

Since version 1.0-4 LVE Manager acquired a feature of adding user messages to PHP versions*. To add a message, you should create a file in /opt/alt/phpXX/name_modifier with a message that you want to be shown to a user.

For example, if you need to add the following message Don't use this PHP version to PHP version 4.4, you should create the following file:

/opt/alt/php44/name_modifier:

echo 'Don`t use this php version' > /opt/alt/php44/name_modifier

As a result, LVE Manager will automatically pick up this message and will show it in web-interface to administrator (see Figure 1.1 for cPanel, Figure 1.2 for DirectAdmin) and to user (see Figure 2.1 for cPanel, Figure 2.2 for DirectAdmin). You can add messages to other PHP versions this way as well.

Figure 1.1

Figure 1.2

Figure 2.1

Figure 2.2

Note

*For cPanel and DirectAdmin only.