2.3. Federation (inter-networking) of clouds
Current Cloud computing providers have several data centers at different geographical locations
over the Internet in order to optimally serve customer needs around the world. However, the
existing systems do not support mechanisms and policies for dynamically coordinating loadshredding
among different data centers in order to determine the optimal location for hosting
application services to achieve reasonable QoS levels. Further, the Cloud service providers are unable to predict the geographic distribution of end-users consuming their services; hence, the load
coordination must happen automatically, and distribution of services must change in response to
changes in the load behavior. Figure 2 depicts such a Cloud computing architecture that consists
of service consumers’ (SaaS providers’) brokering and providers’ coordinator services that support
utility-driven internetworking of clouds [13]: application provisioning and workload migration.
Federated inter-networking of administratively distributed clouds offers significant performance
and financial benefits such as: (i) improving the ability of SaaS providers in meeting QoS levels for
clients and offer improved service by optimizing the service placement and scale; (ii) enhancing the
peak-load handling and dynamic system expansion capacity of every member cloud by allowing
them to dynamically acquire additional resources from federation. This frees the Cloud providers
from the need of setting up a new data center in every location; and (iii) adapting to failures, such
as natural disasters and regular system maintenance, is more graceful as providers can transparently
migrate their services to other domains in the federation, thus avoiding SLA violations and the
resulting penalties. Hence, federation of clouds not only ensures business continuity but also
augments the reliability of the participating Cloud providers.
One of the key components of the architecture presented in Figure 2 is the Cloud Coordinator.
This component is instantiated by each cloud in the system whose responsibility is to undertake the
following important activities: (i) exporting Cloud services, both infrastructure and platform-level,
to the federation; (ii) keeping track of load on the Cloud resources (VMs, computing services)
and undertaking negotiation with other Cloud providers in the federation for handling the sudden
peak in resource demand at local cloud; and (iii) monitoring the application execution over its
life cycle and overseeing that the agreed SLAs are delivered. The Cloud brokers acting on behalf
of SaaS providers identify suitable Cloud service providers through the Cloud Exchange (CEx).
Further, Cloud brokers can also negotiate with the respective Cloud Coordinators for allocation
of resources that meets the QoS needs of hosted or to be hosted SaaS applications. The CEx acts
as a market maker by bringing together Cloud service (IaaS) and SaaS providers. CEx aggregates
the infrastructure demands from the Cloud brokers and evaluates them against the available supply
currently published by the Cloud Coordinators.
The applications that may benefit from the aforementioned federated Cloud computing infrastructure
include social networks such as Facebook and MySpace, and Content-Delivery Networks (CDNs). Social networking sites serve dynamic contents to millions of users, whose access and
interaction patterns are difficult to predict. In general, social networking web sites are built using
multi-tiered web applications such as WebSphere and persistency layers like the MySQL relational
database. Usually, each component will run on a different VM, which can be hosted in
data centers owned by different Cloud computing providers. Additionally, each plug-in developer
has the freedom to choose which Cloud computing provider offers the services that are more
suitable to run his/her plug-in. As a consequence, a typical social networking web application
is formed by hundreds of different services, which may be hosted by dozens of Cloud-oriented
data centers around the world. Whenever there is a variation in the temporal and spatial locality
of workload (usage pattern), each application component must dynamically scale to offer good
quality of experience to users.
Domain experts and scientists can also take advantage of such mechanisms by using the cloud to
leverage resources for their high-throughput e-Science applications, such as Monte–Carlo simulation
and Medical Image Registration. In this scenario, the clouds can be augmented to the existing
cluster and grid-based resource pool to meet research deadlines and milestones.