A Comparative Study of Current Open-source Infrastructure Frameworks

Theo Lynn, Graham Hunt, David Corcoran, John Morrison and Philip Healy Irish Centre for Computing, Dublin 9, Ireland

Keywords: , Open Source, IaaS, Openstack, Cloudstack, Opennebula, .

Abstract: With the growth of cloud computing in recent years, several commercial and open source IaaS frameworks have emerged. The development of open source IaaS solutions offers a free and flexible alternative to commercial cloud services. The main contribution of this paper is to provide a qualitative comparative of current open-source IaaS frameworks. Existing research papers examining open source IaaS frameworks have focused on comparing OpenStack with a small number of alternatives. However, current research fails to adequately compare all major open source frameworks in a single study and notably lacks the inclusion of CloudStack. Our research paper provides the first overview of the five main open source cloud IaaS frameworks – OpenStack, CloudStack, OpenNebula, Eucalyptus and . As such, this review provides researchers and potential users with an up to date and comprehensive overview of the features of each solution and allows for an easy comparison between the open source solutions.

1 INTRODUCTION the freedom to modify the source code and build a cloud that is pluggable and open to extensions while Cloud Computing technologies have seen significant reducing costs and avoiding vendor lock-in (Zhang adoption in recent years by enterprises, researchers et al., 2013; Wen et al. 2012; Bist et al., 2013). The and individuals. It is forecast that the Cloud development of open source solutions is of particular Computing industry will reach a market size of $241 importance for the further proliferation of private billion by 2020 (Reid and Kilster, 2011). Cloud and hybrid clouds (Sefraoui, 2012). Computing has become an important tool in The decision to select the most appropriate open delivering Infrastructure as a Service (IaaS) for users source solution can be a challenge for organizations that require a high level of flexibility and given each framework’s specific characteristics. management of their stack. While previous studies (Zhang et al., 2013; Dukarić, The last eight years has seen the rapid R. and Jurič, 2013; Endo et al., 2010; Yaday, 2013) proliferation of vendors in the IaaS market, which have compared these frameworks, most have includes major enterprise players such as Amazon focused only on OpenStack and OpenNebula, (Amazon, n.a.), (Mircosoft, n.a), neglecting CloudStack or have focused on (Google, n.a.), and IBM (Google, n.a.). While these comparing frameworks with different services may offer flexibility to the user, (Ristov et al., 2013; Cordeiro , 2010). commentators cite cost, lack of portability and lack The purpose of this paper is to provide a of interoperability as drawbacks to enterprise IaaS qualitative review of the top five open source IaaS (Mahjoub et al., 2011; Zhang et al., 2013). With frameworks and present a comparative analysis to each vendor promoting its own infrastructure and aid in framework selection decisions. The incompatible standards, users can suffer from vendor frameworks included in this paper have been chosen lock-in (Mahjoub et al, 2011; Zhang et al., 2013; based on literature reviews and perceived industry Wen et al., 2012). acceptance. The open source frameworks detailed in In some environments it may be preferable for an this paper are OpenStack, CloudStack, OpenNebula, organization to develop their own cloud, based on an Eucalyptus and Nimbus. open source framework. Open source frameworks The paper is structured as follows. In Section II, offer an alternative to enterprise clouds by offering we present a background to the study providing an

Lynn T., Hunt G., Corcoran D., Morrison J. and Healy P.. 95 A Comparative Study of Current Open-source Infrastructure as a Service Frameworks. DOI: 10.5220/0005423300950104 In Proceedings of the 5th International Conference on Cloud Computing and Services Science (CLOSER-2015), pages 95-104 ISBN: 978-989-758-104-5 Copyright 2015 SCITEPRESS (Science and Technology Publications, Lda.) CLOSER2015-5thInternationalConferenceonCloudComputingandServicesScience

