In my last post I described my experience of moving 4sysops to Amazon's Elastic Compute Cloud (EC2) as being not really positive. EC2's smallest instance type was way too small to handle 4sysops. The number one argument for cloud computing that analysts put forward are costs savings. Let's see if cost savings were the key factor on my decision.
Latest posts by Michael Pietroforte (see all)
- Author and member of the year 2019 – Why DevOps still doesn't rule the IT world - Wed, Jan 1 2020
- Results of the 4sysops member and author competition in 2018 - Tue, Jan 8 2019
- Why Microsoft is using Windows customers as guinea pigs - Reply to Tim Warner - Tue, Dec 18 2018
A while back, I outlined in detail why pay-as-you-go pricing makes cloud computing expensive. This also applies to EC2. Amazon has realized, meanwhile, that they can't really compete with on-premise computing with such high prices and introduced so-called reserved instances. With this option, you pay a one-time fee in order to get a discount on the hourly usage for the duration of the term. There are yearly terms and three-year terms. Of course, this is not a typical pay-as-you-go pricing, since you can only "go" at the end of the term. However, the advantage is that it significantly reduces costs
In my case, I would pay about $160 per month (including bandwidth, storage costs, etc.) for a High-CPU Medium instance. That is certainly a lot. But even with reserved instances, EC2 is still not cheap. On a three-year term, my server would cost approximately $80 per month. There are providers in Germany that offer dedicated servers with comparable hardware resources for $55. However, I've noticed that US prices are significantly higher. For example, 1and1 charges $100 per month on a two year term (Dual Core, 2GB RAM), but a virtual server (VPS) costs only $60.
Hence cloud computing is not really a cost-saver. Only if you take the reserved instances option, will you get a competitive price. Note that all the extra costs associated with on-premise computing (hardware management, networking, power costs, air conditioning, etc.) didn't play a role in this comparison. All these costs are also included if you rent a dedicated server.
Even so, I believe on-premise computing is still the cheapest option. In three years, I will have paid at least $2,900 for my server. I assumed that the bandwidth costs stay constant which is probably not the case because I am expecting a traffic growth in the coming years. I can only hope that Amazon will lower the bandwidth rates accordingly.
Anyway, $2,900 is a lot of money considering my High-CPU Medium instance is not more powerful than an average PC. A comparable Dell server with currently costs about $700. Of course, it is the cheapest server you can get, but it is hard to believe that the extra on-premise costs always amount to $2,000 per server in three years. It depends very much on your environment. For example, if you have the space for your servers anyway, then buildings costs don't count. However, if you have to rent an extra building for your datacenter, then things look different. Maybe your datacenter is in Alaska, then air conditioning is probably not a key factor. Of course, it also depends on how effectively you use the hardware in your datacenter. If most of your servers are virtualized, then you have much lower on-premise computing costs than if you use a dedicated server for each application.
I think, you got my point. Too many factors are dependent on your specific situation. However, all in all, I don't see the big cost savings that many analysts attribute to cloud computing. At best, the prices are comparable if you let go of pay-as-you-go pricing. I think, many analysts simply overestimate the need for on demand computing. As to my experience, most servers run at least for three years. There are only rare cases where an organization needs a server for only a few hours.
In my case, a VPS definitely would have been the cheaper option. In my next posts, you will learn about the real reasons why I decided to move 4sysops to the cloud.