We recently installed CloudLinux as the OS for our Shared and Reseller hosting offerings and would like to take this opportunity to explain how the new OS is better and how it will improve performance for our clients.
The Advantages of CloudLinux
Normal Server Setup
In a normal shared hosting environment the resources available on a server that is the CPU, I/O and RAM resources are fully accessible to all accounts on that server and there is no hard and fast demarcation on the usage of these resources. The clients are expected to share these resources equally. However, sometimes rogue scripts/programs on one clients account to take up disproportionately large amount of resources, thus leading to the server getting overloaded and a general lack of performance, thereby resulting in all the accounts seem slow.
So enter Cloud Linux. CloudLinux creates a virtual environment for each individual account on a shared server and allows us to limit the amount of resources any single account can use similar to a VPS environment and therefore no single account can take up every all CPU resources on the server. This brings a lot of benefits to the table for both our clients and us as a host. We deal with less system level resource issues, there are fewer service interruptions, and most importantly the speed of most users sites go up as the accounts now have resources dedicated to them. As our clients, you benefit from the lower server load and fewer interruptions of service. You also get additional information in your cPanel which shows useful stats for your account (more on this later).
Tell me more
Now that you have got a basic understanding of what Cloud Linux achieves, here is the low down on some of the technology that makes it possible.
LVE – LVE, short for Lightweight Virtual Environment, is the driving technology behind the Cloud Linux methodology. LVE, developed exclusively by the folks over at Cloud Linux, is a kernel level technology which handles the isolation and resource monitoring that Cloud Linux is able to provide. LVE brings together technology provided by Apache modules and the Linux kernel. More reading available here: http://cloudlinux.com/docs/workingwithlve.php
LVE and cPanel / WHM – Cloud Linux has developed a plugin specifically for use on cPanel / WHM based systems. Installed through yum (CentOS package manager), the plugin allows you to view resource accurate up to the last second, and also allows you to edit default and individual LVE limits.
Data Reporting – The Cloud Linux kernel adds a few proc entries for user usage statistics as a small set of command line tools to view & monitor usage. In addition to this the cPanel / WHM integration has user based reporting which will log a history of CPU usage for an account allowing for quick and efficient tracking of resource usage.
Resource usage Information
You must be obviously wondering how you as an user can check his/her resource usage. Well cPanel /WHM displayes this on the left alongside other account related information like HDD/Bandwidth limit etc. The information available are CPU use and concurrent connections. Here’s a picture of what they look like:
- The CPU is for your account only and not for the server as a whole. So when it says 100% it means you have reached the max CPU allotment.
- The virtual memory usage shows the amount of RAM you are using out of your allotment, and not of the whole server.
- The Entry Processes is the number of concurrent processes that your account can process at the same time. These processes can be cronjobs, PHP processes, Perl processes, etc. A single user should rarely if ever consume all 20 connections, so this metric is mostly informational.
- If you are consistently hitting your limits, it is time to look at optimizing your site(s) or upgrading to a VPS as you’ve most likely outgrown shared hosting.
In conclusion we feel that Cloud Linux has executed a brilliant concept of providing dedicated resources to all users and limiting the ability of a few users unfairly using more resources. This will in the end lead to lesser outages and better performance. Feel free to post any questions or concerns about this technology in the comments, we’d love to get some more user feedback. 🙂