overview of the benefits of Cloud as a Service is when the supplier adoption and discuss the different service models. provides the user with the tools required for Section III provides a qualitative review concerning deploying an app onto the cloud infrastructure (Mell the five chosen frameworks and examines their and Grance, 2011). components. This section also provides a short Finally, Infrastructure as a Service, the focus of overview of closed vs. open source IaaS solutions. this paper, is when the supplier provides the Drawing on the review presented in Section III, consumer with processing, memory, storage, Section IV provides a comparative analysis of the networks, and other computing resources (Mell and identified frameworks based on selected criteria. Grance, 2011). Finally, Section V will discuss our conclusions and recommendations for future developments. 3 OPEN SOURCE IaaS FRAMEWORKS 2 BACKGROUND Enterprise Solutions (or closed frameworks) The National Institute of Standards and Technology typically supply servers and storage to their (NIST) defines Cloud Computing as “a model for customers using their own infrastructure through a enabling ubiquitous, convenient, on-demand public cloud development (Zhang et al., 2013). Open network access to a shared pool of configurable source IaaS frameworks take advantage of open computing resources (e.g., networks, servers, source code which can be modified by users to storage, applications, and services) that can be create a single functional package that can be rapidly provisioned and released with minimal applied to a network of servers and storage to management effort or service provider interaction” produce IaaS (Zhang et al., 2013). While open (Mell and Grance, 2011). Today it is the most source solutions are typically used to develop private widely cited and accepted definition. This definition clouds they are also suitable for hybrid and public can be expanded to include five additional cloud development models (Salih and Zang, 2012; characteristics of cloud computing. These Ristov et al., 2013; Wen et al., 2012). Recent characteristics have also become widely accepted acquisitions such as Citrix’s purchase of CloudStack and cited; they are on-demand self-service, broad (Keeps, 2014) suggest that we are likely to see network access, resource pooling, rapid elasticity, further development of public clouds based on open and measured service. The NIST definition of cloud source frameworks, leading to improved computing outlines three service models: software as interoperability between different clouds. a service (SaaS); (PaaS); and The main player offering enterprise solutions is infrastructure as a service (IaaS). In addition, it , with growing competition outlines four deployment models: private cloud; from competitors including Microsoft, Google, and community cloud; public cloud; and hybrid cloud. IBM (Gartner, 2014). The remainder of this paper will discuss open source frameworks. 2.1 Service Models Five major projects, OpenStack, Apache CloudStack, OpenNebula, Eucalyptus, and Nimbus Cloud Computing is typically classified according to dominate the market for Open Source IaaS. A survey a variety of service models. In recent years, service conducted in July 2014, by .com, of 550 Open models such as Storage as a Service (Fielder et al., Source cloud computing experts found that 2012) and Business Process as a Service (Lynn et OpenStack, CloudStack, OpenNebula, and al., 2014) have emerged. However, the most Eucalyptus are the most popular Open Source IaaS common differentiation of service models remains options with all others receiving less than 2% of the as Infrastructure as a Service (IaaS), Platform as a result (Williams, 2014). OpenStack was favoured Service (PaaS), and (SaaS), all with 63 per cent of the vote, followed by of which have been given a definition by NIST. CloudStack, OpenNebula, and Eucalyptus, Software as a Service is when the supplier respectively. OpenStack was also found to be the provides working applications running on their own most popular overall Open Source Cloud Computing cloud infrastructure, typically these applications project. One of the reasons suggested for would be accessed through a web browser or some OpenStack’s popularity is that the strength of the other type of web interface or application (Mell and OpenStack community and the prestige and size of Grance, 2011). the companies who back OpenStack has given it a

96 AComparativeStudyofCurrentOpen-sourceInfrastructureasaServiceFrameworks

