Sie sind auf Seite 1von 4

2011 First International Symposium on Network Cloud Computing and Applications

A comparative study of the current Cloud Computing technologies and offers


Meriam MAHJOUB Afef MDHAFFAR Riadh BEN HALIMA Mohamed JMAIEL
University of Sfax, ReDCAD Laboratory, B.P. 1173, Sfax-Tunisia meriam.mahjoub@gmail.com, afef.mdhaffar@redcad.org, {riadh.benhalima,mohamed.jmaiel}@enis.rnu.tn Abstract - Cloud Computing is a powerful and flexible software environment, which delegates the materials management and in which users pay as they go. The migration of enterprise applications on the Cloud is increasing. Most of these applications are available with a standardized access to the business logic through Internet. However, the current cloud offers is not always complying with users needs. For instance, some providers do not guarantee sufficient resource flexibility and high availability. Other users try to build their own Cloud based on open source technologies. In this work, we conduct a survey on current Cloud providers and technologies in order to help users (1) choosing the better cloud offer that compiles with their needs or (2) building their own Cloud infrastructure with the most suitable open source technologies. Keywords-Virtualization; Xen; KVM; VMware; VirtualBox; HyperV; OpenVZ; Cloud Computing; Eucalyptus; OpenNebula; Nimbus; AbiCloud; Xen Cloud Platform; OpenStack.

machine monitors has been extensively studied ([5], [6]). In this paper, we present an evaluation of different open source virtual machine solutions. The paper is organized as follows: Section 2 gives taxonomy of the virtualization technologies used to build the Cloud. We focus especially on virtualization and current open source solutions. In Section 3, we show the current used techniques to build a cloud computing. A classification of these tools is provided. In Section 4, we briefly address the comparisons of different Cloud Computing providers. The last section concludes the paper. II. VIRTUAL MACHINE MONITORS

I.

INTRODUCTION

There are many benefits of adopting the services offered by a Cloud provider. Applying them would depend on the nature, size and needs of the enterprise. With the emergence of different Cloud providers, the decision to choose the best that meets the customers needs becomes a complex task. Thus, each of has their own set of pricing, flexibility, support and other important parameters. Many enterprises such as Amazon, Google, Microsoft and Salesforce have entered the business of Cloud Computing providers. The open source community has also been very active in the Cloud Computing area with numerous contributions such as around the virtualization. Virtualization is a key enabling technology for Cloud Computing as it enables a more efficient and flexible use of resources. Virtualization represents a foundational element of Cloud for its multitudinous benefits such as flexibility, isolation, high resource utilization rate and so on. Building a Cloud environment often involves choosing initially a solution for Cloud management. This is a very difficult decision since each solution has its specific characteristics. Previous works [1, 2, and 3] surveyed open source solutions comparing features like the architecture, the virtualization platforms and the service type. Other works, like in [4], have made some comparative research on Cloud Computing from enterprise perspectives. In order to give a more objective description of the existing solutions and their benefits, we discuss, in this paper, a comparative study of several projects which currently devoted word-wide. For instance, facing many virtual machine monitors (like openvz, xen, kvm etc.); users do not know which is the best one for their applications. Performance evaluation on virtual
978-0-7695-4550-9/11 $26.00 2011 IEEE DOI 10.1109/NCCA.2011.28 131

Virtual machine monitor is a software that allows a single physical machine to support multiple virtual machines. It is based on three virtualization technologies which are fullvirtualization, para-virtualization and OS-level virtualization (Isolation), etc. Full-virtualization presents a faithful emulation of hardware, as shown in Figure 1. It offers an isolation and security for virtual machines and simplifies migration and portability. VMware virtualization products and VirtualBox of Microsoft perform full-virtualization. In Figure 2, the paravirtualization just provides a virtual machine abstraction that is similar but not identical to underlying hardware. Then, the guest OS needs some modifications like for Xen. The third case of virtualization is resource isolation between users, as shown in Figure 3. Instead of running a number of VMs that run multiple copies the same OS kernel, it creates isolated process contexts inside one OS kernel. Isolation exists only for Linux systems.

Figure 1. Full-virtualization

Figure 2. Para-virtualization

Figure 3. Isolation

Table I shows the comparative technical studies between those three virtualization technologies.

TABLE I. Isolation

VIRTUALIZATION TECHNIQUES Paravirtualization Different types (guest OS running on the host server should be modified so that it recognizes the virtualization software layer) ++ + Xen, HyperV Fullvirtualization Different types (do not require any change or modification to their guest OS but it does require that the host physical systems contain Virtualization Technology) + ++ KVM, VirtualBox

Guest OS types

Linux (the same OS as the host system)

Performance Simplicity Tool

+++ +++ OpenVZ

