Cloud compute: AWS, Azure, Google, SoftLayer compared

AWS still offers the greatest variety of instance types, but its top rivals have differentiating features of their own

1 2 Page 2
Page 2 of 2

Another unique feature of GCE is the ability to create custom machine types. That is, you can specify the configuration of virtual CPUs and available memory if none of the predefined machine types fits your needs. There are limitations to what can be configured, and prices for custom machine types are higher than for predefined instances, but for certain use cases and workloads, custom machines may be an attractive option. 

GCE also provides a few “shared core” machine types, which are similar in concept to the oversubscribed VM sizes in Azure. These machine types provide “opportunistic” bursting, which allows the instance to consume additional CPU cycles when they are not being consumed by other workloads on the same physical CPU. GCE does not use a “CPU credit” system such as AWS uses to balance peaks and valleys of utilization. Instead the bursts occur whenever the stars of application need and CPU cycle availability align.

Similar to Azure (but unlike AWS), GCE employs a per-minute pricing model, rounded up to the next minute, with a floor of 10 minutes. Thus, an instance that runs for three minutes is charged for 10 minutes of execution, while an instance that was operational for 12.5 minutes would be charged for 13.

GCE also provides a mechanism to access unused capacity at a reduced rate, somewhat similar to AWS spot instances. Google calls these preemptible VM instances and provides them at an 80 percent discount as compared to the fixed, on-demand hourly rate. Like AWS spot instances, a GCE preemptible instance may be terminated (“preempted”) at any time.  However, whereas spot instances could (in theory) operate indefinitely, preemptible instances will always be terminated after 24 hours. Preemptible instances are not covered under GCE’s SLA, and they cannot be live migrated, so the use cases may be limited. But if you have an appropriate use for them, they can deliver great cost savings. 

A compelling feature of GCE’s pricing model is the aforementioned Sustained Use Discount (SUD). In the SUD model, any instance in use for more than 25 percent of the monthly billing cycle is automatically discounted for every minute beyond that initial 25 percent, with no interaction required by the customer. The discount is 20 percent for usage between 25 and 50 percent of the full month, 40 percent for usage between 50 and 75 percent of the month, and 60 percent for usage above 75 percent of the month. In addition, this discount is not limited to a specific instance but can apply to multiple instances of the same machine type.

In other words, if you have two instances that run for a quarter of the month, you get a discount of 40 percent, not 20 percent. Further, it’s a simple and elegant pricing model that doesn’t require the user to make any upfront commitments or predictions about future utilization. You simply launch your instances, and if they are operational for more than 25 percent of the billing cycle, a discount is automatically applied.

Although Google was the second major player to enter the IaaS game behind AWS, it has seen slower adoption among enterprise users than Azure, most likely due to Microsoft’s long-established stronghold on enterprises. However, as Google continues to expand and innovate the GCE product suite and introduce unique offerings, its footprint in these organizations continues to expand.

IBM SoftLayer

SoftLayer takes a slightly different approach to compute instances (“virtual servers” or “VSes” in SoftLayer parlance) in that there are no predefined sizes. Similar to GCE’s custom machine types, you can configure a virtual server to your own specs, drawing on core/RAM configurations from one core with 1G of RAM to 56 cores with 242GB. Not every combination is available (you can’t select one core with 242GB of RAM, for example), but there is a vast array of options. As such, SoftLayer does not have “families” or “series” of VSes, but with the ability to customize the CPU count and RAM capacity, you can effectively build your own high-CPU or high-memory virtual servers.

SoftLayer does not offer burstable virtual servers or a spot market for unused capacity, but it does have something akin to AWS’s reserved instances. Make a monthly commitment to a specific VS, and you get a lower effective monthly rate. In this model you are paying for an entire month of VS usage, so it only makes sense if you have an application that will require an always-on configuration for the month. The savings you get in return are typically in the eight to 10 percent range; unless you are sure of your usage needs, the incentive to forgo the flexibility that hourly billing affords is not substantial.

A unique service that SoftLayer provides is the ability to provision bare-metal servers. This is done via the SoftLayer portal (or the SoftLayer API), so the ordering experience is the same as for VSes. The difference is that bare-metal servers can take up to four hours to be provisioned, whereas VSes typically boot within 10 minutes. Nevertheless, considering the additional complexity involved behind the scenes, this seems a reasonable turnaround time.

As with VSes, bare-metal servers are available in a variety of configurations, and you can choose between an hourly usage model or a monthly commitment. Monthly commitments open the door to a far wider array of server configurations than is available under the hourly usage model. Bare-metal servers offer the advantage of single-tenant configurations (similar to AWS’s dedicated instances and hosts), which may be required for security or compliance reasons, or to accommodate more restrictive software licensing (IP-locked, MAC-locked, and so on).

SoftLayer does not have as strong a foothold in the IaaS market as the other IaaS vendors discussed here, but it has some differentiating offerings (many in the network and appliance arenas, which are outside the scope of this article) that make them attractive for specific use cases and workloads. Because SoftLayer is an IBM company, it enjoys established relationships with many large enterprise customers.

Choosing a compute cloud

When wearing my Enterprise Solution Architect hat, I am often asked by our clients which IaaS provider they should use for their current and future projects. I always give the same answer: “It depends.”

As you can see from the above discussion, the compute offerings of AWS, Azure, GCE, and SoftLayer have a good deal in common, but they also have many differentiating features that may make them more (or less) suitable for a particular use case. As the 2016 RightScale State of the Cloud Report found, it is a multicloud world, and many consumers of IaaS use multiple vendors, as they align the characteristics of their workloads with the services offered by the different providers.

As is typical with technology decisions, there is no “one size fits all” when it comes to compute infrastructure. Thus, it makes sense to do your homework -- both internally with regards to the needs of your applications, and externally with regard to the solutions provided by the IaaS vendors -- to determine the proper vendor and offering for your specific use case.

New Tech Forum provides a venue to explore and discuss emerging enterprise technology in unprecedented depth and breadth. The selection is subjective, based on our pick of the technologies we believe to be important and of greatest interest to InfoWorld readers. InfoWorld does not accept marketing collateral for publication and reserves the right to edit all contributed content. Send all inquiries to newtechforum@infoworld.com.

1 2 Page 2
Page 2 of 2