significant advantage over its alternatives (Voras et and Image Service (Glance). al., 2013). Another reason suggested is that with the Nova is the computing engine behind maturation of the market there has been a focus on OpenStack. It is the cloud computing fabric the bigger projects available in search of a de facto controller and the central element of the IaaS system standard (Voras et al., 2013). (Openstack, n.a.). It manages all the compute An alternative view is that no one Open Source resources of the OpenStack cloud. It includes an API IaaS framework will dominate the market, as each (nova-) that accepts requests for creating framework is suited to different end use scenarios or virtual machines (VM), and their local or remote applications. For example it is proposed that disks (Baset, 2012), and associated metadata in a OpenNebula is more suited to security-sensitive and VM. Other processes within Nova include: smart-city scenarios while OpenStack is more suited  nova-schedule – takes a VM request and for time-constrained scenarios (Kostantos, 2013). determines where it should be placed. At this stage in the market’s maturation, the  nova-compute – creates and terminates VM likelihood of new entrants is slim (Voras et al., instances through a hypervisors’ API. It 2013). Considering the lead the five mentioned includes support for , XenServer/XCP, projects have over their alternatives, we have KVM, VMware vSphere, LXC, QEMU, UML, decided to focus our analysis on these projects for Hyer-V, etc. the purpose of this paper. In the remainder of this Swift offers software enabling the section we provide a short discussion of the storage and access of objects across different nodes qualitative features of the different open source IaaS using a simple API. It is designed to be extremely frameworks. scalable in size and capacity. Glance provides image services for OpenStack. It 3.1 OpenStack provides a catalogue and repository of VM images, also allowing them to be used as templates when Announced in 2010, OpenStack is an entirely open deploying new VM instances (Kumar et al., 2014). sourced IaaS project for private and public clouds. Other official OpenStack programs include Initially developed by Rackspace Hosting and Cinder, Neutron, Horizon, Keystone, Ceilometer, NASA, it has since developed into a global Heat, and Trove. collaboration of developers and cloud computing Cinder is the block storage component of technologists. With over 4500 members, 850 OpenStack. It provides persistent block level storage companies, and support from major tech industry devices for use with OpenStack compute instances. companies, OpenStack has a very powerful Neutron is OpenStack Networking; it provides foundation. The OpenStack Open Source Cloud networking capabilities to OpenStack and manages Mission is “to produce the ubiquitous Open Source networks and IP addresses (Kumar et al., 2014). Cloud Computing platform that will meet the needs Horizon is the dashboard behind OpenStack. It of public and private clouds regardless of size, by provides a graphical interface for users and being simple to implement and massively scalable” administrators. (Openstack, n.a.). Keystone provides identity services to OpenStack has three core official software OpenStack. It is a means of access to the OpenStack programs, Compute (Nova), (Swift), services available to different users. Ceilometer provides billing services to individual users of the cloud. It also keeps an account of the users’ usage of different components of OpenStack. Heat uses a template based orchestration mechanism to launch multiple composite cloud applications. The templates are in the form of text files that are treated like code and define what resources are necessary for the code. Trove is a as a service for OpenStack. It provides functionality for both relational and non- relational database engines. Figure 1: Conceptual OpenStack Architecture, Source: The latest OpenStack release, Icehouse, was Openstack, n.a.. released in April 2014. This release saw

97 CLOSER2015-5thInternationalConferenceonCloudComputingandServicesScience

approximately 350 new features and 2,902 bug fixes added. Features added included support for rolling upgrades, the new feature discoverability that improves workflow, mandatory testing for external drivers, automated scaling of additional resources across the platform.

3.2 CloudStack

CloudStack was developed by Cloud.com and in 2010 released the majority of the project’s source code. In 2011 CloudStack were acquired by Citrix who subsequently released the remainder of CloudStack’s code. In April 2012 Citrix donated Figure 2: CloudStack Architecture, Source: Cloudstack. CloudStack to the Apache Software Foundation (ASF). It was accepted into the Apache Incubator conceptual architecture of a simple CloudStack and then graduated from the Apache Incubator in deployment, note that does not include regions since March 2013 to become a Top Level Project of ASF these would not be necessary for a simple smaller (Cloudstack, n.a.) CloudStack doesn’t have quite the scale deployment (Cloudstack). same foundation of users as OpenStack but a The latest version of Apache CloudStack is 4.4.0 number of large companies do use Apache and was released in August 2014 and had a number CloudStack including Apple, British Telecom, Dell, of updates including updating to the latest version of Nokia, and Fujitsu. Java. CloudStack consists of the management server and the resources to be managed. The management 3.3 OpenNebula server is the CloudStack software that manages the cloud resources and allocates resources in the cloud OpenNebula was initially released in 2008 and now deployment. It provides a web interface for operates as an open source project. While it is most administrators and end users, as well as API commonly used for private cloud, it also supports interfaces for CloudStack API and also the Amazon public and hybrid clouds. The OpenNebula mission EC2 interface. The management server also manages is “to become the simplest cloud enabling assignment of guest VMs, assignment of IP platform for the enterprise” and their purpose is “to addresses, allocates storage during VM instantiation, bring simplicity to the private and hybrid enterprise and manages snapshots, disk images, and ISO cloud”. OpenNebula has a large user base with images. It is a single point of configuration for the telecommunication companies (e.g. Telefonica), IaaS cloud and during deployment the user informs system integrators (e.g. Logica), supercomputing it of the resources to be managed. centers (e.g. SARA), etc. (Kostantos et al., 2013). The CloudStack deployment is organised with Additionally, in March 2010 the main authors of hosts contained within clusters, clusters contained OpenNebula founded C12 Labs to provide a value- within pods, pods contained within zones, and zone added professional service, which many enterprises contained within regions. Regions are the largest require for internal adoption, and to enhance available units in the CloudStack deployment. OpenNebulas long-term sustainability (Yadav, Regions essentially consist of a number of 2013). available zones, with zones roughly being the The OpenNebula architecture is a classical equivalent of a data enter. Regions can be used to cluster with a front end and a set of cluster nodes to provide fault tolerance and achieve higher run the VMs. At least one physical network is availability and . Zones, as mentioned needed for connecting all cluster nodes with the typically correspond to a single data centre, but a front end (OpenNebula, n.a.). This architecture is data centre can also contain multiple zones. Pods flexible and modular, making it easier to integrate often represent a single rack. Clusters are a way to multiple storages, network infrastructures and group hosts; hosts in a cluster will all have identical technologies than using OpenStack hardware and run the same hypervisor. Hosts are (Wen, 2012). single computers and provide the resources that run The OpenNebula software consists of three guest VMs. Figure 2 provides an outline of the layers: tools, drivers, and core. An example of an