Then we can say that: Isolation is considered as the most performant solution. However, its disadvantages lies in the fact that it exists only for Linux systems and guests OSs must have the same OS type as the host; Para-virtualization is done with a modified kernel that is aware of being virtualized; Full Virtualization is done with a hardware and processorbased virtualization support that allows to run unmodified guest kernels and then they are not aware of being virtualized. However, this solution is considered less preferment as the guest OS must pass through the virtualization layer to access hardware resources. Actually, the popular virtual machine monitors involve VMware, HypeV, OpenVZ, Xen and KVM. We describe them briefly in the following: 1) Xen Xen is a Virtual Machine Monitor (VMM) originally developed at the University of Cambridge. It represents a popular target for scientic research. It requires the guest OSs to be modified as it is considered a para-virtualization solution. Xen supports live migration. 2) KVM KVM consists in creating a VM environment handled by the Linux kernel. It is included in the official stable Linux kernel releases since version 2.6.20 and is realized by adding support for the IntelVT and AMD-V virtualization hardware. 3) OpenVZ OpenVZ is an OS-level produced by Virtuozzo. It is claimed to be highly scalable with strong isolation between containers. The OpenVZ team is contributing to Linux kernel and works by limiting the number of resources (memory, shares of the processor, etc.) [6]. 4) VirtualBox VirtualBox, originally developed by Microsoft, supports para-virtualized drivers inside the guest OS in order to access hardware more efficiently. 5) VMware solutions VMware is the global leader in virtual infrastructure technology, helping large and small organizations to increase the efficiency and cost-effectiveness of their IT operations. Using a VMware virtualization solution enables to

transform the hardware resources of an x86-based computer to create a fully functional virtual machine. 6) HyperV HyperV is a hypervisor-based virtualization system for x8664 systems. It provides a foundational virtualization platform that enables users to transit to the Cloud. It is considered as a para-virtualization solution. Table II shows the comparative technical studies between those different virtualization solutions. 7) Findings Through studying and comparing Xen, KVM, OpenVZ, VirtualBox, VMwarea and HyperV, we found that: The biggest benefit of XEN is the fact that it allows to get the most efficient use of the server. It is also the technique that is most used in Cloud Computing environments; KVM has the advantage of adding virtualization capabilities to a standard Linux kernel so that the virtualized environment can benefit from all the ongoing work on the Linux kernel itself; VirtualBox supports any type of guest OS including Macintosh; VMware is the first solution used in Cloud Computing; HyperV is based on Windows and have the advantage that it is included in Windows Server 2008; The disadvantage of OpenVZ is that all virtual servers have to get along with the kernel version the host runs on. However, because it doesn't have the characteristics of a true hypervisor, it is faster and more efficient than XEN, KVM and VMware. III. OPEN SOURCE CLOUDS

Most of the open source Clouds are providing Infrastructure as a Service (IaaS). Eucalyptus, OpenNebula, Xen Cloud Platform (XCP), Nimbus, AbiCloud and OpenStack are technically sound and popular. 1) Eucalyptus It is an open source Cloud Computing framework commonly available to academic research groups. It provides a modular and open to experimental instrumentation and study platform [7]. The architecture of Eucalyptus is simple, flexible and modular with a hierarchical design. Currently, it supports VMs that run with Xen, KVM and VMware. 2) OpenNebula OpenNebula is an open source toolkit used to build private, public and hybrid Clouds. It works with Xen, KVM and VMware virtualization solution and it is currently working on supporting VirtualBox. 3) Nimbus The Nimbus project is considered as a science Cloud Computing solution providing Infrastructure as a service. Nimbus is attached to the Culumbus project and it supports different virtualization implementations: Xen and KVM. 4) Xen Cloud Platform (XCP) XCP is an open source enterprise server virtualization and Cloud Computing platform. It was originally derived from Citrix XenServer and it is licensed under the GNU General Public License (GPL2).

132

TABLE II. OpenVZ


SWsoft Linux (certain versions) Linux included in Linux Kernel - Most Windows and Linux versions - MacOS - All Windows version - Linux (2.4 and 2.6) - Solaris Full-virtualization (unmodified OS) University of Cambridge Qumranet in Isral Innotek (Sun) VMware Microsoft

VIRTUALIZATION SOLUTIONS KVM VirtualBox VMware HyperV

Xen

Developed by

Host
- All Windows and Linux versions - Solaris All OS Full-virtualization (unmodified OS) Full-virtualization (unmodified OS)

All Linux distributions

Compatible OS

Guest
Isolation

Linux (the same OS as the host system)

- All Windows and Linux versions - Macintosh - OpenSolaris - All Windows and Linux versions - Solaris - OpenSolaris

- Windows 7, vista, and XP - SUSE Linux Entreprise Server, RedHad Entreprise Linux - Windows 7, vista and XP - SUSE Linux Entreprise Server, RedHad Entreprise Linux Para-virtualization

