How To Guy
Chaotic Cloud Pricing
I've been working on a project for a company that uses infrastructure-as-a-service to dynamically bring up virtual machines in the public cloud for temporarily use. I am excited and bullish on cloud computing and, prior to this project, I didn't see a lot of negatives to "the cloud" (as long as you understood today's technology limitations). However, through this project I have come to believe that the greatest limitation to using IaaS in today's public cloud may be the utter chaos when it comes to pricing.
Lack of Public Cloud Pricing
In trying to get pricing to compare one cloud service offering to another, I went to each company's Web site and tried to obtain their list price. This doesn't work. Most companies don't publish their prices publicly and they say "contact us to have a sales person contact you."
If cloud computing is going to be adopted, then companies have to publicly post their prices. Does the Apple App store say "contact us for a price on an app"? No. Even car dealers have to now post their prices on the Internet. If you want to build a 10 VM virtual infrastructure in the public cloud, you should be able to use a simple public online calculator to get a price, click "buy now," and start using your new virtual infrastructure (and it should be the same for 100 or maybe even 1000 VMs).
Besides having to have multiple conference calls and talk to multiple salespeople, one company even wanted me to sign an NDA to hear their price. (I told them that if pricing is a big secret then it probably isn't a good price -- otherwise, they would be bragging about it.)
Lack of Apples to Apples (no standard pricing model)
Once you do have a price, it's almost impossible to compare one company's price to another company's price, as there is no standard pricing model. One company is charging per minute where others charge per month. In other cases, cloud infrastructure is charges based a complex formula where another company charges just by concurrent VMs. Finally, another company just gives you a price and won't tell you what it is based on. In some cases if you go over your monthly usage you are charged a surcharge, where with other companies, the more you use, the less you pay per minute. Arg! How are you supposed to pick the solution with the lowest price? Chaos!
Recently, I found a website called www.CloudCompare.com that allows you to compare the pricing from one VMware vCloud datacenter provider to another. While my search isn't limited to just vCloud datacenters, I do see this option as a step in the right direction and I am thankful for it.
Another option I ran across is a free tool from Solarwinds called VM-to-Cloud Calculator. While CloudCompare only does vCloud datacenters, the Solarwinds tool only does Rackspace, Amazon EC2, and Windows Azure. Unfortunately, neither tools does all IaaS clouds but these are steps in the right direction.
Lack of Tiered Pricing
One of the things I quickly realized is that once I sign up for a cloud computing service, just creating a VM and powering it on is costing me money. What about while I am testing or creating a proof of concept? What if I want to have some VMs that are "best effort" with a very poor SLA (in return for a very cheap price) that I just use to build and test my apps (now running in the cloud)? There should be two or three different pricing models in every IaaS model so that I can use the low-priced options for test and higher-priced options (with strong SLAs) for Tier-1 apps. (I know that I could build my VMs on my local vSphere server or in Workstation and upload them, but I'd rather not have to do that.)
Lack of Self-Service Functionality
While some cloud solution have rich self-service portals there are others that are very slim and make you feel like you're using VMware Player to administer your cloud infrastructure. If IaaS cloud computing is going to replace your private data center, then it has to give you as much control as you had before (perhaps without the ability to physically touch the servers). In other words, you need to have different storage options, different computing tiers, the ability to use backup/restore your own data, be able to gain insight into the DR/replication status of your data, and to be offered quality and built-in performance tools.
Lack of API
Inevitably, there will be infrastructure and applications that remain at your company's site when you move your infrastructure to the cloud. How will those servers or applications interface with the servers in the cloud? There has to be an API. Surprisingly, not all cloud computing companies offer an API to access their cloud servers.
When will we have consumerization of the infrastructure cloud?
When I say "consumerization," I am not talking about your grandparents adopting cloud infrastructure, I am talking about businesses of all sizes and IT people of all shapes accepting infrastructure clouds as the "norm" for running their apps and servers. Today, the only servers that are "the norm" to run at a service provider are public Web servers. Other than that, most IT people will consider running just about anything else internally. For cloud infrastructure to be consumerized to the mass market, it has to fulfill all of the things above. Like hooking up an iPod, it has to be "stupid easy." Cloud companies (I'm talking to you), I am on your side but you've got to make the infrastructure cloud better -- get to work!
Another note to cloud companies -- please keep me up to date on your progress and new offerings. I am interested to give feedback and help promote your company when you are "doing it right" (in my opinion). Contact me at ddavis ((AT)) vmwarevideos.com
Also, stay tuned for a follow-up article on using the cloud pricing tools above!
About the Author
David Davis is a well-known virtualization and cloud computing expert, author, speaker, and analyst. David’s library of popular video training courses can be found at Pluralsight.com. To contact David about his speaking schedule and his latest project, go to VirtualizationSoftware.com.