Cloud computing reduces time-to-market and provides on-demand scalability at a low cost. Many private and public Clouds have emerged during the last years, offering a range of different technologies each suited for particular types of applications. SeaClouds tackles the problem of deploying and managing, in an efficient and adaptive way, complex multi-services applications over technologically heterogeneous Clouds environments. This allows organisations to embrace Cloud solutions and, at the same time, avoid risks of unreliability and vendor lock-in. SeaClouds provides an answer to questions such as: - How can a complex application be deployed, managed and monitored over multiple Clouds, distributing its modules according to the deployment requirements and the strong and weak points of each offering? - How can a complex application be reconfigured if run-time problems are detected?
SeaClouds performs a seamless adaptive multi-cloud management of service-based applications, by developing Cloud Service Orchestrators and a set of tools to manage complex applications, thus avoiding the problem of Cloud lock-in. This will be achieved by supporting the migration, replication, and distribution of modules that compose cloud-based applications over multiple and technologically diverse Clouds offerings, by using a unified management API and universal metrics for monitoring and verifying functional and non-functional properties. The results delivered by SeaClouds will be compatible with the current standards related to cloud interoperability, OASIS
The objectives of SeaClouds are therefore: - Support orchestration, adaptation, and verification of services distributed over different Cloud providers. - Provide a unified Cloud-independent mechanism to manage cloud-based services distributed over different Cloud providers. - Enable monitoring and runtime reconfiguration operations of services distributed over different Cloud providers. - Align SeaClouds with major standards for cloud interoperability, particularly OASIS CAMP and TOSCA, promoting them in research and industrial communities.
SeaClouds aims to support the work of developers and application managers; for these target groups SeaClouds will provide: - In the design phase: --- a new approach based on TOSCA specification to express how each component of the application should interact with the other components; --- a language to specify requirements in terms of QoS for each components and for the application as a whole. - In the deployment phase: --- searching tool among existing Cloud offerings for those that best match the developer's requirements expressed at design time; --- tools to deploy the application on the selected Cloud Providers. - In the runtime phase: --- tools to monitor and analyse the performances of each components across different providers; --- tools to assess whether and which components should be redeployed on different Cloud providers, in case of non-satisfactory performances; --- in case of redeployment, tools to redeploy the underperforming components on different Cloud providers and to adapt the orchestration to the new configuration. - Such tools will be organized in a framework, which will be available either as software to install on premises or as Software as a Service, or a combination of both.