With the proliferation of Infrastructure as a Service (IaaS) does it make sense to use Virtual Private Servers (VPS) or even shared / dedicated hardware? Prices for IaaS have been decreasing with competition and VPS industry hasn’t really moved or changed in the past few years.
An analogy to compare IaaS is like electricity. It’s generated offsite and sent to a property via power lines. The server hardware is situated on the service providers site like a power plant and people can access them via the Internet (power lines). The traditional model is to having the electricity generated on site so everything was kept in-house. Just like electricity it is common to be billed by usage. IaaS is billed by I/O Operations Per second (IOP).
It means the customer can create any number of servers as and when they need it without having the hardware sitting under utilised during the quiet periods. Also they can scale beyond the allocated hardware by paying more to the service provider. All the maintenance is taken care of from the service provider from replacing old and out dated hardware to fixing and replacing broken ones.
There are a few catches to this concept like having data hosted or sent to externally controlled networks. Also how segregated are the provisions from one customer to another customer? The billing method currently being used for IaaS is IOPs so knowing this figure to estimate the bill is important. Also this will vary from quiet to peak times depending on usage and whilst electricity can be turned off in places it’s hard to reduce or stop data stored online for example.
With the growing market of IaaS it questioned why should I use VPS instead of IaaS? Essentially they’re both the same. You get provisioned some resources and you can do what you want with it (within T&C). The slight difference is VPS you tend to pay on a regular basis like monthly, yearly, etc which comes with a set amount of bandwidth and resources. IaaS on the other hand uses the pay as you go model and the only restriction is the instance type. The instance type will determine the maximum cost it can incur by limiting the instance to certain resources “in theory”. IaaS are starting to roll out up front payments for a discount which will pay of some of the future usage but this is still relatively new.
For the following test I will use Linode for VPS as this what I was using at the time of writing and I opted for Amazon’s Web Service (AWS).
The smallest plan for Linode for 1 year is $215.46. That includes the following:
On Amazon’s EC2 there are various instance type. The smallest is Micro with:
On VPS side they only give you one virtual machine which in the case of a WordPress website would contain Linux, Apache, MySQL, PHP (LAMP) stack. everything runs off the one server.
On AWS the setup can be the same as VPS but there are better ways to leverage the AWS platform. In this case EC2 instance running Linux, Apache and PHP and a separate RDS instance running MySQL.
There are various other fancy things that can be added on like load balancers, shared file storage, etc but I’d like to keep it like for like for now. Also these extras come at a price.
I will create and setup a parallel AWS instance and leave it running for a couple of months to see what the costs are like. Whilst it won’t be 100% like for like due to the load it will at least give me a representative figure and I will have a follow up post.