Equinix sponsored this post.
Public clouds were created from the realization that a company’s internal IT scale had reached a point that it could efficiently offer services at competitive prices to outside customers. However, those initial providers provisioned their clouds to meet their own internal needs first. The largest clouds evolved past that, to provide a proliferation of standard products that catered to a growing and increasingly diverse cloud user base.
For most public cloud customers today, the bewildering array of public IaaS (infrastructure-as-a-service) configurations now induces decision fatigue. There are too many choices and not enough information to make reasoned decisions. As a result, there is a huge secondary market of cloud optimization businesses, a clear sign something is wrong for a lot of cloud customers.
Shared IT infrastructure began with virtualization. Remember that in the old days, servers were configured and purchased to run a single instance of a single application. The server itself was provisioned to support a specific number of anticipated users, or to provide a specific quality of service.
Provisioning for worst case scenarios often left a lot of unused performance headroom — often 90% or more of a server’s compute capacity was unused for most of the time a server was plugged in and turned on.
Enterprise datacenters started virtualizing workloads to increase the utilization of their application servers. As utilization improved, more applications were virtualized — but still, application license agreements forced customers to run more virtual instances of the same application on one server.
As virtualization and license agreements matured, customers started to run different types of applications on the same server. Eventually, IT customers wanted to run as many applications as they could on as few local servers as possible, to control server sprawl and simplify operational complexity. The result was over-provisioned hyper-converged infrastructure (HCI) servers.
Public cloud IaaS vendors rent fractional shared servers by the hour. They started with a virtualized server rental model, because their margins depended on highly utilizing any server that is powered up.
IaaS scheduling systems will power down unused server capacity; so it is in their economic interest to pack as many paying rental users as they can onto as few systems as they can.
So public cloud IaaS ended up in exactly the same usage model that resulted in enterprise IT shops turning to HCI, with the twist that public cloud IaaS hosts different “tenant” customers on the same virtualized hardware.
Renting a fractional shared server is a lot like ridesharing — it is a shared resource that is affected by availability, quality of service, and sometimes substitutions. It is a carpool model by default; if the IaaS provider can schedule many customers to the same server at the same time, they will. It is the heart of their business model.
This shared infrastructure approach is a fundamental component of IaaS business models. IaaS instance prices depend on multi-tenant shared infrastructure.
Public cloud IaaS product lines have evolved to offer a bewildering permutation of instance types and sizes that differ by processor model capabilities, the number of virtual processor cores assigned and/or virtual core speed, memory and storage capacity, network provisioning, and hardware assistance for specialized types of compute acceleration.
The challenge for IaaS customers is that changing any one of the above hardware configurations results in different application performance. Some applications benefit from processor architecture choice, some from faster virtual cores, others need more memory or more storage bandwidth, and so on.
Most companies, especially small to medium businesses, do not think they can afford to experiment with application performance to find just the right instance type and size to minimize IaaS spend, while still hitting application service objectives.
That is where cloud optimization services play. Cloud optimization services make their living analyzing application performance to find more optimal instance types and sizes within a cloud; and even across IaaS vendors.
After a customer has discovered a reasonably optimal hardware configuration for their application, intellectual property concerns (data privacy or innovation protection) force many IaaS customers to look for a nearly optimal instance type that supports better security between tenants. IaaS types with better security features are typically more expensive, which then forces customers to consider renting dedicated infrastructure.
All major public IaaS providers support some variation of dedicated infrastructure, based on the same configurations they offer for their shared instances; but with different price sheets and different purchasing commitments than shared instances.
Ideally, public cloud IaaS customers want to have someone else own and manage hardware infrastructure that is optimally tuned for their application’s performance requirements and cost constraints, while also getting a better deal on network bandwidth and latency, storage capacity and performance, and better security and advanced threat detection than they can afford to deploy themselves. It’s kind of like a big-box warehouse store — everything is better in bulk, right?
As we know, optimization and standardization are in constant tension with each other. Big box stores offer the popular items at popular sizes, but stray just a little from popular items in popular sizes (as well as a few previous generation choices) and there is not much selection. That is why the large public cloud IaaS providers try to cover as many of the popular instance types and sizes as possible. But it is still standardized and shared, and most customers don’t have many networking options until their application footprint is fairly large.
What if cloud customers could have all the above-managed service features, but with private servers configured to their application’s optimal hardware specifications and with networking options that are more like their unlimited mobile data plans (rather than paying per gigabyte)?
Most other industries call this “mass customization” — the ability to take advantage of a supplier’s economies of scale, while also providing a bespoke purchasing experience for the buyer.
Hardware as a Service (HaaS) can offer better optimization than dedicated HCI-like standard IaaS instance types. There are two ways for HaaS to deliver on this promise:
1) by pre-emptively offering differentiated standard metal instances (entire servers) not found in mass-market IaaS offerings; and
2) by deploying full-custom metal servers, built to each customer’s unique and optimal specifications.
These bespoke compute and storage solutions, combined with fundamentally different network provisioning and pricing models, can deliver the single-tenant security, performance and cost optimization users want — where they want it, as they need it, and with a cloud-like operations model.
Third-party cloud computing application optimization consultants can help smaller IT organizations tune their selection of standard cloud hardware configurations. But even more importantly, that same application optimization process can lead to even better optimization on a differentiated or custom HaaS instance type.
Equinix sponsored this post.
Feature image via Pixabay.