Virtualization types
X86 (32 bits processor) with yes GPL license GPL license with/without yes (V 3.1.0) - x86 (32 bits processor) - Inte464/AMD64 (64 bits processor) x64 (64 bits processor) with/without yes (VMware VMotion) Google, Salesforce Shareware

Platform

- x86 (32 bits processor) - AMD64/Inte464 (64 bits processor) with/without yes GPL license

- x86 (32 bits processor) - x64 (64 bits processor) with only with Cluster Shared Volumes Shareware

- Para-virtualization (modified OS) - Full-virtualization (InetlVT and AMD-V technologies) - x86 (32 bits processor) - x64 (64 bits processor) - PowerAMC & ARM with/without yes Amazon, Cloud.com, Rackspace

Virtualization enabled Live migration Cloud uses Free / Shareware TABLE III. OpenNebula
European Union Cloud Computing scientific solution Scientific communities Most Linux distributions Enterprise University of Chicago Citrix XenServer - Evolution of Citrix XenServer

GPL license

IAAS OPEN SOURCE CLOUD COMPUTING SOLUTIONS Nimbus Xen Cloud Platform AbiCloud
Abico Cloud management Enterprise

Eucalyptus

OpenStack

Produced by Main purpose

- Santa Barbara university - Eucalyptus System Company EC2 Cloud

Users

Enterprise

Login

133
- SCP - SQLite3 Manual configuration - EC2 WS API - OCCI API - Authentication Root (Only if necessary) - X509 certificate - SSL connection - Integrate Globus (certification) Le context broker Periodic verification of cloud nodes Physical nodes STAR - EC2 WS API - Nimbus WSRF - Centralized - Three components - Minimum two servers Python, java - GridFTP, Comulus (new version of GridFTP) - SCP DHCP server installed on nodes XAPI Nginx Database backend (registers virtual machine information) Shared FS Cluster node Reservoir Project , NUBA

Supported OS

Linux (Ubuntu, Fedora, CentOS, OpenSUSE et Debian)

Rackspace, NASA, Dell, Citrix, Cisco, Canonical etc. Offers Cloud Computing services Enterprises, service providers and researchers - Linux - Windows - Requires x86 Server Integration of OpenStack object and OpenStack compute Python VastSky HDFS WSManagement Web interface with Adobe Flex - Authentication (password stored in MD5 format) OpenStack Store OpenStack Compute Web interface Web - Certification

Architecture

language

- Hierarchical - Five components - Minimum two servers Java, C and python

Build private Cloud Researchers on Cloud Computing and Virtualization Linux (Ubuntu, RedHat Enterprise Linux, Fedora et SUSE Linux Enterprise Server) - Centralized - Three components - Minimum two servers Java, Ruby and C++

- Linux (Fedora, RedHat, CentOS et Suse Linux (Ubuntu et CentOS) Linux Enterprise Server) - Windows XP - Windows 7 - Mac OS - Centralized - Centralized - Three components - Three components - Minimum two servers - Minimum two servers Caml Java, Ruby, C++, and python

Storage

Walrus

Network

DHCP server on the cluster controller

Access interface

- EC2 WS API - Tools as: HybridFox, ElasticFox

User

Open vSwitch Command lines XE (XenCenter and Versiera (commercial solution for Windows) - Authentication - SSH connection - SSH connection

- Zip file that contains certifications - HTTPS connection - SSH connection - Root required The cloud controller

- Authentication AbiServer Virtual machine states synchronization

- Certification The cloud controller Replication

administrator Load balancing Fault tolerance

Cluster controllers separation

Live migration

Node controller

- Open Virtualization Format - Shared Storage XCP Host

Clouds nodes Active in Span

OpenStack Compute

VMs location Compatibility with EC2 Used by

NASA

5) AbiCloud AbiCloud is a private Cloud solution developed by Abiquo. It enables users to build Infrastructure as a service Cloud environment. The supported virtualization techniques of AbiCloud are VirtualBox, VMWare, XEN, and KVM. 6) OpenStack OpenStack is a collaborative software project designed to create freely available code and needed standards for the benefit of both Cloud providers and Cloud customers. OpenStack is currently three projects: OpenStack Compute (deploy automatically provisioned virtual compute instances), OpenStack Object Storage (redundant storage of static objects) and OpenStack Image Service (provides discovery, registration, and delivery services for virtual disk images). Table III shows the comparative technical studies between those different open source IaaS Cloud Computing solutions. Among the classification criteria, we quote: Main purpose: Cloud providers should carefully choose the platform that matches the best with their objectives. Architecture: The architecture of a platform tells a great deal about how that platform works and how it was built. Virtual Machine Placement: The location of the VM is important to ensure a clever and then an optimal use of the resources. Storage: The model of networked online storage how data is stored on virtualized pools. Network: Cloud platforms must give attention to virtual networks to help ensuring performance. Access interface: This aspect concerns the fact how cloud clients are going to access their leased resources. Security: Cloud Computing becomes increasingly popular in the last few years. So it must be secure. Fault-tolerance: The property that enables a system to continue operating properly in the event of the failure of some of its components. Load balancing: A computer networking methodology to distribute workload across multiple computers to achieve optimal resource utilization. 7) Findings Analyzing those six open source IaaS Cloud solutions we found that:
Eucalyptus is oriented toward a company that wants to build its private Cloud for its own use and therefore wants to protect itself from user malignancy; OpenNebula is oriented toward personal interests in Cloud Computing or VM technology so it is quite ideal for users that want to stand up just a few cloud machines quickly; Nimbus looks toward the more cooperative scientific community. It is ideal for users that are less interested in the internals technique of the system; XCP focuses especially on providing tools to manage a collection of virtualized hosts. However The biggest drawback of XCP is that it is not offer a user interface to manage the Cloud; AbiCloud can be used to build, integrate and manage public and private Cloud in an homogeneous environments;

