Comparison Of Multiple IaaS Cloud Platform Solutions

Transcription

Recent Researches in Information Science and ApplicationsComparison of multiple IaaS Cloud platform solutionsOMAR SEFRAOUIMOHAMED I UNIVERSITYNational School of Applied ScienceBP 669 Al Qods, OUJDAMOROCCOomar@ensa.ump.maMOHAMMED AISSAOUIMOHAMED I UNIVERSITYNational School of Applied ScienceBP 669 Al Qods, OUJDAMOROCCOaissaoui@ensa.ump.maMOHSINE ELEULDJMOHAMED I UNIVERSITYNational School of Applied ScienceBP 669 Al Qods, OUJDAMOROCCOeleuldj@ensa.ump.maAbstract: Currently, several solution cloud computing IaaS (Infrastructure as a Service) exists. Administartors,developers and users need to choose the best environment for them.The availability of free open source Cloudplatforms is essential to further drive the proliferation of private and hybrid Cloud computing environments. Inthis paper, we present a comparative study between some of the IaaS commonly used to select the best suited onefor deployment and research development in the field of cloud computing. The aim is to provide the computerindustry with the opportunity to build a hosting architecture, massively scalable which is completely open source,while overcoming the constraints and the use of proprietary technologies. Then, we present the solution OpenStackretained by the comparative study. We discuss in detail its functional and architectural system. We finish by adiscussion of the motivation of our choice of the IaaS solution.Key–Words: Opencloud, IAAS, OpenStack, Eucalyptus, OpenNebula, Cloudstack, Virtualization, Scalable1Introductionsupplier maintains the Cloud virtualization, hardware server, storage, networks. Among the mainactors of IaaS we find Amazon EC2, Rackspace,GoGrid.Cloud computing is relatively a new concept thatbrings together all the disciplines, technologies (Webservices, virtualization, SOA: service oriented architecture, grid computing,. . . ) and business models usedto deliver IT capabilities (software, platforms, hardware) as a service request, scalable and elastic [24].This is the new trend of computing where IT resourcesare dynamically scalable, virtualized and exposed as aservice on the Internet [8].Cloud computing is often associated with the supply of new mechanisms that allow providers to giveusers access to a virtually unlimited number of resources (Resource Outsourcing). It also uses billingmechanisms to use these resources on the basis oftheir consumption, allowing on-demand model: payper-use [8]. Warranties are offered by the infrastructure provider through tailored service contract: Service Level Agreements (SLA) [8].Today, all major industry players offer cloud solutions, especially Amazon EC2, Microsoft Azure,Google Apps and IBM blue cloud [23].Cloud computing consists of three levels of offerings:2. Platform as a Service (PaaS), you can developyour own applications using the services provided. The client maintains only those applications while the supplier maintains the runtimes Cloud, SOA integration, databases, serversoftware, virtualization, server hardware and thestorage networks. We have among the key players: Google Apps Engine, Windows Azure.3. Software as a Service (SaaS), the entire applications are available remotely. Among theproviders we have GoogleApps, salesforce, facebook.The three levels of cloud offering are shown infigure 1, the lower level is the computer hardware resources (computing, storage, network), and mechanisms called virtualization hypervisor, which virtualize access to the material resources of a physical machine (processor, memory and other devices). The interest of a hypervisor is to dynamically add or removeinstances of virtual servers on one physical server.This is done using the tools of services and interfacesmanagement. The upper level represents the interactions between the users of the services and the cloud.1. Infrastructure as a Service (IaaS), where theequipment is provided in the form of virtual machines. The client maintains the applications,runtimes, integration SOA (Service Oriented Architecture), databases, server software while theISBN: 978-1-61804-150-0212

