Cloud hosting is perhaps one of the biggest growing services in the web hosting industry, and for good reason too. The definition of cloud hosting is fairly broad, but in general terms, it refers to an environment where many servers are linked together to form a cluster; with services running on these servers having data hosted on separate remote storage devices. This in itself creates a solution which is redundant from the usual causes of downtime – service degradation, hardware failure, etc.
Traditional set ups and associated problems
With a traditional dedicated server, your website(s) are hosted on one server – everything from resources to storage are provided by that very server. This creates some inevitable and very obvious problems if something goes wrong: What if the network card fails or is not performing at its maximum? What if a RAID degradation occurrs? Let’s take a look at what needs to be done in each scenario and the potential consequences of that.
Network card failure: If a network card fails on a dedicated server, that single point of failure would cause the entire server to go offline. If you are running a business website, this can cause a catastrophic loss in revenue especially if you run an eCommerce store or a business that operates entirely online.
In some cases, a hardware replacement like this forces an entire server to go into what is called a ‘file system check’ (FSCK) rendering a server absolutely useless until this check is completed. If this check is triggered by the operating system, it cannot be stopped without forcing the server into a ‘read-only’ mode. These file system checks can take hours to complete.
RAID degradation: RAID is a very important instrument of redundancy which all dedicated servers should take advantage of. RAID 1 is widely used where there are two identical set of disks on the server with the second disk acting as an exact mirror of the first disk. This means if one of those hard drives fail, the server continues working as if nothing happened with it continuing to use the other healthy hard drive which will be an identical copy of the failed one.
However, this means the server will need to be taken offline as soon as possible because of the lack of RAID redundancy resulting from the failure.
Cloud Server Hosting
On cloud server hosting, you do not need to worry about these single point of failures because of the way a cloud environment works. Because there are multiple nodes linked in a cluster with each node connected to a remote device for storage, you get incredible redundancy and scalability that is simply not possible with a standalone physical server. Let’s take a look at the following fictional scenario:
John Doe runs an eCommerce store and notices that during the winter, site traffic and sales surge as a result of the holidays. John realizes he needs a more powerful server to cope with this seasonal traffic but cannot justify the expense of a much more powerful physical server. He looks into cloud hosting and it seems like the right solution for him – it allows him to create as many virtual servers as he needs on-the-fly and have resources scaled automatically as needed. With the added benefit of reduced operational costs, it makes sense for John to move over to cloud hosting because of the cost savings and redundancy offered.
So how does it work from the point of view of an end user? On the back-end, there are servers (nodes) which are linked together to form a cluster, with every node connected to a remote storage device. The reason cloud environments use remote storage is for the purposes of redundancy in case one node fails. If one node fails, it means services running on that node can be moved to another automatically. It would create a lot of technical problems if storage was stored locally on each server – it makes much better sense to have storage in a central location.
Hardware can and will fail at some point in time. The real problem is figuring out a way to avoid downtime when these events occur. In the case of a cloud environment, if one node fails, the services that are running on that node (e.g. your virtual machine) would be moved to another healthy node on the cluster. This is done automatically and transparently – you won’t even know when or if this happens, and it requires no intervention by you or the cloud web hosting provider. The real gem of this transparent process is that no downtime is involved unless the node your virtual server was on completely failed – in which case, the system would quickly reboot your virtual machine automatically.
What is cloud hosting right for? While cloud hosting being good for business websites and eCommerce stores, it is also a wise choice for web developers and professionals to consider instead of a virtual private server because it provides so many more benefits – not to mention the added redundancy and scalability of a cloud environment. If you already know how to manage a virtual private server (unless the web hosting company offers a fully managed hosting service), a cloud server comes with no extra learning curves. With cloud-based hosting, it is more about the back-end than anything else.
Are cloud-based hosting solutions more expensive? It depends on the provider you choose. There are some providers cropping up that offer cloud shared hosting – that is, where their own hardware which hosts your account is in a cloud-based environment – which tends to be more expensive than traditional shared hosting.
In general, cloud web hosting is usually around 10% to 15% more expensive than a virtual private server of equivalent specification – but to be very specific, it depends on the cloud provider.
The security, redundancy and scalability offered on a cloud set up is where the small additional cost comes from. If uptime and scalability are important for your business, cloud-based hosting solutions are something you should consider very seriously.