December 25, 2013
Sorry the site has been down for the last couple of days. I've been transitioning things to test a new platform layout and encountered some unrelated ice storms that required I deal with other things instead of keeping this site online.
This site, among other WordPress hosting offerings now lives on a XenServer virtual machine running OpenVZ so that it is contained in it's own distribution of CentOS and can run it's own versions of libraries and whatever software and not affect other people sharing on the same box. This isolates any vulnerabilities other customers have to their own instances in OpenVZ within the XenServer VM and lets users that want to do more do so and doesn't affect anyone else.
In the same XenServer farm another VM runs MariaDB with Galera replication for the database back end. This replicates live to two other locations across our high performance WAN and each site has redundancies to prevent outages.
Now, serving out sites from the OpenVZ private IPs prevents a challenge in that each OpenVZ container would need its own public IP, which in the world of dwindling IPv4 addresses is an impossibility. So to combat that a third XenServer virtual machine has been created running Varnish caching software. This front end has one IP and based on the users request hands the request back to the correct back end OpenVZ container with it's own private IP.
And for good measure and fault tolerance I've also put a load balancer in front of the Varnish cache server so that in order to do maintenance or handle any issues, it's actually working with two Varnish servers sharing a configuration. That way they can each be hosted on different machines in the cluster and in the event of higher than normal traffic, I can scale things up or down as needed.