UDS 621.39 A COMPARISON BETWEEN OPEN-SOURCE PLATFORMS FOR COMPUTING

Borovskyi B. M. Institute of Telecommunication Systems, Igor Sikorsky Kyiv Polytechnic Institute, Ukraine E-mail: [email protected]

Сравнение открытых программных платформ для облачных вычислений

В этом документе представлен сравнительный анализ платформ с открытым исходным кодом (OpenNebula и OpenStack), которые позволяют предоставлять ресурсы инфраструктуры в качестве службы облачных вычислений. Сравнение проведено на количественной основе - в отношении характеристик и поддерживаемых функций для вышеупомянутых решений с открытым исходным кодом.

Introduction. is rapidly evolving and becoming one of the most challenging paradigms in Information and Communication Technology (ICT) [1]. Many architectural paradigms from distributed computing such as service- oriented infrastructures, Grids and are incorporated into Clouds. There are three main classes in the cloud services stack: - Infrastructure (IaaS); - (PaaS); - (SaaS). Following the aforementioned main classes in the cloud services stack, in this paper described the IaaS layer by introducing a comparison between two main open-source IaaS solutions. These refer to OpenNebula [2], with more than 30.000 downloads [3] and many companies either contributing (e.g. IBM, Akamai, etc) or using (e.g. Telefonica, Dell, Logica, SARA, etc), and OpenStack [4], with a community of 183 companies (e.g. NASA, Intel, etc). These figures highlight the wide adoption of OpenNebula and OpenStack by not only the research but also the industrial community. A quantitative comparison has been performed in terms of supported functionality and offerings, which are of importance for IaaS solutions. (yet another open-source solution providing IaaS) as well as proprietary offerings from AWS, Rackspace, GoGrid, Oracle, and other public IaaS providers, are not considered under the scope of this article. Short overview. OpenNebula is an open-source IaaS solution, initially developed within the framework of an EU-funded project (RESERVOIR). OpenNebula orchestrates storage, network, virtualization, monitoring, and security technologies to enable the dynamic placement of VMs combining both resources and remote cloud resources, according to allocation policies. OpenStack is an open-source IaaS provider project supported by multiple vendors. The project was started by NASA and Rackspace in 2010, while currently more companies have joined (e.g. HP, Dell, Cisco, etc). It is released under the terms of the Apache License, including two sub-projects: - Nova for computing resources (virtual machines, network, block storage). - Swift for file-based storage service.

Figure 2: OpenNebula overview Figure 3: OpenStack overview

The criteria for a qualitative analysis, which has been used to evaluate OpenNebula and OpenStack, has been stated initially. Criteria vary from supported functionality to security. Based on that criteria, the following table (Table 1) summarizes the qualitative comparison analysis between OpenNebula and OpenStack. Table 1: Qualitative comparison analysis. Criteria OpenNebula OpenStack Private, public (Amazon Private, public with APIs to Models EC2 and ElasticHosts), Amazon EC2 and S3. supported hybrid and federated , KVM, VMWare ESX, Nova supports: Xen, XCP, Virtualization ESXi. QEMU, VMWare ESX, ESXi, supported KVM, UML. API, Web interface and API, Web interface (i.e. Command line interface to Dashboard) and Command line deploy VMs and a console interface to deploy VMs and a Access to manage the VMs. Web console to manage the VMs. interface also allows image deployment. Image repository and Supported through Glance. creation of image instances Creation is supported through the Image (also by saving running Amazon EC2 API. Only is support VMs) in the catalog. supported at the moment. Management of images. Enabled through a scheduler Not available. Resource that maps requirements to selection resources. Hardware support for iSCSI, Object and block storage FibreChannel, NAS shared supported. Volumes are persistent Storage storage, SCSI/SAS/SATA. (data retained until the volume is support Non-shared and shared file deleted, VM independently). File systems (NFS, LVM with storage is supported through Swift CoW, VMFS, etc). (organizing in containers level). Criteria OpenNebula OpenStack Auto-scaling Supported – also supports Not available. support MySQL and SQLite. Persistent storage as a Both for core services and some placeholder for the external ones (e.g. MySQL, High- management information. RabbitMQ). availability Supports automated testing support for scalability, performance and robustness. Monitoring of physical and Infrastructure monitoring Monitoring virtual infrastructure. available through Swift (reporting capability to Statsd / Graphite) Native API in Ruby and Native API, Amazon EC2 API, JAVA. XML-RPC API for CloudFiles REST API. API support interfaces creation. OGF OCCI & Amazon EC2 APIs. Authentication framework API includes protection against based on passwords, SSH DoS attacks or faulty clients. The RSA key-pairs or LDAP. project concept is introduced by Security Various administration roles. Nova, allowing administrators to features Multi-tenancy for public manage other user accounts and clouds. the project resources. Keystone used for identity management. Service Level Enabled through ecosystem Enabled through ecosystem tools Agreements tools (such as Claudia and (such as ). (SLA) VEP). capability

Conclusion. Based on the evaluation of the obtained results from a qualitative perspective, OpenStack is optimum for application requiring rapid resource scaling. Such applications may refer to soft real-time applications (such as Virtual and Augmented Reality, Digital Film Postproduction, etc.) and to applications that may depict spikes in the requested resources - usually the ones that are open to wide user groups (e.g. web applications). On the other hand, OpenNebula would be preferable for applications that pose high elasticity requirements (not supported by OpenStack) such as smart city scenarios (for example enhanced car cruise control by on-demand obtaining and analyzing information from city sensors, other cars, smart phones, etc.) or healthcare scenarios given the OpenNebula security features. References 1. Buyya, R., Yeo, C. S. and Venugopal, S., 2008, “Market-oriented cloud computing: Vision, hype, and reality for delivering it services as computing utilities,” 10th IEEE International Conference on High Performance Computing and Communications. 2. OpenNebula, http://www.opennebula.org. 3. Ignacio Llorente, 2012, Cloud Computing Architecture with OpenNebula, NASA Ames. 4. OpenStack, http://www.openstack.org.