98 AComparativeStudyofCurrentOpen-sourceInfrastructureasaServiceFrameworks

its compatibility with Amazon Web Service AWS. Eucalyptus’ scalability is limited in comparison to some of the alternative open source IaaS solutions and, as such, has lost some of the popularity it had in the earlier days of its release (Sefraoui et al., 2012). The introduction of Scalable Object Storage has helped improve the scalability of Eucalyptus. Eucalyptus has six components (one being an optional component) (Ristov et al., 2013): Cloud Controller (CLC), Scalable Object Storage (SOS),

Cluster Controller (CC), Storage Controller (SC), Figure 3: OpenNebula Architecture, Source (OpenNebula, VMware Broker components and Node Controller n.a.). (NC). These components are divided into three layers: Cloud Layer, Cluster Layer and Cloud architecture reference model for IaaS clouds is Controller. shown in Figure 3. Cloud Controller is contained in the Cloud The Tools layer provides interfaces to Layer and is the entry-point for administrators, communicate with users and allows users to manage developers, project managers, and end users. It VMs through the interfaces, which include queries the other components in Eucalyptus for command line interface (CLI) and API (Wen, information and makes requests to the Cluster 2012). This layer also contains a scheduler that Controllers. It is responsible for exposing and manages the functionality of the core layer (Wen, managing the underlying virtualized resources and 2012). offers a web-based administrative interface. The Drivers layer contains components that Scalable Object Storage is also contained in the communicate directly with the underlying operating Cloud Layer; this is the Eucalyptus equivalent to system and capture the underlying infrastructure as Amazon Web Services Simple Storage Service (S3). an abstract service (Wen, 2012). SOS allows for the implementation of scale-out The Core layer (Figure 3) contains the storage that implements the S3 interface. Eucalyptus components used to perform user requests and also provides a basic storage solution known as control resources. In this layer, disk images for Walrus, suitable for smaller cloud deployments. VMs are stored using datastores (referred to as Cluster Controller is contained in the Cluster Image Repositories in previous releases). The Layer. It communicates with the SC and NC and monitoring subsystem gathers information on the manages the execution of VM instances on specific hosts and the VMs, such as basic performance NCs. The CC must have network connectivity to the indicators and capacity consumption, and it also machines running the CLC and the machines contains the authentication system, which comes running the NC. with a built-in user/password authentication driver Storage Controller is also contained in the and the choice from SSH Authentication, X509 Cluster Layer. It communicates with the CC and the Authentication, and LDAP Authentication also. NC and manages the VM volumes and snapshots The latest OpenNebula update is version 4.8.0, from volumes in the cloud. This component th Lemon Slice, released on the 12 of August 2014. functions similarly to the Amazon Elastic Block The release saw improvements to the hybrid model, Store. changes to virtual networks that can now include The VMware Broker is the final component in any combination of ranges to accommodate any the Cluster Layer and is the only optional address distribution, and several other improvements component. It mediates interactions between the CC throughout every other OpenNebula component. and VMware and can connect directly to ESX/ESXi hosts or to vCenter Server. 3.4 Eucalyptus Node Controller is the sole component in the Node Layer. The Node Controller is written in C, Eucalyptus was developed by the University of hosts the VM instances and manages the virtual California-Santa Barbara as an open source network endpoint (Eucalyptus, n.a.). Infrastructure as a service and was released in 2008. The latest release of Eucalyptus is version 4.0.1, It allows for the installation of private and hybrid a maintenance update for version 4.0.0 that was clouds. Eucalyptus target is hybrid installations with released on the 30th of May 2014. Some of the