Recent Researches in Information Science and Applicationsula, including characteristics, architectures and applications are done in order to provide more freedom ofchoice for the users of the cloud. Concerning OpenStack, little work has addressed this solution [11]. Wefind in [11] a comparative study of Eucalyptus, Nimbus and OpenNebula. This study, from 2011 is outdated. OpenStack has since then evolved, requiringan update. Recently, G. von Laszewski [6] outlinedthe differences between Eucalyptus IaaS platforms,OpenNebula, Nimbus and OpenStack. The focus ison the look and feel interface, storage and networkusage in a project called FuturGrid. The openness ofthe cloud is not addressed.3Currently, several proprietary and some opensource solutions exist, but are not easily amenable toexperimentation or instrumentation. Researchers interested in pursuing studies on Cloud Computing IaaShave few tools to work with.In this paper, from a comparative study of existing IaaS solutions, we propose an open source cloudplatform, modular and totally open, for any use including research. The paper is organized as follows.First, we compare the different IaaS solutions. Then,we present the OpenStack platform adopted by thiscomparative study. After that, we present the differentworks done on IaaS solutions. Finally, we concludewith a general summary and possible future works.3.1EucalyptusEucalyptus is a solution that allows the installation ofa private and hybrid cloud infrastructure. It is written in Java language, C and Python, with a main storage controller walrus and controllers on each node.The network is managed by the component cloud controller and each controller is authenticated by SSH keyfiles and permission to authenticate transactions. Eucalyptus scalability is limited, compared to the massive scalability, and the source code of some of itsmodules are closed. This is why it is being abandonedfor other solutions. Eucalyptus is the platform used byAmazon EC2.RELATED WORKSEarlier studies about IaaS solutions focused on twosides, the study of middleware platforms and on thecomparative studies of the different solutions. Eucalyptus [5, 14], OpenNebula [1, 17] and Nimbus[12]have been largely studied in the literature. In theseworks, the architecture and various components ofthese solutions were presented. There are also comparative studies of different solutions [21, 25]. In [1,12, 14], it is essentially an overview of the solutionsEucalyptus, Nimbusm OpenNebula and a presentationof their different characteristics. In [21, 25], comparative studies of Eucalyptus, Nimbus and OpenNebISBN: 978-1-61804-150-0OFDifferent solutions exist for the deployment of opensource clouds. Among these, we have Nimbus, Eucalyptus, OpenStack, OpenNebula and Cloudstack. Wepropose a comparative study of the last four solutions in order to select the most appropriate solutionto our criteria. These include popularity, communityuse, modularity, openness, open source. Evaluatingof comparing several IaaS cloud solutions requires aset of criteria such as: Management, Virtualization,Storage, Network, Security and Community VendorSupport Criteria.Figure 1: General architecture of the Cloud.2COMMONANALYSISCLOUD SOLUTIONS3.2OpenNebulaOpenNebula is another cloud solution, it is opensource under Apache 2 license. It is written in C ,Ruby and Shell. The network is managed manuallyby the administrator. Storage, the default copy of thevirtual machines are accessed via SSH. OpenNebulasupports authentication via LDAP. OpenNebula is therecommended platform for Europe and developed bya Spanish company. It is an easy to use solution forData Centers and Private Cloud.213

