Many web designers and developers, agencies, and shared hosting providers use managed dedicated servers to provide multi-tenant hosting services for their clients. It’s a great way to host a large number of sites, but it’s not without its difficulties. Multi-tenant hosting shares a server’s resources between dozens or even hundreds of sites. If every user sticks within their resource allocation, there’s no problem, but it’s not always easy for users to predict their traffic over the long term, and there are always users who will abuse their shared hosting resources. It’s almost guaranteed that users will have resource spikes from time to time.
Users who exceed their allocation and use excessive processing power, memory, and IO, can lead to a server being overloaded, which significantly degrades performance for other users.
CloudLinux is a technology that helps system administrators lock down their server resources so that no single user can spoil the service for other users. It is a solution to the bad-neighbor problem.
What Is CloudLinux?
CloudLinux is essentially a set of kernel modifications to the CentOS Linux distribution that implements features to enable system administrators to take fine grained control of their server’s resource use, isolating users so that problems with one account don’t degrade the service for others.
CloudLinux features include:
Resource Limits – System administrators can put hard limits on CPU, IO, memory, and Apache processes, ensuring that no one user can harm the responsiveness and availability of their neighbour’s sites.
A Hardened Kernel – Multi-tenant environments a prone to a number of security vulnerabilities, including symlink attacks and trace exploits. CloudLinux’s hardened kernel helps prevent malicious users from attacking their neighbors.
Application Resource Limits – In addition to controlling resource use on a per user basis, CloudLinux allows administrators to impose application-level controls, so that they can limit resource use by content management systems and other applications.
MySQL Governor – Many of the issues on multi-tenant systems are caused by misused databases and misconfigured MySQL queries. CloudLinux monitors all MySQL use on a server and prevents any one user’s queries from gobbling up all the available resources.
One of the most useful features of CloudLinux is its close integration with CentOS and cPanel, which means that if you’re using a typical CentOS / cPanel hosting environment, upgrading to CloudLinux is simply a matter of issuing a few Yum commands. The process takes about 10 minutes and will transform a CentOS server into a secure and reliable platform without requiring that server administrators make any significant changes to their workflow and business processes.