99 CLOSER2015-5thInternationalConferenceonCloudComputingandServicesScience

The Workspace Service is a site VM manager that different remote protocol frontends can invoke. The metadata server responds to HTTP queries from VMs. The Cloud Client is the component that enables users to launch instances quickly. The workspace-control is a program that can start, stop and pause VMs, implement VM image reconstruction and management, connect the VMs to the network, and deliver contextualization information.

Figure 4: Eucalyptus Architecture, Source: Eucalyptus, n.a.. 4 COMPARISON OF OPEN changes in this release include the possibility to have SORUCE SOLUTIONS multiple user-facing services, the possibility to use different object storage backends, and more While the IaaS frameworks discussed in Section III improvements throughout most of the Eucalyptus are designed to allow users to manage their own software. virtual infrastructures, they have different features that should be considered when selecting a 3.5 Nimbus framework. This will differ depending on the expected use case and organization. These Nimbus is an open source IaaS project that was qualitative features are summarized in Table 1. The initially released in 2009. Nimbus’ mission is “to set of criteria outlined in Table 1 are derived from a evolve the infrastructure with emphasis on the needs review of the supporting framework documentation of science”. Nimbus is built with three goals in and related literature. Based on this review 19 mind: criteria emerged as the main discussed points when comparing open source IaaS frameworks. These  Enable resource owners to provide their criteria are outlined below: resources as an infrastructure cloud.  Philosophy: Concerns the main use cases for  Enable cloud users to access infrastructure the frameworks deployment (Wen et al., 2012). cloud resources more easily.  Suitability: Different frameworks will better  Enable scientists and developers to extend and service the needs of different users. As a result, experiment with both sets of capabilities. large commercial organizations are likely to The main infrastructure components are the adopt a different framework than research Workspace Service site manager, a web services institutes. resource framework (WSRF) based remote protocol  Architecture: The architecture of the platform implementation, an EC2 based remote protocol provides details on how the framework was implementation of their SOAP and Query , built and how it operates (Mahjoub et al., 2011) Cumulus, RM API, the cloud client, the reference  API Support: Cloud APIs are application client, the Workspace Pilot, the workspace-control programming interfaces that are used to build agent, and the metadata server. applications (Wen et al., 2012; Endo et al., 2010; Semolinski and Thain, 2010).  Amazon Support: Given that AWS is the predominant enterprise cloud framework, compatibility with such public clouds is an important factor for many users (Wen et al, 2012).  Cloud Implementation: The cloud deployment models (Mell & Grance, 2011) that are suitable for the IaaS framework.  Hypervisor: A hypervisor also known as a VM Manager (VMM) is used to describe a technique Figure 5: Nimbus Architecture, Source: Nimbus, n.a.. to allow multiple guests to run concurrently on a

100 AComparativeStudyofCurrentOpen-sourceInfrastructureasaServiceFrameworks

Table 1: Comparison of Open Source IaaS Solutions. Capability/features OpenStack CloudStack Eucalyptus OpenNebula Nimbus

Established 2010 2010 2008 2008 2009 Origin Rackspace, NASA, Dell, Cloud.com Santa Barbara European Union University of Chicago Citrix, Cisco, university, etc. Eucalyptus System Company Philosophy Offers Cloud Computing Mimic Amazon EC2 Private, highly Cloud tailored to services customizable cloud scientific researchers Suitability Enterprises, service Enterprises, service Large commercial Large commercial Research institutions providers and researchers providers and researchers enterprises, Research companies and public institutions institutions Architecture Integration of OpenStack Hierarchical with four Hierarchically Three modules contain all Three modules contain all object and OpenStack main components: grouped from CLC components; - Centralized components; - Centralized compute - Management Server, via the CC to the NC - Three components - Three components - Availability Zone, ; - Hierarchical - Minimum two servers - Minimum two servers - Pod, - Five components - Computer Nodes. - Minimum two servers API Support Native API, Amazon EC2 Amazon EC2 API, S3 Amazon EC2 API, Native API in Ruby and EC2 APIs, S3 APIs, JAVA API, CloudFiles REST JAVA. XML-RPC API for client APIs. API. interfaces creation. OGF OCCI & Amazon EC2 APIs. Amazon Support EC2, S3 EC2, S3 EC2, S3, EBS, IAM, EC2, EBS, AMI EC2, S3 AMI Cloud Public Public Private Private Private Implementation Hybrid Hybrid Hybrid Hybrid Community (deployment) Private Private Hypervisor KVM, Xen, VMware VMware, OracleVM, KVM, Xen, VMware KVM, Xen, VMware ESX, Python, Bash, Ebtables, ESX, ESXi, Hyper-v, KVM, XEN ESXi Libvirt, KVM, Xen LXC, QEMU, UML, PowerVM, Bare metal Programming Python Java Java, C, Python Java, Ruby and C++ Java, Python Language Community +++++ ++++ +++ +++ ++ Release Frequency <4 months 4 months >4 months >6 months <4 months Ease of use +++++ +++++ ++ +++ +++ Supported OS Linux, Windows, Requires Depending on the Linux (, CentOS, , Fedora, Most Linux distributions x86 Server Hyperviser and hardware - Fedora, CentOS, RHEL open-SUSE, SLES, Mac OS X, Asianux, OpenSUSE et and Ubuntu. CentOS, Debian, DOS, Debian) Fedora, FreeBSD, Novell Netware, Oracle Enterprise Linux, Ubuntu, Enterprise Linux, Sun Solaris, SUSE Linex Enterprise, Windows.