Recent Researches in Information Science and Applications3.3CloudstackCloudStack [3] is an open source IaaS Cloud platformoriginally developed by Cloud.com. In April 2012,Citrix donated CloudStack to the Apache SoftwareFoundation, while changing the license to Apache2.0. CloudStack implements the Amazon EC2 andS3 APIs, as well as the vCloud API, in addition toits own API.CloudStack, written in Java, is designedto manage and deploy large networks of VMs. CloudStack currently supports VMware, Oracle VM, KVM,XenServer and Xen Cloud Platform. CloudStack hasa hierarchical structure, which enables managementof multiple physical hosts from a single interface.3.4OpenStackOpenStack solution is recent and under active development. It has great potential due to its architectureand community and the support of its partners. Allcode is licensed under Apache 2 license. OpenStackis a platform developed by NASA dedicated to massive infrastructures.OpenStack main characteristics are that is : Scalable: This solution is already deployedworldwide in companies whose data volumesis measured in petabytes of distributed architectures and massively scalable up to 1 millionphysical machines, up to 60 million virtual machines and billions of stored objects [9]. Compatible and Flexible: OpenStack supportsmost virtualization solutions of the market: ESX,Hyper-V, KVM, LXC, QEMU, UML, Xen andXenServer [2, 23]. Open: Being an open source technology, the entire code can be modified and adapted as needed.The project OpenStack also presents a validationprocess for the adoption and development of newstandards.This project is supported by many companies inthe world (mainly in the U.S.) and is based on the codeused by NASA and Rackspace Cloud. In April 2012,the project lead and management functions have beentransferred to a newly formed OpenStack Foundation.It is written in python and currently implements twocontrol APIs, the EC2 API and Rackspace. It uses different drivers to interface with a maximum number ofhypervisors (Xen, KVM, HyperV, Qemu) [19]. Thisproject is dedicated to providing the computer industry with the opportunity to build a hosting architectureand massive scalability and is completely open source,while it overcomes the constraints of the use of proprietary technologies. According to this comparativeISBN: 978-1-61804-150-0Table 1: Comparative study of IAAS solution .Solutions cloud computing IAASEucalyptus OpenNebula Cloudstack OpenStackStorage Network Security Hypervisor Scalable Installation Docs Code Openness study, it appears that the best solution is OpenStack,it can become the reference solution of open sourcecloud computing because of its characteristics.4OPENSTACK ARCHITECTUREOpenStack architecture is built using three main components: OpenStack Compute, Image and Object (seefigure 2). In this section, we will explain in detailthese components and we will describe other components of OpenStack.4.1OpenStack ComputeOpenStack Compute, also known as Nova, is a management platform that controls the infrastructure tocontrol IaaS clouds. It is similar in scope to AmazonEC2 [12] and Rackspace CloudServers [13]. NovaCompute allows managing large networks of virtualmachines and redundant and scalable architectures.It provides an administrative interface and an APIneeded for the orchestration of the Cloud. It includesinstances management for servers, networks and access control. Compute requires no prerequisite hardware and is completely independent of the hypervisorNova consists of seven main components (Figure 3). At first, we have the API Server, which isconsidered the heart of Nova. It acts as the Web frontend service control of the hypervisor. Then, we findthe Message Queue that implements the mechanismfor dispatching the exchanged instructions to facilitatecommunication. After that, Compute Controller handles the lifecycle of instances, it is responsible for creating and manipulating virtual servers, while the component Object Store provides storage services. Volume Controller component handles the assignment,attachment and manipulation of volumes. While thenetwork Controller is responsible for the creation ofBridges / VLAN / DHCP / DNS and firewall rules.Finally, Scheduler distributes tasks and determines214

Recent Researches in Information Science and ApplicationsFigure 2: OpenStack Architecture [10].5where they should be executed.4.2Several considerations should be taken to determinethe best suited solution for the implementation of acloud platform.In addition to the aspects discussed in the previous section, respecting the openness and scalability criterea. We insist on two very important points :Opensource and support for new standards.From the beginning, OpenStack was completelyopen source. Eucalyptus recently opened its sourcecode but the development of additional plugin is stillcommercial.OpenStack also supports the Open Cloud Computing Interface (OCCI) [15], which is an emergingstandard defining IaaS APIs, and delivered throughthe Open Grid Forum (OGF) [16]. For a purely opensource policy, OpenStack seems to follow the trendsdictated either by the needs of users or by compliancewith the new open standards. Thus Openstack hasproposed a support for the OpenFlow standard [22].The same applies to OpenNebula, but indirectly withthe usage of Open vSwitch [18] [20]. While Eucalyptus has not yet supported this very promising standard.OpenStack Imaging ServiceImaging Service (project Glance) provides storageservices, recording and distributing the images to virtual machine disks. It also provides an API compatible with the REST architecture to perform queries forinformation on the images hosted on different storagesystems.4.3OpenStack Object StorageObject Storage (Swift project) is used to create a storage space redundant and scalable for storing multiplepetabytes of data. It’s not really a file system but isespecially designed for long term storage of large volumes. It uses a distributed architecture with multipleaccess points to avoid SPOF (Single Point of Failure).4.4Other componentsFeatures are added to fill a missing service or improvean existing one like: OpenStack Dashboard - horizon Keystone, Identity Service for OpenStack. It isthe authentication system of OpenStack. Thisnew component is emerging to address the problem of authentication and authorization of OpenStack.6CONCLUSIONOpenStack is designed to allow administrators and researchers to deploy IaaS infrastructure and providetools for creating and managing virtual machines ontop of existing resources. This work aims to illustrate that the system OpenStack has filled an im- Quantum, OpenStack Virtual Networking andAtlas, OpenStack Load Balancer.ISBN: 978-1-61804-150-0DISCUSSION215

