Close your eyes and think of the cloud. Odds are Amazon quickly comes to mind -- for good reason. By some estimates, Amazon Web Services holds 70 percent of the IaaS (infrastructure as a service) market, providing compute, storage, and networking services, usually on a pay-per-use basis, to hundreds of thousands of customers. Amazon's cloud has become an extension of many organizations' infrastructure, often for application development and testing, but also for compute-intensive analytics and even ongoing production workloads. Credit Amazon for popularizing IaaS and making it affordable, accessible, and broadly relevant to the current generation of IT.
But in the past two months, three giants have lumbered into the game: HP, Microsoft, and Google.
[ Also on InfoWorld: Amazon's cloud feels the heat from Google, HP, Microsoft. | Stay on top of the current state of the cloud with InfoWorld's special report, "Cloud computing in 2012." Download it today! | Keep current with the cloud via InfoWorld's Cloud Computing Report newsletter. ]
HP launched its beta of HP Cloud Services on May 10 -- the first public IaaS service to run on OpenStack, the open source "cloud operating system" generating huge buzz. Then, on June 6, Microsoft quietly revealed that Windows Azure would no longer tie its fate to PaaS (platform as a service) alone and would jump into IaaS. Finally, on June 28, Google took the wraps off Google Compute Engine, a long-awaited IaaS play that will enable customers to rent a piece of Google's legendary infrastructure.
Of course, Amazon wasn't alone before the big names jumped in. Joyent, Rackspace, SoftLayer, and others have been around for years; all three also offer some form of hosting (dedicated infrastructure) and the shared infrastructure characteristic of public cloud services. With little fanfare, IBM has been selling public cloud IaaS services as well, although customer engagements always begin with an IBM rep rather than the self-service Web GUI Amazon popularized. That's the way engagements with Verizon acquisition Terremark start, too -- if you want Terremark's VMware-powered Enterprise Cloud, that is. If you're willing to live with less functionality, simply enter a credit card number and fill out a Web form to upload VMs to Terremark's VMware vCloud Express.
IaaS has become a competitive space. Here's a quick look at the new IaaS cloudscape -- and a little about how to choose among the various platforms.
The IaaS shop-a-thonThe basic idea of IaaS is simple: You upload virtual machines and run them remotely. But with many providers, the range of options is huge, from compute to storage to database services to app dev options and more.
And pricing? It's hard to know where to start. You need a very good sense of your basic compute, storage, and networking needs from the outset; otherwise, forget about direct comparisons among IaaS providers. Depending on the provider, you may have a choice of dozens of types of instances: Will a single virtual CPU plus 3.75GB of RAM and 300GB of hard disk be enough for each instance, or do you need more? You want that in 32-bit or 64-bit? And there are potential discounts to consider: Reserving infrastructure resources in advance, for example, can be cheaper than pure pay-as-you-go.
Then there are operating system and bandwidth considerations. Most providers offer Windows as well as Linux and pass along the incremental licensing charge to the customer. You also need to consider incoming and outgoing traffic -- if you're greedy it may cost you a lot, depending on the provider.
SLAs can also get complicated. Some providers have different levels of guaranteed uptime for compute and storage -- and refund different percentages of the fee based on the outage. Of course, a refund may be small consolation if the outage takes your critical business service offline. As more and more customers use IaaS for production workloads, the harder it will be for some sort of partial refund to satisfy anyone who has endured an outage or severe slowdown.
All this argues for you to avail yourself of whatever free trials a provider offers. Tweak your configurations, explore and determine the features you need, and calculate and recalculate pricing, especially if you plan to run heavy workloads over the long term. If you get hit by nasty latency episodes or an outage during the trial phase, take note. Claims of consistent performance and multi-data-center redundancy are great, but your experience and those of your peers provide a better gauge.
Compute optionsIaaS providers vary widely in the features they offer. But there's a catch. In fact, you can upload pretty much anything you like to the cloud, which allows providers to almost always say, "Sure, you can do that." But what you really want are prebuilt services, such as the database you need, so you can plug and go without burning endless upload, installation, maintenance, and configuration time.
Perhaps the biggest benefit of IaaS, aside from getting the job done without up-front hardware investment, is the ability to scale when needed. That's why an auto-scaling service -- which spawns more instances automatically in response to increased demand -- is a great feature to have. For obvious reasons, so is a load balancing service.
Many businesses now use IaaS for big, periodic jobs of limited duration. If you want to run some sort of huge actuarial calculation, for example, an HPC cluster with 10Gbit Ethernet connections will reduce the duration of your job and perhaps lead you to consider other high-end jobs you hadn't thought practical before.
Perhaps the sexiest compute service of the moment is Hadoop, a distributed processing framework for processing unstructured data. It's great for analyzing, say, website clickstreams or sensor data in an unlimited number of vertical applications, though you need programmer experts to get the results you want. Some providers host their own Hadoop distributions, while others partner with third parties to run the service. If Hadoop is an important part of your reason to use IaaS, the less Hadoop infrastructure you have to string together yourself to make it work, the better.
Storage and networking servicesYou'll find that most providers now support both object and block storage. Object storage is a distributed system for large data such as multimedia or email archives or VM images, where high latency is not a big deal. Block storage typically costs more and suits applications that are more performance-sensitive.
A cloud storage gateway is an appliance that sits in your own data center. Rather than back up data to local storage, it goes to the IaaS provider's data center through the cloud storage gateway, which might deduplicate or encrypt the data in the bargain. Historically, this has been one of the most popular uses of the cloud.
As for networking, the so-called virtual private cloud is all the rage now. An IaaS provider that supports the virtual private cloud enables you to set up multiple subnets with appropriate security tiers and select your own IP address ranges. Additionally, you'll want the ability to create a dedicated VLAN that directly connects your data center with the virtual private cloud.
Finally, most Web applications, particularly those that that involve rich media, will benefit from a CDN (content delivery network), which dials down user frustration -- globally, depending on the number of edge servers on the network. Here again, some providers have their own vast CDNs, and some partner with the likes of Akamai, but the bottom line is the ease of setup and the actual reduction in latency.
Database and app dev servicesYou can upload almost any database software you like to the cloud -- but it's much better to have database services maintained by the IaaS provider and ready to deploy. SQL database services are common, with MySOL the most prevalent, although you can also find enterprise-grade solutions with Oracle Database and/or PostgresSQL functionality. NoSQL databases (particularly MongoDB) are increasingly popular in the cloud, but at this stage you'll find some providers relying on partners to deliver the goods.
As for app dev services, partners often play a role, but take into account such providers as Google, Microsoft, Joyent, and others who began with PaaS and only recently ventured into IaaS. If their languages and development environments are on your wish list, your choice of IaaS provider may be an easy one. Note, however, that IaaS providers appear to be adding support for new app dev flavors and services all the time.
Be aware that some IaaS providers define PaaS as functionality to onboard and manage applications. We feel that's nonstandard and misleading; PaaS is really about providing an application development, testing, and deployment environment in the cloud. There's no shortage of those platforms of every possible variety, whether or not they're integrated into your IaaS provider of choice.
The IaaS explosionDo any of the new providers have a shot at unseating Amazon? Not in the short term. The collection of products and services offered by Amazon Web Services would fill a small book, from a broad range of EC2 instance types to NoSQL databases to Hadoop/MapReduce services to virtual private cloud capability and a vast software marketplace.
And the leader is not standing still. In March 2012, Amazon struck a preemptive blow by dropping prices on both its EC2 service and its hourly rates for long-term contract customers. Prices for Reserved Instances, which involve a one-year contract, were sliced by up to a third. Even bigger volume discounts are available, but most of the cuts are intended to entice entry-level customers who could be lured by competitors. As before, you can take advantage of a yearlong free trial.
Still, many feel the luster of Google's highly touted infrastructure could lure customers who've held off venturing into the public cloud. And the hybrid approaches of Azure, HP, OpenStack, Rackspace, and others could prove successful as more enterprises adopt private cloud technology -- and the ability to "burst" from private to public IaaS infrastructure becomes a reality. Terremark is taking this hybrid approach, too, using one of the most advanced private clouds currently available: VMware's integrated suite of virtualization and cloud products. Terremark, like IBM, seems to prefer a phone call rather than self-provisioning when beginning IaaS relationships with enterprise customers.
Is the IaaS boom a fad or the beginning of an era where businesses decide they want someone else to maintain their infrastructure? That's a trick question because customers often discover, to their dismay, that they may have been be able to lay off a few admins who maintained in-house systems -- only to discover they need to hire other admins who specialize in an IaaS provider's feature set.
Over the long term, the mainstream drift may be toward SaaS, where everything underneath the application is truly handled by the provider. But at this particular moment, IaaS couldn't be hotter.
This story, "How to choose an IaaS provider," was originally published at InfoWorld.com. Follow the latest developments in cloud computing at InfoWorld.com. For the latest developments in business technology news, follow InfoWorld.com on Twitter.
Read more about cloud computing in InfoWorld's Cloud Computing Channel.