What is interoperability? The dictionary definition of the term may perhaps read as “the ability of the component parts of a system to operate successfully together”. But, the term has assumed many meanings for different people working with Cloud computing. To some, it means the ability of the application to move from one environment to another. To others, it means the ability of customers to use same or similar management tools and software in a variety of Cloud environments and platforms.
NIST identified three kinds of serial or simultaneous interoperability needs of customers working with multiple Clouds:
- Performing migration between Clouds
- Interfacing across Clouds, and
- Working with a selected Cloud while interacting with another
Whatever the definition and the need might be, a close look at Cloud environment will reveal that no two Cloud vendors implement their Clouds in the same way. So, how will the Cloud environment impact the interoperability of the application, or how will the component parts of different Clouds work together?
Each Cloud contains its own hypervisors, security protocols, process flows, storage models, networking configurations, API and licensing models. Moreover, while interoperability works well in the lower levels of the IT stack, it gets tougher as the data / applications are moved up the stack. In short, interoperability is made almost impossible by “vendor lock in”, abstract programmatic differences between Clouds, lack of standards, common control interfaces, and so on.
Therefore, if the interoperability concerns involve more than just the deployment of specific applications across Cloud services, customers must ask their different Cloud vendors the relevant questions on interoperability. For instance, you may have questions as under:
- Will the application and the application stack have to be rebuilt?
- Will it be possible to set up the network in the target Cloud so that the application enjoys support from the original Cloud?
- Is the level of security same as that provided by the source Cloud?
- Is it possible to manage the application if it is running in the target Cloud?
- Is it possible to encrypt the data with the encryption protocols of the source Cloud while it is running in the target Cloud?
It is true that interoperability issues are still not at the forefront of Cloud computing concerns. Organizations are still moving to the Cloud despite the lack of standards, and lack of portability between Clouds. However, soon there will be a clamor for interoperability, and standards will emerge over time.