Storage Object and block storage Supports for iSCSI, NFS, Support for iSCSI, Hardware support for Fibre supported. Volumes are SMB/CIFS; support for EBS, . Channel, iSCSI, NAS persistent (data retained OpenStack Swift and Hardware support for shared storage, SCSI / SAS until the volume is Amazon S3 industry-standard / SATA. Non-shared and deleted, independently Storage Hardware. shared file systems (NFS, from the VM). LVM with CoW, VMFS, File storage is supported etc.). through Swift (organizing the files in containers). Networking VLAN NO VLAN Public VLAN, Public IP, VLAN NO VLAN VLAN NO VLAN Public DHCP server installed on IP's Private IP's SDN IDS Public IP's Private IP's Private IP's Ebtables nodes Load- balance Firewalls IP's; DHCP server on OVSwitch; Manual VPN; OpenStack Compute the cluster controller configuration

User Interface Web interface (i.e. Web interface and euca2ools (CLI) Web interface and Web-Services, Dashboard) and Command Command Line Interface Command Line interface specifically: Nimbus Web line interface to deploy (CLI) (CLI) VMs and a console to manage the VMs.

Security API includes protection CloudStack Secuirty The Cloud Controller Authentication by Public Key Infrastructure against DoS attacks or Groups generates a passwords, faulty clients. public/private key secure shell and RSA key The project concept is code pairing for user code pairings Lightweight introduced by Nova, authentication Directory Access Protocol ; allowing administrators to Authentication framework manage other user based on passwords, SSH accounts and the project RSA key-pairs or LDAP. resources. Keystone used Various administration for identity management. roles. Multi-tenancy for public clouds. Error Robustness Replication Replication Separateclusters Permanent database to Regular check and backup reduce likelihood of store information about of worker nodes; Periodic correlated errors; hosts, networks and virtual verification of cloud Cluster controller’s machines; Database nodes separation backend (registers virtual machine information) Load Balancing The Cloud Controller TCP Load Balancer The Cloud Controller Nginx Le Context Broker

Licensing ApacheLicence Version2 ApacheLicence Version2 BSD-Licence ApacheLicence Version2 ApacheLicence Version2 Document Support +++++ +++++ +++ +++ ++

101 CLOSER2015-5thInternationalConferenceonCloudComputingandServicesScience

