Limit resources per user
As the title says, plesk panel should be able to limit these resources, for example, per system user.
RAM, CPU (%/cores), Maximum Processes per user
-->including a automatic banning solution
(cpanel has this functionality)
We’re happy to announce that this feature is now available in Plesk Onyx, which was released recently for early adopters. You can try Plesk Onyx here: https://www.plesk.com/onyx/
If you have any feedback on the implementation of this feature, please let us know on the forum: https://talk.plesk.com/forums/plesk-onyx.744/
Please use our forum (https://talk.plesk.com) for discussing the details of this feature, it's much more convenient for all parties.
I've applied some limits on two service plans and monitored with HTOP to see in which CGROUPS user processes end up. No PHP-FPM pool of a user is in any group.
Can you give some hints to check if CGROUPS confs are setup and applied on how you've implemented them cause I can't find any config in any of the common places.
As CPU is in %, on multi core CPU's how much would 100% represent? All cores or 1 core and to fill more cores would be 100 multiplied by max cores allowed?
@Alexander Bien. You can't have CGROUPS in a Docker Container. Only it's host has.
Alexander Bien commented
I just fired up the docker onyx preview. It gave me a bunch of errors and there was no cgroups service in services management. This 17.0.14 - Screenshot: https://db.tt/PCgp0Elr
John Shiells commented
so this is gong to be available without the needing cloudlinux? it will require a plesk specific kernel?
We also think that this feature is a must have as a hosting provider.
Limit on CPU for casual websites (I bet that most using Plesk for webhosting manage Drupal, WordPress or Joomla sites, or similar CMS apps and not custom enterprise level apps) it is kind of stupid to use and there are several strong reasons why it should be avoided in most cases.
Limiting CPU resources to a process, means it will take more time to finish the process. That results for example on a MySQL query or a PHP request it will spend way more time then without limits (and if you give 50%, that doesn't means it will be 2* slower, as it may be even 5 or 10* slower).
Instead of pricing per CPU, price hosting on PAGE REQUESTS and storage (maybe traffic as well). It can be even a separation between Static files from PHP Requests and MySQL queries. That is what is more important in understanding for real hosting costs.
Limiting per ram is something valuable when configured proper so you don't have a process killing all other users processes. I for example keep a separate PHP-FPM process (not pool!) per client. This way every possible client is 100% isolated, as having a common PHP-FPM with pools per client = security risks (really, I'm not kidding). But even this tweak should not be set like I see on some hosts, like 1/2 or 1GB as you would just upset important clients.
My conclusion is that it's better to price per relevant resources usage then to limit them and creating possible conflicts and loosing clients.
Florian Heigl commented
So people suggesting /etc/security/limits.conf
You are aware the ram limitation would be pretty basic and that the CPU restriction would not exist?
Plus it being per process, not per user?
Florian Heigl commented
solved by mod_cgroup again
it would be great to get rid of Cloud Linux, which is actually owned by cPanel ...or i mixed it up with WHMCS.....cant remember anymore.
But to have it all in Plesk, without using CloudLinux would be jackpot, and more cost effective regarding licensing prices.
Yes I'm being lazy and didn't use Google first, but maybe you have a good guide for doing (and connecting) this in Plesk?
Still I would prefer this being added to Plesk instead of installing more things on my own to the server. The more I add, the harder everything gets to be maintained. I already have a highly customized Plesk and created my own guide for setting up new/reinstalling Plesk servers ...
Currently I'm using CentOS 6 as operating system.
You want what would you have added CloudLinux?
Because right now you can install CloudLinux on the server and connect it as a Plesk module.
It makes no sense that would add this functionality to the Plesk panel.
Right now you can have such functionality in Plesk with CloudLinux.
The question is whether it may be required for the rest of OSes
Under review since 2013??? Seems like this will never happen
VHosting Solution commented
Exist cloud linux for this features, is an betterOS. You can install it on centos
In Linux this could be done via cgroups.