Virtualisation Implementation at Anchor
As you may have seen from our previous article there are a very many number of good reasons to move towards a virtualised solution. The next question we really need to ask ourselves is:
How are we going to implement this?
This document will discuss many of the design considerations which were taken into account when developing our Virtual Private Server product. In addition to this, it will discuss many of the design decisions and provide a detailed rational on why our infrastructure was built in this fashion.
"Virtualisation" - A dirty word?
At Anchor we are all about providing robust and reliable solutions. From time to time we get questions at the sales stage from prospective clients asking "Is this a real dedicated server or a VPS?". Up until recently all we have sold at Anchor is dedicated servers, so the answer to this was a resounding "real dedicated server"
In more recent times, given the very many good reasons to move to virtualisation we've really needed to try to understand why end users have been scared away from this technology. As result of this we've drafted up some of our ideas and published them our the article about VPS misconceptions. Whilst trying not to go into a huge amount of detail), what we have tended to find is there are two vastly different services:
Virtual Private servers - these typically are designed as cheaper, "virtual" services which are based on Operating system virtualisation techniques. Often Virtual private servers are heavily contended, meaning that the resources aren't sufficient for their workloads and the primary aim was to give people a "virtual server" at a cut rate price; effectively, a cheap dedicated server. Due to some of the limitations associated with operating system virtualisation and the fact that they were heavily contended which resulted in poor performance for consumers VPS gained a reputation among early adopters of the technology as slow, cumbersome and simply not worth it. This style of product flooded the virtual server market primarily driven by the Virtozzo product.
- Virtual Dedicated Servers - This style of solution is a based on full virtualisation and arguable a more complete method of obtaining complete virtualisation. Typically, VDS will provide a full un-tainted operating system where you will get full administrative access to the machine. This method of virtualisation was and remains more expensive but provides a high-end hosting environment.
Once we were able to identify the differences in virtualisation techniques the decision was easy. As mentioned, we are all about providing quality hosting services, based on reliable infrastructure so there was really no decision but to go with a virtual server product which offered full virtualisation.
Virtual servers can be deployed in any number of configurations. From using cheap, towered style servers, all the way through high-end rack mounted equipment and on through high-end servers using SANs with multiple redundancies using hardware with a buy in price in the vicinity of $200k
The question we needed to ask, was what is going to work for Anchor?
To begin with, given we've been doing dedicated servers for over 8 years now and know we can get a consistently high level of uptime using the hardware we currently deploy we decided to keep the simplest architecture possible. This means using directly attached storage to a single host.
The benefits are:
- Smaller initial investment;
- Simpler training and support;
- Quicker time to market:
- Less research and training required;
- We know we can already obtain an uptime of 99.9% or greater using this configuration.
The downside is:
- No automatic failover:
- Requires shared storage (NAS or SAN);
Hardware failure will result in approximately 1 hours of downtime for ALL Virtual machines on the host.
- Limited fault tolerance (I/O multipath)
- Limited scalability of I/O:
- No upgrade path;
- Once we hit the capacity or I/O operations limit, that's it. New host time.
- No magic disaster recovery capabilities:
- No consolidated backups;
- Magic DR stuff;
- No automatic resource migration
- Power savings
- Maintain performance
VMs can still be migrated with minimal downtime to another host with Storage VMotion
At this initial stage, given we do not have enough data to build a balenced system, however:
- It is unlikely that CPU will be the bottle neck.
- RAM is likely to be the limiting factor, however, easy to caculate.
- Expected 800MB overhead for service console
- Memory cannot be overcommited.
- Disc capacity or I/O Limitations likely to be the biggest concern:
- Use the fastest available discs (15K RPM)
- Use a RAID configuration which is going to give us the highest possible read/write performance (RAID10)
- Consolidate writes using write caching.
On this basis it was determined that the hardware to be deployed for our premier virtual hosting environment would consist of the following:
- 2RU Rack Mounted chassis with dual hot swap power supplies
- 8 x 300GB 15k RPM SAS HDD in a RAID10 configuration (giving a total 1.2TB usable space) installed in hot swap drive bays
- Dual Intel Xeon E5345 CPUs (providing a total of 8 cores)
- 32GB DDr2 667 ECC RAM (upgradable to 64GB)
- Hardware based RAID controller with 256MB battery backed write cache.
Once it had been determined that we hardware was to be used and the method of virtualisation to be used, the next question was what software would be used.
The following page Comparision of virtualisation technologies includes complete analysis of virtualisation products.
But in short our previous experience had been soley with the VMWare server product and Xen, both of which are available for free download. Experience had shown that performance under VMWare server was less impressive and Xen could be best described as "buggy" and not suitable for a production environment.
From here we went on to use the VMWare ESXi product, which is available free and is a cut down version of ESX. After using this for a while we discovered that we required the additional monitoring and tools that came with the commercial ESX product and have gone with this as our virtualisation platform.
To get more information about the Anchor VPS product, including prices and plans see: Virtual Private servers