Reseller Limits

Overview

Reseller limits is a feature that allows hosters to set limits for the resources each reseller can operate with. Hoster also provides controls to the reseller on what resources each reseller’s end user will have. Reseller limits set by a hoster limit the total amount of resources resellers’ end users can consume altogether.

When a hoster has set reseller limits for the particular reseller he provides the reseller with an ability to set limits for his end users within the Reseller Interface.

Types of Users

Starting from the version 3.0-18, LVE Manager operates with four types of users and their resource usage limits.

The types of users are as follows:

  • End User is a type of user that purchases hosting directly from a hoster and uses it for his own purposes;
  • Reseller is a type of user that buys hosting from a hoster and resells it to his end users;
  • Reseller’s End User is a type of user that purchases hosting from a reseller and uses it for his own purposes.
  • Reseller’s End User (no Reseller limit) is a type of user that purchases hosting from a reseller and uses it for his own purposes but does not have limits set by a reseller. These limits are set by the hoster.

Types of Limits

See the comparison Table with types of limits.

Limits Reseller limits Reseller’s end user limits Hoster’s end user limits
SPEED Yes Yes Yes
PMEM Yes Yes Yes
IO Yes Yes Yes
IOPS Limits Yes Yes Yes
EP Yes Yes Yes
NPROC Yes Yes Yes
Inodes Yes (default for all users) No Yes
MySQL Limits Yes (supported only for MySQL Governor ALL mode) Yes (supported only for MySQL Governor ALL mode) Yes

What happens when reseller or reseller's end user hits the limit?

Note

Reseller is a virtual entity. So, he cannot hit the limit. There is reseller's end user with the same name as reseller. This end user is limited as any other reseller's end user. When hoster sets Reseller limits he limits the group of resellers' end users including reseller's end user with the same name as the reseller.

  • Reseller's end user can hit reseller limit when end user's limit is bigger than reseller's limit. In such case end user will be limited by reseller limit.
  • Reseller limit can be hit when all resellers’ end users in total use as much resources as reseller limit.
  • Reseller's end user can hit his limit when end user limit is lower than reseller limit. In such case end user will be limited by his limit.

Installation and Requirements

Requirements

Note

Reseller Limits are only supported in kernel starting with the version 3.10.0-714.10.2.lve1.5.3.el7 for CloudLinux 7 kernel and 3.10.0-714.10.2.lve1.5.3.el6h for CloudLinux 6 Hybrid kernel .

Note

If you are using CloudLinux 6 kernel you would have to migrate to CloudLinux 6 Hybrid kernel first in order to be able to use new Reseller Limits functionality.

Installation

Use the detailed instruction below:

  1. Install CloudLinux 7 or CloudLinux 6 Hybrid on a new server. Follow the instructions described here. Or you can convert your CentOS 6.x or CentOS 7.x system to CloudLinux 6 or CloudLinux 7 respectively. To do this, follow the instructions described on the link.

  2. If you have installed the CloudLinux 6, please convert it to the CloudLinux 6 Hybrid Kernel. Follow the instructions described here.

  3. Install LVE Manager with Reseller Limit support or update it up to version 3.0-18 (or later) by running the following commands:

    yum install kernel lve cagefs lvemanager lve-utils lve-stats --disableexcludes=main
    
    yum update
    
    reboot
    

    For CloudLinux 6 Hybrid kernel with Reseller Limit support, please run the following commands:

    yum install kernel lve cagefs lvemanager lve-utils lve-stats --disableexcludes=main
    
    yum update
    
    reboot
    

How to Enable and Disable Reseller Limits

To start using a new feature Reseller limits you would have to enable reseller limits for a particular reseller first.

To enable Reseller access, please do the following:

  1. Log in with a Hoster access.
  2. You can create a new account or give privileges to an existing account.
  3. For new account tick a checkbox Make this account a reseller in the Reseller Settings box.

Note

