By Grant Kirkwood
The sides are lining up in the cloud war over which solution is best: A public shared cloud, in which resources can be increased or decreased in real time, or a private cloud, with resources built by or available exclusively to one organization on dedicated hardware, on premises or colocated.
There is a compromise, namely hybrid cloud, ideally with seamless burst and workload portability. But even then, a decision must be made on public vs. private balance. And that comes down to more than economics.
In this column, I’ll focus on mid- to large-scale customer environments with long-term workloads and considerations including reservations versus capacity, resource sprawl, feature lock-in and non-economic criteria, such as security and flexibility.
Public cloud resources are delivered in a pay-as-you-go model. Private clouds typically are billed with a fixed monthly cost and can be in-house/on-premises or hosted and managed by a third party. Beyond that, let’s look at some considerations.
With a public cloud, the amount paid for a virtual machine is the same hour-by-hour, regardless of how much the computing resources are used. In general, I see utilization rates of 30 percent of the virtual machine’s computing power, meaning that 70 percent of the available, paid-for resources are going unused. In a private cloud, the organization pays for the full fixed capacity of the entire private cloud, regardless of how many virtual machines are provisioned, and regardless of how much those virtual machines are used.
In sum, with public cloud, customers pay for the reservation or right to use the virtual machines, while with a private cloud, they are paying for the capacity of the private cloud, and the performance it provides.
In addition to the problem of underutilized capacity, with public clouds, there is also the issue of unused, abandoned resources. The general estimate is that between 15 and 30 percent of public cloud resources being paid for are completely unused. While there are software tools available to track and eliminate abandoned resources, these tools are either relatively immature and not very capable, or they are capable but expensive. A private cloud can reclaim resources as workloads are transferred to new VMs without additional cost.
As public clouds become increasingly commoditized, major providers are seeking to differentiate their offerings from principal competitors with “special features” and capabilities that add value. Many of these features are designed to save time or ease deployments for developers and those responsible for deploying application workloads to the public cloud. However, these niceties tend to come at a significant price premium relative to the compute capacity required to support them (even if the underlying software is free), and they build a level of dependence on the cloud-specific proprietary tooling. I call this “feature lock-in.”
While I’ve focused on the economic implications of public versus private cloud, it’s important to note that there are other significant business differences to consider. These include performance, security and flexibility.
In a public cloud, the user is completely abstracted from underlying hardware. While in a private cloud there is never any resource contention (unless configured that way), in a public cloud, “noisy neighbors” can impact performance.
Channel Guide To NFV: Services delivered in a software-defined model – from firewalls to UC to SD-WAN – represent significant opportunity for channel partners. Here’s how to sort through various standards to assemble a smart strategy. Download the report now!
In a truly private cloud environment, hardware is fully dedicated to a particular company, organization or workload. For this reason, borders are well-defined, and custom security capabilities can be designed and integrated throughout the cloud infrastructure. In turn, this can make it easier to comply with major industry security standards and pass associated audits and certification processes.
Private, dedicated cloud infrastructure affords flexibility not found with public clouds. A truly custom solution provides certain advantages, including such benefits as the ability to integrate with existing legacy systems, direct network connections to on-premises networks, and specific hardware tailored to workloads. Existing security-infrastructure requirements can be incorporated without the need to adapt to pre-packaged public cloud offerings. In a private cloud, the customer has complete control of the hardware and software that comprise the environment. As such, full transparency into the performance of the underlying hardware is possible.
On the other hand, public cloud provides the most flexible options in terms of consumption — resources can be purchased for very short periods of time and easily increased or decreased.
In terms of flexibility, a private cloud can be implemented in a do-it-yourself (DIY), hosted, SaaS or appliance model. If you’re helping a customer build its own cloud, you may turn to OpenStack or to Red Hat or Canonical (see my take on OpenStack and the channel here).
When helping a customer make the decision to use a public or private cloud, take a look at the IT infrastructure currently in place; what skillsets and resources, including budget, are available; and the business drivers for the move to cloud.
Public cloud remains the easiest service to consume, with mature portals and APIs available to provision resources. However, private cloud infrastructure has made great strides in this area, with the likes of OpenStack Horizon providing equivalent functionality in private environments to that of major public cloud providers. Ease of consumption is a significant factor for most businesses and can be a key for the channel partner in deciding which model is best for its customers.
As the founder and CTO of Unitas Global, Grant Kirkwood is responsible for designing and building cloud solutions based on OpenStack technology for enterprise clients needing IT infrastructure solutions delivered as a fully managed service. Prior to founding Unitas Global, Grant served as CTO at PacketExchange, and was the founder, president and CTO at Mzima Networks and served as CTO at Netixs.