Abstract
The ability to run and manage multi-clouds applications (i.e., Applications that run on multiple clouds) allows exploiting the peculiarities of each cloud solution and hence improves non-functional aspects such as availability, cost, and scalability. Monitoring such multi-clouds applications is fundamental to track the health of the applications themselves and of their underlying infrastructures as well as to decide when and how to adapt their behaviour and deployment. It is clear that, not only the application but also the corresponding monitoring infrastructure should dynamically adapt in order to (i) be optimized to the application context (e.g., Adapting the frequency of monitoring to reduce network load), (ii) to enable the co-evolution of the monitoring platform together with the cloud application (e.g., If a service migrates from one provider to another, the monitoring activities have to be adapted accordingly). In this paper, we present a model-based platform for the dynamic provisioning, deployment, and monitoring of multi-clouds applications whose monitoring activities can be automatically and dynamically adapted to best fit with the actual deployment of the application.