If checkbox Make the account own itself (i.e., the user can modify the account) is not selected when creating Reseller in cPanel WHM, then user account Reseller will belong to root, not to reseller Reseller. In such case, the user Reseller will be managed by the root. So, LVE limits specified by the root will be applied to the user Reseller. User Reseller will not be limited by Reseller limits.

When the checkbox is selected, user Reseller will be limited by Reseller limits (in addition to personal user limits set by Reseller).

  1. Give privileges to the proper Reseller account to make all features work.
  2. Go to the Users tab and choose a particular reseller you want to enable Reseller limits for and click on the pencil icon.
  3. In the pop-up move the slider Manage Limits. Click AGREE for the question Are you sure you want to enable limits, set limits for that reseller if you you want them to be different from the default limits, otherwise default server limits will be applied. Than click the Save.

Note

Resellers’ end users can use as much resources in total as it is provided for that particular reseller by a hoster. The summary usage of all end users that belong to that particular reseller will not exceed the amount of resources provided to reseller by a hoster. If no Reseller Limits are set, reseller’s end user will be limited by default limits set by a hoster.

How to Disable Reseller Limits

To disable Reseller limits, please do the following:

  1. Go to the Users tab, choose a particular reseller and click on the pencil icon.
  2. In the pop-up move the slider Manage Limits. Click AGREE for the question Are you sure you want to disable limits. Than click Save.

Note

If you disable Reseller limits everything will work the same as before. All the end user limits set by the reseller will be saved. But all custom default reseller limits will be disabled.

Hoster Interface

Hoster interface allows to monitor and manage limits for hosters’ end users, resellers and resellers’ end users, and also manage packages and monitor statistics.

Hoster credentials allow to control limits for hosters’ end users and resellers. To control reseller end user limits Hoster has to log in as Reseller.

Log in as Hoster to get access to the following functionality.

  • Current Usage tab allows to monitor users and resellers resource usage at the moment.
  • Users tab with the list of all users and resellers allows viewing and managing all the users and resellers limits.
  • Statistics tab displays the statistics of resource usage for particular timeframe or particular user.
  • Options tab allows to set LVE faults email notifications for hoster, users, and resellers.
  • Packages tab allows to manage resellers packages limits;
  • Selector tab allows to control PHP Selector settings.

Current Usage

Choose Current Usage tab to monitor users, resellers and resellers’ end users resource usage at the moment displayed in the table.

Current Usage table provides information on usage of the following:

  • SPEED (All and MySQL)
  • memory (MEM)
  • data throughput (IO) (All and MySQL)
  • read/write operations per second (IOPS)
  • number of processes (PNO)
  • entry processes (EP)

Resource usage values are being refreshed every 10 seconds by default which is set in Auto-refresh field. You can set Auto-refresh time by choosing a value from the drop-down.

You can refresh the table manually by clicking Refresh now or you can freeze the values by clicking pause. Usage values will not change until the next manual refresh. To unfreeze click unpause. The countdown will continue.

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

The list of users can be filtered by Username and Domain.

Hoster can view all types of users:

  • End users
  • Resellers
  • Reseller’s end users
  • Reseller’s end users (no Reseller limit).

But hoster can only manage:

  • End users
  • Resellers
  • Reseller’s end users (no Reseller limit)

To manage Reseller’s end users hoster should login as a reseller.

In the drop-down Show top you can choose the number of user to be displayed on the page.

Users

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

To filter the list by user type click Manage and in the drop-down choose:

  • End users - to manage hosts end users only.
  • Resellers - to manage resellers only.
  • Reseller’s end users - to manage resellers’ end users only.
  • Reseller’s end users (no Reseller limits) - to manage resellers’ end users that do not have limits specified by reseller (these limits are specified by the hoster).

To filter the list by Username, Domain, LveID click Filter by and choose the value in the drop-down.

Note

A hoster can view the list of resellers’ end users and their limits, but can not manage resellers’ end users limits (if those are set by reseller).

A hoster can view the limits of all types of users and manage the limits for hosters’ end users and resellers’ end users (only those with Reseller Limits disabled).

  • Tick Show users with CageFS enabled to show users with CageFS file system enabled.
  • Tick Show only ignored users to show users with ignored MySQL Governor.

