Abstract:
Multi-cloud applications are becoming popular, as they can run across multiple public and private cloud platforms while overcoming vendor lock-in, reducing cost, and enhancing flexibility and reliability. Applications hosted on multiple cloud platforms use either libraries or service-based abstraction layers. Application orchestration platforms further simplify the deployment and management of multi-cloud applications by providing auto-scaling, service metering, health monitoring, and a rich set of operational tools. Containerization is particularly useful in multi-cloud applications, as it provides a consistent environment for an application regardless of where it is deployed. However, container orchestration platforms such as Docker Swarm lack support and operational tools to enable seamless application orchestration across multi-cloud resources.
In this research, we developed a container-based platform for application orchestration in a multi-cloud setup as a set of microservices and required operational tools addressing the above limitations. Docker was chosen to demonstrate the proof of concept solution, as it already provides features to orchestrate microservices. Containerized multi-cloud applications can use the proposed application orchestration platform to achieve resource elasticity across multiple cloud platforms. To trigger scale in and out decisions, we used a rule-based approach where we compared the container runtime metrics provided by Docker with preconfigured threshold values. We evaluated the utility of the proposed platform using three web applications that were compute-intensive, memory-intensive, and utilized a RESTful application programming interface integrated with an external cloud service. The proposed container-based application orchestration platform improved the throughput of the three web applications by 180%, 73%, and 46%, respectively, compared to the same web applications deployed in a private cloud. Whereas the response time was reduced by 36%,-232%, and 7%, respectively. Even for cases where latency is increased error rate was reduced.