Often times, when hybrid cloud is discussed, talk centers around OpenStack and VMware, or AWS and OpenStack, and even diverse clouds and container options—but the combination of Azure and OpenStack is much less common discussion.
This is actually quite an anomaly when you think about it, as both Azure’s public cloud and OpenStack’s private cloud are highly enterprise-targeted. With Azure boasting enterprise-grade security and encryption, and even offering the newly launched Azure Stack to bridge the gap between data centers and the cloud for enterprises, plus OpenStack’s inherent openness of APIs that enable enterprises to build their own clouds, Azure and OpenStack should naturally fit together in the cloud landscape. Yet hybrid cloud with Azure and OpenStack is often overlooked.
In a recent post, Achieving Hybrid Cloud Without Compromising On The Least Common Denominator, Nati Shalom, Gigaspaces founder and CTO, discussed a survey that demonstrates how enterprises are leveraging as many as six clouds simultaneously. And the list keeps on growing, with new technologies sprouting up by the minute.
What’s more, with Microsoft’s Azure Stack currently being postponed, app migration to the cloud from traditional data centers—with all of the enterprise-grade considerations involved—is an ever-relevant issue.
Historically, in order to achieve cloud portability, you would need to cater to the least common denominator by abstracting your application from all of the underlying logic of the infrastructure below. But this type of model comes at a costly price—it sacrifices all of the actual advantages that specific cloud provides. What if there were a better approach that could achieve interoperability and extensibility between clouds, and that would take full advantage of the underlying cloud’s capabilities and service portfolio?
Even solutions such as the Azure Stack don’t always provide the extensibility and interoperability that enterprises need, such as future-proofing or application deployment portability across clouds for other popular use cases. Hybrid cloud has proven that it isn’t immune to future proofing with disruptive technologies arising every day – not unlike, the latest and greatest containers (read more on The Disruption Cycle). This means that the new approach needs to be built for hybrid stacks, not just clouds, all while providing the full functionality the underlying infrastructure provides.
Enter TOSCA, the standard by the Oasis Foundation for cloud applications. TOSCA was written for this exact scenario, and provides inherent cloud interoperability and agnosticism. The TOSCA approach is intended to standardize the way applications are meant to be orchestrated in cloud environments. And enterprises love standards. Building one syntax and vocabulary enables organizations to adapt to the fast-paced world of cloud in a substantially simplified manner.
Cloudify, based on TOSCA, was built from the ground up as an integration platform. It leverages standardized templating, workflows, and cloud plugins to provide a single pane of glass across technologies that wouldn’t natively or intuitively plug in to each other, such as OpenStack and Azure, and even Kubernetes or Docker, as well as non-virtualized environments like traditional data centers. Cloudify is making it possible to choose a technology that adapts to the way your organization works or would like to work, and does not require you to adapt your technologies, stacks, or practices to the technologies you adopt.
Templating languages such as TOSCA enable far greater flexibility than API abstraction. TOSCA provides the level of extensibility and customization that enterprises require, without the need to develop or change the underlying implementation code. This is why major projects such as ARIA, Tacker, and OpenStack Heat are building solutions based on this standard.
Azure users now have a set of building blocks for managing the entire application stack and its lifecycle—across clouds, stacks, and technologies. They have the flexibility to define their own level of abstraction per use case or application. In this manner, cloud portability is achievable without the need to change the underlying code, thus enabling true hybrid cloud.