Actions

Click pencil icon in Actions column to edit limits for a particular user. The following actions are available:

  • Enable/disable CageFS
  • Reset - to reset limits to default values
  • Apply Do not limit to set the limits to unlimited;
  • Setting the limits values:
    • SPEED
    • SPEED MYSQL
    • VMEM
    • PMEM
    • IO
    • MySQL IO
    • IOPS
    • EP
    • NPROC
    • INODES (hard and soft) (for end users and resellers’ end users (with no Reseller Limits), if a hoster has enabled Initial quotas in cPanel settings).

Click Save to save changes or Cancel to close the pop-up.

Click on History symbol to view the history of a particular user resource usage. Choose time frame to view the history for a particular time period.

Statistics

Choose Statistics tab to view end users, resellers and resellers’ end users limits usage statistics.

The following parameters can be displayed in the statistics table:

  • SPEED usage per user;
  • IO usage per user;
  • EP usage per user;
  • VMEM usage per user;
  • PMEM usage per user;
  • NPROC usage per user;
  • IOPS usage per user;
  • MySQL usage per user.

Click Show and select columns from the drop-down to set which parameters should be displayed in the table.

Statistics table can be filtered by:

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

Click Manage to choose type of users to be displayed - End users, Resellers, Resellers’ end users or Resellers’ end users (no Reseller limit) by ticking checkbox in the drop-down.

Click chart symbol in the View column to view the detailed resource usage history for a particular account. Use timeframe drop-down to view the history for a particular period of time.

Options

A hoster can set email notifications for panel administrator, reseller customer, and resellers’ customers in cases of limits faults. Choose Options tab to manage LVE Faults email notifications.

In LVE Faults Email Notifications section tick the required checkboxes to set a type of notification.

  • Notify Panel Administrator - notify hoster when his end users have exceeded minimum number of faults set for particular limits.
  • Notify Reseller - notify reseller when his end users have exceeded minimum number of faults set for particular limits.
  • Notify Customers - notify hosters’ end users when they have exceeded limits.
  • Notify Reseller's customers - notify resellers’ end users when they have exceeded limits.

In Faults to include section tick the checkboxes to include required limits to the notifications. Set the frequency of email notifications sending in Notify …. every.. days/hours/minutes/seconds section.

In Minimum number of Faults to notify section enter the number of faults required for the notification to be sent for Panel Admin & Reseller and User.

  • In Inodes limits section you can reset inode limits to default values and tick Show end-user inode usage.
  • In User interface settings section tick the required checkboxes to apply user interface settings.
  • In MySQL Governor settings section you can customize MySQL Governor.

Packages

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

Choose Packages tab to view and modify:

  • limits for user packages (created by hoster);
  • limits for reseller packages (created by hoster);
  • limits for resellers’ end users packages if reseller limits are not set for that reseller (hoster access allows identifying a particular reseller’s end user belonging to a particular reseller (created by reseller)).

To modify package limits click on a pencil symbol in Actions column in a particular 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);
  • I/O limits (IO) (can be set as unlimited by setting 0);
  • IOPS limits;
  • Concurrent connections (EP);
  • Number of processes (NPROC) (can be set as unlimited by setting 0);
  • INODES (hard and soft) (for end users and resellers’ end users (with no Reseller Limits), if a hoster has enabled Initial quotas in cPanel settings.)

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

Selector

Selector tab allows to control PHP Selector settings.

  • In Selector is choose Enabled or Disabled from the drop-down to enable or disable PHP Selector.

  • In Default PHP version choose PHP version or Native from the drop-down to apply.

  • In Supported versions choose required PHP versions to support.

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

Reseller Interface

Reseller interface is designed to manage limits for resellers’ end users, to monitor statistics and the history of resource usage and to modify reseller’s end user packages limits.