host machine (Mahjoub et al., 2011; Wen et al.,  Load Balancing: In computer networking 2012; Von Laszewski et al., 2010). terminology, load balancing denotes how a  Programming Language: Concerns the workload is distributed across multiple scripting language in which the framework is machines to optimize resource utilization written. (Mahjoub et al., 2011).  Community: A community may consist of  Licensing: Refers to the restrictions of the user individuals, teams or organizations that are on distributing and modifying the software with users, developers or service providers. While all or without the payment or royalties (Wen et al., may not contribute to the development, the size 2013). The most common license of open of the community is a good indication of future source IaaS frameworks is developments of the framework (Wen et al., Version 2.0 (Openstack, n.a.; Cloudstack, n.a., 2012). Von Laszewski et al., 2012).  Release Frequency: The strength of the  Documentation Support: The level of community will influence the regularity of documentation available to users will impact on updates to the open source frameworks. the ease of use for setup and management. One Typically these range from between 4-6 month of the challenges is keeping documentation release cycles. updated in line with frequent new releases  Ease of Use: The complexity of setting up the system and managing VMs. This can be impacted by the supporting documentation 5 CONCLUSIONS available (Wen et al., 2012). Easy of management is crucial for successful In this paper, we present an up to date qualitative implementing Infrastructure as a service (Voras review of the main open source infrastructure as a et al., 2013). service frameworks. Building on this, we deliver a  Supported OS: Concerns the operating systems means of comparison between these frameworks that are implemented on the machines. based on a set of criteria developed to evaluate open  Storage: Concerns the support for storage source frameworks. The paper adds to the literature technologies such as network-attached storage, by providing a comparison of five open source direct-attached storage and backup technologies solutions based on the latest releases. We believe (Voras et al., 2013). How data is stored on the that the evaluation will to help potential adopters virtualized pools is critical to achieving understand the functions of these frameworks and flexibility, scaling and ease of use (Wen et al., aid in the early stage adoption decision-making 2012; Voras et al., 2013). process. This work aims to illustrate the difference  Network: Cloud frameworks must give offerings for each of the IaaS frameworks and that attention to virtual networks to ensure optimal user requirements may be significantly different, performance (Voras et al, 2013). Networks can impacting on their framework selection. be considered a means of using services In future research, the criteria outlined in this deployed on the VMs and managing the cloud paper will be used to expand this study to compare environment (Voras et al, 2013; Von Laszewski open and closed IaaS frameworks. We also look to et al., 2013). This includes support for VLAN, develop performance criteria that can be combined and firewalls. with the existing paper to develop a comprehensive  Interface: Refers to how the user will access quantitative and qualitative comparison tool. and manage their resources, typically through a command line interface (CLI) or browser interface (Mahjoub et al., 2011; Wen et al., ACKNOWLEDGEMENTS 2012).  Security: Given the perceived security treat of The research work described in this paper was cloud computing, the protection of data is supported by the Irish Centre for Cloud Computing imperative to any IaaS framework Lynn et al., and Commerce, an Irish national Technology Centre 2014; Mahjoub et al., 2011). funded by Enterprise Ireland and the Irish Industrial  Error Robustness: Concerns how the system Development Authority. will tolerate component failure and continue to operate effectively if there is a component failure (Mahjoub et al., 2011).

102 AComparativeStudyofCurrentOpen-sourceInfrastructureasaServiceFrameworks

