Toward Integration Of Private and Public Enterprise Cloud Environment

23.5 Toward Integration Of Private and Public Enterprise Cloud Environment

As an emerging computing paradigm, cloud computing is prospective for various types of research. One of the challenging cloud computing-related researches is

dynamic, on-demand scaling of cloud. As can be seen in Fig. 23.4 , currently a cloud is a single entity. It is either private or public. Scaling a cloud depends on the whole size of the cloud. A user in a private research institution with a small private cloud can have difficulties in provisioning more resources if a certain computation task grows in complexity and data input size. Current option when such situation occurs is to move the whole computation to a public cloud that supports more resources. This principally lessens the usability and effectiveness of transforming legacy system into a cloud environment.

Fig. 23.4 Projected evolution of cloud computing interoperability Cloud integration and interoperability can be achieved by several methods. We

would like to highlight several key methods that can foster the integration and inter- operability. Building semantics is one of the methods deemed essential. Currently, each cloud provider goes with its own way in defining the abstraction for the resources. Amazon, for example, uses manifest XML file to describe a virtual machine image which is called Amazon Machine Image (AMI). By complying with certain semantics instead, it is possible to create a directory service that contains list of VMIs from various Independent Software Vendors (ISVs) located across different domains along with description about each image. This will assist in the enable- ment of auto VMI discovery and deployment across multiple authorities. This idea is similar with WSDL and service registry in web service SOA.

Standardization is also an important aspect to consider. Cloud services in each provider use different interfaces thus without the help of middleware or a cloud

23 Feasibility Study and Experience 549 service broker, it is difficult to integrate the heterogeneous services. Currently, there

has been effort from Open Grid Forum (OGF) to standardize the interfaces for IaaS cloud computing facilities (OGF Open Cloud Computing Interface Working Group, http://www.occi-wg.org/doku.php ). The standardization will cover the development of APIs for cloud consumers, integrators, aggregators, providers, and vendors.

Early effort for the integration can be seen in the development of middleware. Eucalyptus (Nurmi et al., 2009 ) and OpenNebula (Vozmediano, Montero, Llorente, 2009 ) are samples of middleware for cloud management. Eucalyptus provides the same tools and interfaces with Amazon EC2. It consists of node controller which controls the execution, inspection, and termination of VM instances, cluster con- troller which gathers information about and schedules VM execution as well as manages virtual instance network, storage controller which provides mechanism for storing and accessing VMI and user data, and cloud controller for high-level scheduling decisions and displaying information about resources. Eucalyptus is basically a middleware for managing a private cloud infrastructure but recent development enables the management of a hybrid cloud infrastructure.

On the other hand, OpenNebula tries to provide a uniform cloud management layer based on service type. Its basic principle is to separate resource provisioning from the service management. By implementing this principle, it enables elastic cluster capacity through on-demand deployment or shutdown of virtual worker nodes which can be located in a private or public cloud, cluster partitioning through segregation and isolation of worker nodes based on service type, and heterogeneous configurations which enables a service to have multiple software configurations. OpenNebula supports various virtualization technologies including Xen, KVM, and VMWare which are usually used in a private cloud and interfaces to public IaaS-cloud like AmazonEC2 and ElasticHosts.

Still, existing efforts can accelerate the progress if there is common consensus about the architecture of a cloud computing system. As cloud computing nowa- days is much driven by the enterprises, it is inevitable to see various cloud systems with each implementing different interfaces, abstractions, layering, and manage- ment scheme. With common architecture, an ecosystem consisting of private clouds and public clouds interacting dynamically for elastic resource provisioning and service exchange will be closer to come.