A hybrid cloud is an environment made up of on-prem infrastructure and private and public cloud services whilst providing orchestration amongst them.
Within the hybrid cloud discussion, the options raised typically come to OpenStack coupled with either VMware or AWS. Occasionally, diverse cloud or container options make their way to the table. Azure coupled with OpenStack as a solution can often be left in the shadows in these debates.
Azure vs OpenStack..Or can they work together?
Given that Azure’s public cloud and OpenStack’s private cloud are heavily targeted toward the enterprise, it’s odd that they aren’t rising to the top in these conversations. Azure has heavily enterprise-grade encryption and security, aiming the Azure Stack at bridging the gap between data centers and the cloud within enterprise environments. OpenStack is, as the name suggests, inherently open with respect to APIs enabling enterprises to build their own cloud. Naturally they fit together and compliment one another within the cloud landscape, though surprisingly, this solution of openstack azure integration is often overlooked.
Though public clouds did increase significantly in popularity, some companies actually moved their workflows from public cloud back to on-prem for a number of reasons, including costs, higher security etc. These factors causing cloud repatriation gave way to hybrid clouds where you can get the best of both worlds. With OpenStack offering the private cloud side of the hybrid cloud, and services like Azure giving a balanced approach with the public cloud, there would be a huge advantage to integrating the two and for making OpenStack a sufficient Hybrid Cloud element. Cloudify makes it simpler for OpenStack users to broaden their environment into the likes of AWS or other public clouds.
Nati Shalom, recently discussed in his post Achieving Hybrid Cloud Without Compromising On The Least Common Denominator, a survey that demonstrates that enterprises these days are often leveraging as many as six clouds simultaneously, and the list just keeps on growing with new technologies sprouting up by the minute.
In a piece titled Achieving Hybrid Cloud without Compromising on the Least Common Denominator, Nati Shalom
Solutions like Azure Stack are critical for enterprise environments, especially those leveraging multiple clouds simultaneously. Azure Stack is aimed toward multi-cloud scenarios for app migration, moving to the cloud and away from traditional data centers. Azure Hybrid cloud allows you to use hybrid applications on premise using Azure Stack. And since Microsoft knows enterprise environments intimately, they have taken all of the relevant considerations into account, helping to ease the transition.
In the past, cloud portability depended upon catering to the least common denominator – abstracting the application from all of the infrastructure logic lying below, which came at a significant cost: sacrificing the ability to leverage the advantages of specific cloud providers. Thankfully, there is now a better way, and a chance to both achieve interoperability between clouds, and take advantage of the providers’ service portfolio and breadth of capabilities.
That said, there are still solutions which don’t always provide the interoperability and extensibility that enterprises need these days to ensure future-proofing and application deployment portability. Even hybrid cloud approaches have not proven to be immune to the challenges of future proofing, struggling to keep up with the pace of the industry and the disruptive technologies debuting all the time. Ultimately, the new approach should be built for hybrid stacks, not focusing solely on the clouds, and should provide access to the full functionality of the underlying infrastructure.
In steps TOSCA (Topology Orchestration Specification for Cloud Applications), the standard set for cloud applications, by the Oasis Foundation. TOSCA was established for exactly this purpose, and serves to provide agnosticism and inherent interoperability between clouds. It is intended to bring standardization to the way applications are orchestrated in cloud environments – and you know how much enterprises love standards! Standards provide reliability and clarity to the scope of projects and approaches such as cloud orchestration. By building one vocabulary and syntax, organizations are able to adapt to the rapidly-evolving world of cloud, in a much more simplified manner.
Introducing Automation and Orchestration to OpenStack.
OpenStack offers an orchestration service known as Heat. The software combines other central components of OpenStack into a one-file template system essentially designed to operate exclusively with OpenStack. Cloudify on the other hand was designed to support multi-cloud infrastructure and allow interoperability between infrastructures.
Cloudify is based on the TOSCA standard. It was built as an integration platform to standardize templating, workflows, and cloud plugins. This provides a means of commonality amongst technologies that otherwise wouldn’t natively or intuitively plugin to one another, such as OpenStack with Azure, Kubernetes or Docker, and even non-virtualized environments like data centers. Cloudify makes it possible to adopt a technology that adapts to your organization’s way of working (or how you would like for it to work), rather than forcing your organization to work around the technology.
As a templating language, TOSCA offers greater abstraction flexibility than API abstraction, and provides enterprises with the level of customization and extensibility that they require. All this, without requiring the enterprise to develop or change the implementation code. This is why many major projects – ARIA, Tacker, and OpenStack Heat to name a few – are focusing on building solutions based on this standard.
Ultimately, Azure avails users a new set of building blocks to use in managing the application stack and its lifecycle across stacks, technologies, and clouds. Microsoft now boasts the most open source development on GitHub – coming in ahead of Angular, Facebook, and even Google – making them a solid contender in the arena of openness and interoperability demands from enterprises. This also provides a level of flexibility which will enable users to define abstraction levels per application or individual use case, making cloud portability achievable without rewriting underlying code, and enabling true hybrid cloud environments.