Is it worth the cost?

PartnerNOC

We've been running a couple of servers with CL for a month or so and found no real benefit. We balance our servers very well anyway and use simple scripts to check for CPU usage and kill processes that hog CPU. While I understand that CL throttles users rather than killing their scripts, the cost isnt really justified for this small benefit alone.

Customers that require more resources can be identified without Cloud Linux and even with this product, you'd still want to move them to a less busy server anyway, so they dont complain of their site being extremely slow. If you've got a problem with your servers being overloaded - the chances are that you are not maintaining them correctly.

With CL you can probably max out your servers and let it slow down the busier PHP based sites - but this will reduce the quality of service to customers. Really you should be balancing servers effectively so that you dont need a product like that. While I understand it may have benefits under certain circumstances, I dont believe the high cost is worth paying for the minor benefits it brings.

Perhaps you think otherwise? I'd be interested to hear from someone who has seen a great benefit from using this product.

I'm going to put it on a server soon. I'll recoup the costs by clients more for their higher processor usage. The sites on the server are cpu intensive membership scripts. As they grow they can upgrade their cpu limits which will offset the cost of CL and will be able to monitor their usage themselves and decide when they need to upgrade or get their own dedicated server.

We would be looking at CL due to runaway PHP processes, we find most causes of server faults are customers scripts that loop and never end consuming memory. We have had customers able to take down a server within 60 seconds so no CRON driven checker script would help.

PartnerNOC

We would be looking at CL due to runaway PHP processes, we find most causes of server faults are customers scripts that loop and never end consuming memory. We have had customers able to take down a server within 60 seconds so no CRON driven checker script would help.

Click to expand...

If you implement the memory limits in CL you can cause worse problems on your server - thats why they are disabled by default. CL cannot limit physical memory. I suggest you do some research into that before spending your money. You could also read this...

Have you had an instance where a PHP script used up too much memory and the php.ini setting "memory_limit" was not effective?

We had a similar problem. The first thing I did was to add the following to /etc/sysctl.conf

vm.panic_on_oom=1
kernel.panic=10

This makes the server reboot itself when it runs out of memory - so there are only a couple of minutes disruption if this happens.

Then check your logs for what PHP scripts were running at the time the server rebooted and check them out - this way you can easily find your problem script and disable it. This kind of issue is very rare and it's easy to resolve. You'd have to be very unlucky to see this kind of problem frequently and in my opinion it isnt a justifiable reason on its own for switching to CL even if their memory limit options improve in the future.

We find the memory limiting works on with PHP running under suPHP, the problem is with a customer spawning 1000 php instances within 30 seconds as there is no inbuild way to limit process count, I believed CloudLinux will do this for us ?

We did look at PAM limiting but we have always found editing to much on a cPanel server generally results in breaking when cPanel software updates and it now wants to do something with the files, or does not expect something to happen the way we change it to.

We also pay for RHEL on some of the servers so the cost saving would be substantial.

If you implement the memory limits in CL you can cause worse problems on your server - thats why they are disabled by default. CL cannot limit physical memory. I suggest you do some research into that before spending your money. You could also read this...

Have you had an instance where a PHP script used up too much memory and the php.ini setting "memory_limit" was not effective?

We had a similar problem. The first thing I did was to add the following to /etc/sysctl.conf

vm.panic_on_oom=1
kernel.panic=10

This makes the server reboot itself when it runs out of memory - so there are only a couple of minutes disruption if this happens.

Then check your logs for what PHP scripts were running at the time the server rebooted and check them out - this way you can easily find your problem script and disable it. This kind of issue is very rare and it's easy to resolve. You'd have to be very unlucky to see this kind of problem frequently and in my opinion it isnt a justifiable reason on its own for switching to CL even if their memory limit options improve in the future.

You should be able to use RLimitNPROC (cpanel lets you set it) to limit number of processes per customer.
We are probably going to implement it as part of LVE control (in addition to physical memory limits, and few other things) -- as our implementation would let us track exact number of times scripts hit that limit.

We are running CL since last 1 year and its an amazing product. I will recommend all shared hosting providers to use it. It limits each account and don't let the abusive scripts to eat up all server resources and make it down.

No need to do anything on per account bases. Default limits will apply to existing / new accounts automatically

Click to expand...

I am curious to know about this, where do i find the report/ pull out information specific to CL about this automated management of accounts. i.e. I would need a log or report on how it had performed on different user accounts.

The idea is pretty interesting, but like the initial poster said I would not install a product that slows services down ratter than deal with the problem.

A product like CloudLinux will not solve a server without resources. It will just make websites load slower, which can be a real nasty drawback for some providers as opposed to see a direct error when a website is out of resources, customers will just blame it on the hosting provider and say its slow, and service is bad. Why would you like to make your customers websites load slower?

If most people start to use Cloud Linux and actually overload the servers, this can be fireback on cPanel as well, because most people will assume cPanel hosting equals slow.

Of course this is not the fault of CloudLinux and this is not their idea. Their idea is to prevent a server from crashing which is ok, but I think this will get abused by providers using it to really push servers to the limit which will result in slow hosting or bad service. A better way would be just hard limits which do show an error so the customers knows whats happening. I would not pay extra for this either, I would expect it as part of cPanel.

I have to disagree nibb, been using it for a while now and I love it. The scripts on the server are membership sites where the cpu usage grows with the membership. The clients are well aware of CloudLinux and I allow CPU upgrades to 4 CPUs.

The purpose is to allow the clients to upgrade the CPU as needed without having to get a VPS or dedicated server of their own for a more economical price, not to max the server out. Sites that are using the most CPU are easily identified without having to scour the logs to find out which one is using up all the resources.

When the server is reasonably full, I'll just get another 24 cpu core server and do the same.

Other servers I have that run mainly html sites or low resource script usage sites don't have CloudLinux installed, but, for the one server, it's a big time saver and increases revenue where usage dictates without having to find the resource hogs and suspending any sites that may be overloading the server.

The idea is really about getting extra stability by limiting a single customer at a time. It is not about limiting users all the time. On most CL servers, majority of the time, not a single site is limited.
With 500+ shared hosting companies using CL now, most people utilizing it for the stability sake only. The math is pretty strange, but reality is that majority of server issues are caused by a single client (it might be different client each time, but the cause at any given time is a single client).
So limiting that client, for that short duration of time is all that needed to keep everyone else on the server safe & happy.

Some hosts are able to get more clients on a server simply because they see that they can have good stability/more clients with CL.
Yet CL really doesn't help with overloaded the server, when there are just too many clients.
When you overload the server by adding to many clients -- you have constantly high resource usage, and that resource usage comes from different customers. Each of them gets fair share, but there is just not enough resources to go around. Nothing that CL can do about it.
So, the way it working out right now -- CL is all about higher stability, and in now way can be used to cram too many customers on a server. It just wouldn't do anything to help in that situation.