Recent Researches in Information Science and ApplicationsFigure 3: Nova system architecture [10].portant niche in the design space of cloud computing by providing an easy to deploy over the existingresources, easy to use in experimentation by beingmodular, and most importantly formsopen source andprovides powerful features while following emergingopen standards. Currently, we deployed the entire system. This system will be used in future works to studyand evaluate its performances in dynamic reconfiguration in a IaaS Cloud Computing.[7][8]References:[1] B. Sotomayor, R.S. Montero, I.M. Llorente,I. Foster,Virtual infrastructure management in private and hybrid cloudsIEEE Internet Comput. 13 (2009) 1422.doi:10.1109/MIC.2009.119.[2] Citrix Systems. (2010). Xen Cloud Platform- Advanced Virtualization Infrastructure forthe Clouds. URL: http://www.xen.org/products/cloudxen.html.[3] CloudStack URL: http://cloudstack.org/[4] Elastic IP and Security Groups using OpenFlowURL : http://blog.opennebula.org/?p 2695[5] EucalyptusURL:http://www.eucalyptus.com/[6] G. von Laszewski, J. Diaz, F. Wang, and G. C.Fox, Towards Cloud Deployments using FutureISBN: d Indiana University, Bloomington, IN, FutureGrid Draft Paper, April ts/search/?hl enKeith J.,Burkhard N.(2010).The future of cloud computing. Opportunities for European Cloud Computing beyond (2010). Expert group report, dreport-final.pdf)Ken pepple july 2011. Deploying OpenStack.OReilly Media, Inc., 1005 Gravenstein HighwayNorth, Sebastopol, CA 95472.Ken pepple URL: http://ken.pepple.info/M Mahjoub, Mdhaffar A, Halima R.B, JmaielM. Comparative Study of the Current CloudComputing Technologies and Offers 2011.Nimbus.URL:http://www.nimbusproject.org/.Nova URL: http://nova.OpenStack.org/runnova/index.htmlNurmi, D., Wolski, R., Grzegorczyk, C.,Obertelli, G., Soman, S., Youseff, L. et al. (2009)The Eucalyptus Open-Source Cloud Computing System. In: 9th IEEE/ACM InternationalSymposium on Cluster Computing and the Grid.Shanghai, China 2009.Open Cloud Computing Interface URL: http://occi-wg.org/.

Recent Researches in Information Science and Applications[16] Open Grid Forum URL: http://www.ogf.org/.[17] OpenNebula URL: http://opennebula.org/[18] OpenNebula Project. (2010). OpenNebula.orgThe Open Source Toolkit for Cloud Computing.URL: http://www.opennebula.org/.[19] Openstack Open source software for buildingprivate and public clouds., URL: http://www.OpenStack.org/.[20] OpenvSwitchURL:http://openvswitch.org/[21] Peter Sempolinski and Douglas Thain,A Comparison and Critique of Eucalyptus, OpenNebula and Nimbus, University of Notre Dame.[22] Quantum NEC OpenFlow Plugin -Plugin[23] Takako,P., Estcio,G., Kelner,J., Sadok,D. (2010). A Survey on Open-source Cloud ComputingSolutions.WCGA - 8th Workshop on Clouds,Grids and Applications.Gramado:28 May, 3-16.Teyssier,S. (2010).[24] Vaquero LM, Rodero-Merino L, Morn D (2011)Locking the sky: a survey on IaaS cloud security. In Journal of computing Springer Verlag91(1):93,1/2011 1-26 .[25] Z. Lei, B. Zhang, W. Zhang, Q. Li, X. Zhang,and J. Peng Comparison of Several Cloud Computing Platforms. Sec-ond International Symposium on Information Science and Engineering,pages 2327, 2009.ISBN: 978-1-61804-150-0217

Then, we present the solution OpenStack retained by the comparative study. We discuss in detail its functional and architectural system. We finish by a discussion of the motivation of our choice of the IaaS solution. Key–Words: Opencloud, IAAS, OpenStack, Eucalyptus, OpenNe