IV.

CLOUD PROVIDERS

Cloud Computing has generated a lot of interest and competition in the industry. Some actors then are setting their place on the Cloud Computing marketing. Most of them use VMware as a virtualization technology. Amazon proposes two solutions, mainly EC2 and S3 which are the two most popular services available as a part of Amazon Web Services. Salesforce.com was one of the earliest Cloud Computing companies to get setup with a specific focus on CRM and functioned as a SaaS company. However, Google made a late entry into the Cloud Computing business with two services: Google Apps which primarily targets the SaaS space and the Google App Engine which provides a PaaS model for businesses and individuals to deploy their Web Apps. Microsoft is one of the last players to enter into the market. V. CONCLUSION The term Cloud Computing has generated a lot of interest and competition in the industry. With an ever-growing list of Cloud Computing service providers, identifying one that best suits the business needs of an enterprise is a challenging and difficult task. Hopefully, a comparison of different Cloud Computing solutions can leverage the Cloud Computing research area providing a good starting point to research groups and interested readers to better choose the most suitable one. In the near future, we will build our own solution of Cloud Computing, based on this comparative study. Then, we will focus on a large scale experimentation to assess performance of our infrastructure compared to the current offers. REFERENCES
[1] Peter Sempolinski and Douglas Thain. A comparison and critique of eucalyptus, opennebula and nimbus. In Proceedings of the 2010 IEEE Second International Conference on Cloud Computing Technology and Science , CLOUDCOM '10, pages 417-426, Washington, DC, USA, 2010. IEEE Computer Society. J. Kelner . T. Endo, G. E. Gon calves and D. Sadok. A survey on opensource cloud computing solutions. Brazilian Symposium on Computer Networks and Distributed Systems, May 2010. Junjie Peng, Xuejun Zhang, Zhou Lei, Bofeng Zhang, Wu Zhang, and Qing Li. Comparison of several cloud computing platforms. In Proceedings of the 2009 Second International Symposium on Information Science and Engineering , ISISE '09, pages 23-27, Washington, DC, USA, 2009. IEEE Computer Society. Bhaskar Prasad Rimal, Eunmi Choi, and Ian Lumb. A taxonomy and survey of cloud computing systems. In Proceedings of the 2009 Fifth International Joint Conference on INC, IMS and IDC, NCM '09, pages 44-51, Washington, DC, USA, 2009. IEEE Computer Society. Jianhua Che, Qinming He, Qinghua Gao, and Dawei Huang. Performance measuring and comparing of virtual machine monitors. In Proceedings of the 2008 IEEE/IFIP International Conference on Embedded and Ubiquitous Computing - Volume 02, EUC '08, pages 381-386, Washington, DC, USA, 2008. IEEE Computer Society. Jianhua Che, Congcong Shi, Yong Yu, and Weimin Lin. A synthetical performance evaluation of openvz, xen and kvm. In Proceedings of the 2010 IEEE Asia-Pacic Services Computing Conference, APSCC '10, pages 587-594, Washington, DC, USA, 2010. IEEE Computer Society. Daniel Nurmi, Rich Wolski, Chris Grzegorczyk, Graziano Obertelli, Sunil Soman, Lamia Youseff, and Dmitrii Zagorodnov. 2009. The Eucalyptus Open-Source Cloud-Computing System. InProceedings of the 2009 9th IEEE/ACM International Symposium on Cluster Computing and the Grid (CCGRID '09). IEEE Computer Society, Washington, DC, USA, 124-131. DOI=10.1109/CCGRID.2009.93 http://dx.doi.org/10.1109/CCGRID.2009.

[2]

[3]

[4]

[5]

[6]

134

Das könnte Ihnen auch gefallen