Because I work on both OpenStack and SoftLayer, a large part of my daily discussions center on hybrid cloud—what is real and what isn’t when it comes to augmenting on-premises, private cloud with hosted cloud. Most people associate hybrid with “bursting” an application or picking up and moving an existing workload off-premises to a hosted cloud. While these are both valid use cases, they often don’t make sense in practice. Why not?
Scaling workloads takes planning. “Going viral” just happens. A celebrity mentions your website, or one of the popular news aggregators features you on the front page. It is a need you cannot plan for. Most workloads today cannot and do not scale this easily; they require real people doing real work in advance. If your application is one of the few that doesn’t require this, pat yourself on the back. Job well done.
(Related: What is hybrid cloud?)
Moving steady-state workloads off-premises rarely results in cost savings. The incremental cost of a workload on existing infrastructure is near zero. The data center is already there, power and cooling are present, and often worst case is a one-time capital expense to drop in new hardware. And, in both on-premises and hosted cases, you still need administrators to manage the workloads.
So where can hybrid help? I can think of four areas:
• Capacity expansion
When the incremental cost of adding capacity on-premises is high—think upgrading power and cooling in a data center to accommodate additional racks or building a whole new data center—a hybrid approach is a viable alternative. But going hybrid doesn’t have to impact existing operations; selecting a hosted cloud that supports bare metal and extending the on-premises network (like SoftLayer!) could allow existing technologies, tools and techniques to be reused.
Dev/test workloads are highly elastic; they are regularly stood up and torn down, and the number of instances at any one time varies widely based on the development phase. Placing these workloads on the hosted cloud allows you to scale capacity to match demand and pay only for what is used. Another benefit is the ability to tailor the infrastructure to the workload; the next dev/test workload to come along could have radically different hardware requirements.
• Planned temporary need
In contrast to bursting, most needs are known in advance: new product launches, holidays, peak season and so forth. And, when given time to plan and execute, most applications can be scaled. Much like dev/test, scaling the workload to the hosted cloud enables tailoring the hardware to the problem being solved and paying for what you need when you use it, turning a large capital expense into a smaller operational expense.
• Network optimization
Hosted cloud provides the opportunity shift the heavy lifting of the network off-premises and, in the process, improve the availability, scalability and reliability of the connection by leveraging the provider’s network investment. Connecting branch offices back to the hosted provider instead of a central data center can improve latency by reducing network hops and simplify bandwidth scaling. Pushing the public Internet presence out to the hosted cloud and leveraging their firewalls, intrusion detection systems (IDS), load balancers, application delivery controllers, VPN terminators and so on can improve security and optimize the bandwidth into the data center.
Note that not all providers are created equal for hybrid, so it is imperative to match the hosted provider to use cases. For capacity expansion, a hosted provider that only supports virtual machines may require significant operational changes, but that same provider could be an excellent choice for dev/test workloads. Network optimization is highly dependent on the hosted provider’s quality of service and latency and the breadth of network offerings.
What is your experience with hybrid? Let me know what you’ve found that works, what doesn’t and where else it can help. You can find me on Twitter @mjfork.