Log in under a particular reseller credentials to have access to the following functionality:

  • Current Usage tab - allows to monitor resellers’ end users resource usage at the moment;
  • Historical Usage tab - allows to control resellers’ end users resource usage history;
  • Users tab with the list of all resellers’ end users allows to view and manage all the reseller’s end user limits;
  • Statistics tab displays the statistics of resource usage for particular timeframe or particular reseller's end user;
  • Options tab allows to set LVE Faults email notifications.
  • Packages tab allows to manage reseller’s end user packages limits.

Please note that reseller can manage all his end users via Reseller Interface. Reseller cannot manage INODE or MYSQL limits, neither his own nor for his users.

Current Usage tab

Current usage table provides the information on the usage of the following:

  • SPEED (All)
  • memory (MEM)
  • data throughput (IO)(All)
  • read/write operations per second (IOPS)
  • number of processes (PNO)
  • entry processes (EP)

Resource usage data is being refreshed every 10 seconds which is set by default in Auto-refresh field. You can set Auto-refresh time by choosing the value from the drop-down.

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. To unfreeze click on unpause button. The countdown will continue.

Reseller cannot manage INODE or MYSQL limits. Neither his own, nor for his users.

The bottom line star in the table displays the total reseller resource usage. It means, that all the usage of resellers’ end users and of his own is displayed as a summary for each parameter.

Historical Usage tab

Choose Historical Usage tab to view reseller and resellers’ end users resource usage history and faults. The list of users can be filtered by Timeframe.

When reseller’s end user reaches the limits set by hoster for the reseller, this will be displayed on the chart.

Note

In this case reseller’s end user would not necessarily reaches his limits set by the reseller. These faults are not displayed on the chart.

On the Historical Usage page the reseller is also able to see the list of Top 5 Reseller’s end users (based on resource usage, for the same period as charts/overall usage). Click History in the Actions column to view resource usage statistics for particular user.

Click LVE Statistics on the top of the Top 5 list to go to the Statistics page to view or manage the rest of users.

Users tab

Choose Users tab to view and manage the list of all resellers’ end users and resource usage limits provided for them. The following limits are available for the resellers’ end users:

  • SPEED
  • PMEM
  • IO
  • IOPS
  • EP
  • NPROC

You can filter the list by Username, Domain, LVE ID.

Tick Show only ignored users to display only users with MySQL Governor disabled.

Actions column

Click on a pencil icon in Actions column to edit limits for a particular user. The following actions are available:

  • Click Reset to reset limits to default values.
  • Click Apply for Do not limit to set unlimited resources to a user.
  • Set values for PEED, PMEM, IO, IOPS, EP, and NPROC and click Save to save changes or Cancel to close the window.

Statistics tab

Choose Statistics tab to view resource usage limits statistics.

Statistics table can be filtered by Timeframe, Limit, Top LVEs, LVE approaching limit, Fault LVE.

The following parameters are displayed:

  • SPEED per user;
  • PMEM usage per user;
  • IO usage per user;
  • EP usage per user;
  • NPROC usage per user;
  • IOPS usage per user.

Use Charts in the View column to view detailed resource usage charts for a particular period of time.

For example, 7 days period chart.

Options tab

Choose Options tab to set user email notifications for resellers’ end users.

In LVE Faults email notifications section tick appropriate checkboxes to set the required type of notification.

  • Notify me on users faults - notify reseller when his users have exceeded limits.
  • Notify Customers - notify resellers’ end users when they have exceeded limits.
  • Notify me when I hit my limits - notify reseller when overall resource usage limits are reached.

In Faults to include section tick checkboxes to include particular limits to email notifications.

In Minimum number of Faults to notify section enter the number of faults required for the notification to be sent for reseller and customer. You can also set the reseller notification frequency.

Set the frequency of sending the reseller email notifications in Notify Reseller Every ... days/hours/minutes/seconds section.

Click Save Changes to apply changes.

Packages tab

Choose Packages tab to view and modify limits for reseller’s packages.

Click pencil icon in a package row to set the following limits for a package:

  • SPEED limit;
  • Physical memory (PMEM) (can be set as unlimited by setting 0);
  • I/O limits;
  • IOPS limits;
  • Concurrent connections (EP) limits.

When limits are set click Save to apply changes.