REFERENCES Lynn, T., O’ Carroll, N., Mooney, J., Helfert, M., Corcoran, D., Hunt, G., Van Der Werff, L., & Morrison, J. (2014) Towards a Framework for Amazon Web Services Homepage. Defining and Categorising Business Process-As-A- http://aws.amazon.com/. Service (BPaaS), Proceedings of the 21st International Baset, S. (2012). Open Source Cloud Technologies. Product Development Management Conference. Proceedings of the Symposium on Cloud Computing – Mahjoub, M., Mdhaffar, A., Halima, R. Ben, & Jmaiel, M. SoCC’12, 28-27. (2011). A Comparative Study of the Current Cloud Bist, M., Wariya, M., & Agarwal, A. (2013, February). Computing Technologies and Offers. 2011 First Comparing delta, open stack and Xen Cloud International Symposium on Network Cloud Platforms: A survey on open source IaaS. In Advance Computing and Applications, 131–134. Computing Conference (IACC), 2013 IEEE 3rd Mell, P., & Grance, T. (2011) The NIST definition of International, 96-100. cloud computing. Recommendations of the National CloudStack Homepage. http://cloudstack.apache.org/. Institute of Standards and Technology, Washington, Cordeiro, T. D., Damalio, D. B., Pereira, N. C. V. N., D.C. (NIST Special Publication 800-145). Endo, P. T., de Almeida Palhares, A. V., Gonçalves, Homepage. https://azure.microsoft.com. G. E., Mångs, J.-E. (2010). Open Source Cloud Nimbus Homepage. http://www.nimbusproject.org/. Computing Platforms. 2010 Ninth International OpenNebula Homepage. http://www.opennebula.org/. Conference on Grid and Cloud Computing, 366–371. OpenStack Homepage. http://www.openstack.org/. Dukarić, R., & Jurič, M. B. (2013). A Taxonomy and Reid, S., Kilster, H., “Sizing the Cloud”, Forrester Survey of Infrastructure-as-a-Service Systems. Lecture Research Report, 2011. Notes on Information Theory, 1(1), 29–33. Ristov, S., Gusev, M., & Donevski, A. (2013). OpenStack Endo, P. T., Gonçalves, G. E., Kelner, J., & Sadok, D. cloud security vulnerabilities from inside and outside. (2010, May). A survey on open-source cloud In CLOUD COMPUTING 2013, The Fourth computing solutions. In Brazilian Symposium on International Conference on Cloud Computing, Computer Networks and Distributed Systems. , 3–16. GRIDs, and , 101-107. Eucalyptus Homepage. https://www.eucalyptus.com/. Salih, N. K., & Zang, T. (2012). Survey and comparison Fielder, A., Alleweldt, F., Kara, S., Brown, I., Weber, V., for Open and closed sources in cloud & McSpedden-Brown, N. (2012) Cloud Computing computing. arXiv preprint arXiv:1207.5480. Study. For the European Parliament’s Committee on Sefraoui, O., Aissaoui, M., & Eleuldj, M. (2012). Internal Market and Consumer Protection. Comparison of multiple IaaS Cloud platform IP/A/IMCO/ST/2011-18. solutions. 7th WSEAS International Conference on Gartner. (2014). Magic Quadrant for Cloud Infrastructure Computer Engineering and Applications, (Milan-CEA as a Service. Available: http://www.gartner.com/ 13). 978-1000. technology/reprints.do?id=1-1UKQQA6&ct=140528 Sempolinski, P., & Thain, D. (2010). A Comparison and &st=sb. Last accessed 30th Sept 2014. Last accessed Critique of Eucalyptus, OpenNebula and Nimbus. 30th Sept 2014. 2010 IEEE Second International Conference on Cloud Homepage. https://cloud.google. Computing Technology and Science, 417–426. com/compute/. Vaquero, L. M., Rodero-Merino, L., Caceres, J., & IBM IaaS Homepage. http://www.ibm.com/cloud- Lindner, M. (2009) A break in the clouds: towards a computing/ie/en/iaas.html. cloud definition, ACM SIGCOMM Computer Keeps, B. (2014). Cloudstack exces take the money and Communication Review, 39(1), 50-55. run or were they pushed. Available: Von Laszewski, G., Diaz, J., Wang, F., & Fox, G. (2012, http://www.forbes.com/sites/benkepes/2014/09/04/on- June). Comparison of multiple cloud frameworks. the-three-year-anniversary-cloudstack-execs-take-the- In Cloud Computing (CLOUD), 2012 IEEE 5th money-and-run-or-were-they-pushed/. Last accessed International Conference on, 734-741. 30th Sept 2014. Voras, I., Orlic, M., & Mihaljevic, B. (2013). The Effects Kostantos, K., Kapsalis, A., Kyriazis, D., Themistocleous, of Maturation of the Cloud Computing Market on M., & Rupino de Cunha, P. (2013). Open-Source IaaS Open Source Cloud Computing Infrastructure Fit For Purpose: A Comparison Between OpenNebula Projects, Proceedings of the ITI 2013 35th and OpenStack, International Journal of Electronic International Conference on Information Technology Business Management, 11(3), 191-201. Interfaces. 101-106. Kostantos, K., Kapsalis, A., Kyriazis, D., Themistocleous, Wen, X., Gu, G., Li, Q., Gao, Y., & Zhang, X. (2012). M., & Rupino, P. (2013). OPEN-source iaas fit for Comparison of open-source cloud management purpose : a comparison between and platforms: OpenStack and OpenNebula. 2012 9th , 11(3), 192–202. International Conference on Fuzzy Systems and Kumar, R., Gupta, N., Charu, S., Jain, K., & Jangie, S. Knowledge Discovery, (Fskd), 2457–2461. (2014) Open Source Solution for Cloud Computing Williams, A. (2014). The Top Open Source Cloud Projects Platform Using OpenStack. International Journal of of 2014 Available: http://www.linux.com/news/ Computer Science and Mobile Computing, 3(5), . 89- enterprise/cloud-computing/ 784573 -the-top- open- 98.

103 CLOSER2015-5thInternationalConferenceonCloudComputingandServicesScience

source-cloud-projects-of-2014. Last accessed 30th Sept 2014. Yadav, S. (2013). Comparative Study on Open Source Software for Cloud Computing Platform: Eucalyptus, Openstack and Opennebula, International Journal of Engineering and Science, 3(10), 51-54. Zhang, Z., Wu, C., & Cheung, D. W. (2013). A survey on cloud interoperability: taxonomies, standards, and practice. ACM SIGMETRICS Performance Evaluation Review, 40(4), 13-22.

104