PaaS offerings, and (ii) SeaClouds management will
use a REST harmonized API for the deployment,
management and monitoring of simple cloud-based
applications across different and heterogeneous cloud
PaaS offerings. SeaClouds intends to use Brook-
lyn’s policy-driven functionality to integrate support
for IaaS providers. Moreover, Brooklyn’s approach to
policy modeling and enforcing can provide guidance
for SeaClouds orchestration/adaptation and manage-
ment functionality. On the other hand, Brooklyn only
targets the IaaS level and provides no support for or-
chestration. Beyond what Brooklyn provides, Sea-
Clouds will therefore extend policy-driven function-
ality to the PaaS level and also add support for adap-
tation and orchestration. Due to a common partner in
both initiatives (CloudSoft), Brooklyn can also bene-
fit from integrating SeaClouds functionalities, espe-
cially regarding the integration of adaptation tech-
niques in supported policies.
Standards for Cloud Interoperability. CAMP
(Cloud Application Management for Platforms) (OA-
SIS, 2012a) aims at defining harmonized APIs, mod-
els, mechanisms and protocols for the self-service
management (provisioning, monitoring and control)
of applications in a PaaS, independently of the cloud
provider. However, CAMP is only a protocol specifi-
cation, so it needs to be implemented by parties adopt-
ing the protocol.
The OASIS TOSCA (Topology and Orchestra-
tion Specification for Cloud Applications) (OASIS,
2012b) aims at enabling the interoperable description
of application and infrastructure cloud services, the
relationships between parts of the service, and the op-
erational behaviour of these services, independently
from the cloud provider. By increasing service and
application portability in a vendor-neutral ecosystem,
TOSCA aims at enabling portable deployment to any
compliant cloud, smoother migration of existing ap-
plications to the cloud, as well as dynamic, multi-
cloud provider applications.
Challenges in Standards for Cloud Interoperabil-
ity. SeaClouds intends to actively contribute to the
standardization effort of CAMP (OASIS, 2012a) both
by exploiting CAMP-compliant interfaces provided
by PaaS providers, and by contributing review pro-
posals that will possibly emerge while specifying
properties of SeaClouds orchestrations, adaptations
and monitoring. SeaClouds will exploit the TOSCA
specification to drive the design of the model for spec-
ifying cloud service orchestrations. In doing so, Sea-
Clouds might actively contribute to the standardiza-
tion effort of TOSCA, by contributing review propos-
als that will emerge while trying to devise TOSCA-
compliant instances of the SeaClouds service orches-
tration model. On the other hand, SeaClouds will also
focus on developing functionalities that are deliber-
ately out of the scope of TOSCA (OASIS, 2012b)
to solve issues about policies for the dynamic man-
agement of service orchestrations. Although the
currently available implementations of TOSCA and
CAMP do not yet support the management of com-
plex applications over multiple clouds, SeaClouds
will work towards building such management on top
of them.
3 THE SeaClouds APPROACH
SeaClouds aims at homogenizing the management
of different cloud providers and at supporting sound
and scalable orchestrations of services across them.
Moreover, systems developed with SeaClouds will in-
herently support the evolution of their constituent ser-
vices, so as to easily and dynamically cope up with
needed changes. The development, monitoring and
reconfiguration via SeaClouds will include a unified
management service, where services can be deployed,
replicated, and administered by means of standard
and harmonized APIs.
In order to obtain its main goals (viz., the develop-
ment of the platform and the definition, implementa-
tion and validation of the use cases), SeaClouds will
build a foundation to allow “Agility After Deploy-
ment” by providing necessary tools and a framework
for Modelling, Planning and Controlling cloud appli-
cations.
Figure 3 illustrates SeaClouds initial architecture.
The Planner module will implement SeaClouds plan-
ning policy to orchestrate the multi-cloud deployment
of application modules. The Planner will take the in-
put data provided by SeaClouds users, who will spec-
ify the application modules to be deployed, as well
as desired QoS properties of the whole application
and/or QoS and technology requirements for individ-
ual application modules. The Planner will determine
the best offer for each module (by using the Discov-
ery API) and will determine how to orchestrate the
modules across the selected cloud platforms (viz., or-
chestration specification).
The Controller module will implement the multi-
cloud deployment of application modules and the
monitoring policy. In particular, the Multi-Cloud De-
ployer component will input the orchestration spec-
ification generated by the Planner, and deploy (by
exploiting the Multi-Cloud Deployment API) the
application modules on the specified clouds. The
Monitor component will be in charge of monitoring
(by exploiting the Monitoring API) that application
EUProjectSeaClouds-AdaptiveManagementofService-basedApplicationsAcrossMultipleClouds
761