Seyi Dissertation

69
i AN EVALUATION OF CLOUD COMPUTING PLATFORMS AND THE POSSIBLE BARRIERS TO THE ADOPTION OF CLOUD COMPUTING IN THE NIGERIAN EDUCATION SECTOR: A STUDY OF COVENANT UNIVERSITY BY FOLA-OWOLABI OLUSEYI A DISSERTATION IN THE SCHOOL OF COMPUTING ENGINEERING AND PHYSICAL SCIENCES PRESENTED IN PARTIAL FULFILMENT OF THE REQUIREMENTS FOR THE MASTER DEGREE IN NETWORK COMPUTING AT UNIVERSITY OF CENTRAL LANCASHIRE PRESTON, UNITED KINGDOM. SUPERVISOR DR MARTIN BATEMAN

Transcript of Seyi Dissertation

Page 1: Seyi Dissertation

i

AN EVALUATION OF CLOUD COMPUTING PLATFORMS AND THE POSSIBLE BARRIERS TO THE ADOPTION OF CLOUD COMPUTING IN THE NIGERIAN EDUCATION SECTOR: A STUDY OF COVENANT

UNIVERSITY

BY

FOLA-OWOLABI OLUSEYI

A DISSERTATION

IN

THE SCHOOL OF COMPUTING ENGINEERING AND PHYSICAL SCIENCES

PRESENTED IN PARTIAL FULFILMENT OF THE REQUIREMENTS FOR THE MASTER DEGREE IN NETWORK

COMPUTING AT UNIVERSITY OF CENTRAL LANCASHIRE

PRESTON, UNITED KINGDOM.

SUPERVISOR

DR MARTIN BATEMAN

Page 2: Seyi Dissertation

ii

ABSTRACT

Cloud computing has led to the development of several types of services that is being used in various organisations. One of such services is DaaS which is now becoming as popular as SaaS, PaaS, IaaS. DaaS is a cloud platform that bring the desktop environment to its users on various platforms. It is sometimes referred to as a GUI based IaaS service.

This project evaluates four cloud computing platforms to determine their ability to deliver DaaS; Openstack, OpenNebula, Amazon EC2 and Microsoft Azure. This evaluation uses certain criteria that aim to help system administrators to determine which of these cloud platforms best fit their present business architecture. These evaluation criteria will also help this research to pick a cloud platform that is suitable for DaaS.

Page 3: Seyi Dissertation

iii

ACKNOWLEDGEMENTS

I would like to acknowledge my parents Mr and Mrs Fola-Owolabi for their continuous love and support towards my career aspirations. My brother Ayodeji Fola-Owolabi and my sister Damilola Fola-Owolabi for the love and support. My colleagues Opusi Ikhobo, Amaryu Umar we started this MSc journey together and it is about to come to an end. My supervisor Dr Martin Bateman and I would like to thank University of Central Lancashire for their assistance in providing the Amazon EC2 computing time. I would also like to thank the following people who have been a source of joy and support; Dr Adebay Oladapo, Richard Boswell, Bukky Owolabi, Dimeji Owolabi. And finally I would like to return all the glory and admiration to GOD ALMIGHTY for seeing me through this dissertation.

Page 4: Seyi Dissertation

iv

TABLE OF CONTENTS

1. INTRODUCTION ..................................................................................................................................... 1

2. LITREATURE REVIEW ............................................................................................................................. 3

2.1 INTRODUCTION ............................................................................................................................. 3

2.1.1 DEFINITION OF CLOUD COMPUTING .................................................................................... 4

2.1.2 CLOUD VS GRID COMPUTING ............................................................................................... 5

2.1.3 CLOUD COMPUTING ARCHITECTURE .................................................................................... 5

2.1.4 CLOUD SERVICE MODELS ...................................................................................................... 8

2.1.5 CLOUD DEPLYMENT MODELS ............................................................................................. 10

2.2 CLOUD PROVIDERS ...................................................................................................................... 11

2.2.1 OPENSTACK ......................................................................................................................... 11

2.2.2 CLOUDSTACK ....................................................................................................................... 12

2.2.3 AMAZON ELASTIC COMPUTE CLOUD (EC2) ........................................................................ 14

2.2.4 MICROSOFT AZURE ............................................................................................................. 14

2.2.5 OPENNEBULA ...................................................................................................................... 15

2.3 RELATED WORK ........................................................................................................................... 16

2.3.1 VIRTUALISATION ................................................................................................................. 16

2.3.2 VIRTUAL DESKTOP INFRASTRUCTURE (VDI) ........................................................................ 17

2.4 ADOPTION OF CLOUD COMPUTING ........................................................................................... 19

2.4.1 SECURITY ............................................................................................................................. 19

2.4.2 COST .................................................................................................................................... 20

2.4.3 PERFORMANCE ................................................................................................................... 20

2.4.4 CLOUD MODEL .................................................................................................................... 20

2.4.5 RELIABILITY .......................................................................................................................... 21

2.5 EDUCATION AND CLOUD ............................................................................................................ 21

2.5.1 BENEFITS OF CLOUD IN EDUCATION ................................................................................... 21

2.5.2 BARRIER AFFECTING THE ADOPTION OF CLOUD COMPUTING IN NIGERIA’s EDUCATION SECTOR 23

3. METHODOLOGY .................................................................................................................................. 26

3.1 REQUIREMENTS ELICITATION (GATEHRING) .............................................................................. 26

3.1.1 METHOD OF DATA COLLECTION ......................................................................................... 26

3.1.2 RESEARCH POPULATION ..................................................................................................... 27

Page 5: Seyi Dissertation

v

3.1.3 SURVEY DESIGN AND DISTRIBUTION .................................................................................. 27

3.1.4 METHOD OF DATA ANALYSIS .......................................................................................... 27

3.2 EVALUATION CRITERIA ................................................................................................................ 28

3.3 TECHNICAL REQUIREMENTS AND CONFIGURATION .................................................................. 29

3.3.1 OPENSTACK REQUIREMENTS AND CONFIGURATION ......................................................... 29

3.3.2 OPENNEBULA REQUIREMENTS AND CONFIGURATION ...................................................... 32

3.3.3 AMAZON EC2 REQUIREMENTS AND CONFIGURATION ...................................................... 35

3.3.4 MICROSOFT AZURE REQUIREMENTS AND CONFIGURATION ............................................. 37

4. RESULT AND ANALYSIS ........................................................................................................................ 39

4.1 SURVEY METHODS ...................................................................................................................... 39

4.2 RESPONDENTS PROFILE .............................................................................................................. 39

EVALUATION REPORT ................................................................................................................................. 43

OPENSTACK ................................................................................................................................................. 43

OPENNEBULA AMAZON EC2 ....................................................................................................................... 45

MICROSOFT AZURE ..................................................................................................................................... 49

5. DISCUSSION AND RECOMMENDATION .............................................................................................. 52

6. CONCLUSION .......................................................................................... Error! Bookmark not defined.

Table of Figures

Figure 1: The six Paradigms of Computing .................................................................................................. 3 Figure 2: Key aspects of a Cloud Computing System .................................................................................. 4 Figure 3: Market-Oriented Cloud Architecture............................................................................................. 6 Figure 4: Service-Oriented Cloud Architecture ............................................................................................ 7 Figure 5: NIST’s Open Cloud Architecture .................................................................................................. 8 Figure 6: Openstack Architecture ............................................................................................................... 12 Figure 7: Cloudstack Open Platform Architecture...................................................................................... 13 Figure 8 Opennebula Architecture .............................................................................................................. 16 Figure 9: Openstack 3-Node Architecture .................................................................................................. 30 Figure 10: Openstack Dashboard ................................................................................................................ 31 Figure 11: Openenbula Dashboard ............................................................................................................. 33 Figure 12: Amazons Management Console page........................................................................................ 36 Figure 13: Amazon WorkSpace Bundles .................................................................................................... 36 Figure 14: Microsoft Azure Dashboard ...................................................................................................... 38 Figure 15: Students Level ........................................................................................................................... 39 Figure 16: Staff Qualification ..................................................................................................................... 40 Figure 17: Program of Study ....................................................................................................................... 40 Figure 18: Responses to "Which courses do you teach?" ........................................................................... 42

Page 6: Seyi Dissertation

vi

Figure 19: Responses to "Which activities are carried out during lab sessions?" ....................................... 42

LIST OF TABLES

Table 1 : Evaluation Criteria ....................................................................................................................... 28 Table 2: System specifications used for Openstack .................................................................................... 29 Table 3: Ubuntu Server quota ..................................................................................................................... 32 Table 4: Windows Server quota .................................................................................................................. 32 Table 5: System specifications used for OpenNebula ................................................................................. 33 Table 6 : Number of Staff and Students Respondents ................................................................................ 39 Table 7: Responses to “Which applications do you use in labs?” .............................................................. 41

Abbreviations Description API Application Programming Interface AWS Amazon Web Service CIS Computer Information Systems CRM Customer Relationship Manager CSIS Centre for Systems and Information Services DaaS Desktop as a Service DNS Domain Name System EFCC Economic and Financial Times Commission ETF Education Trust Fund EU European Union GB Gigabyte GBPS Gigabyte per second GNU GNU’s Not Unix IaaS Infrastructure as a Service IBM International Business Machines ICT Information and Communication Technology IP Internet Protocol IT Information Technology KVM Kernel-Based Virtual Machine LTS Long Term Support NIC Network Interface Card NIST National Institute of Standards and Technology NITDA National Information Technology Development Agency PaaS Platform as a Service PC Personal Computer PTDF Petroleum Development Trust Fund QoS Quality Of Service RAM Random Access Memory

Page 7: Seyi Dissertation

vii

RDP Remote Desktop Protocol SaaS Software as a Service SaaS Storage as a Service SAN Storage Area Network SAS Serial Attached SCSI SATA Serial ATA SDK Software Development Kit SLA Service Level Agreement SSD Solid-State Drive SSH Secure Shell TB Terabyte URL Uniform Resource Locator USB Universal Serial Bus VCL Virtual Computing Laboratory VDD Virtual Distro Desktop VDI Virtual Desktop Infrastructure VM Virtual Machine VPN Virtual Private Network WADA West Africa ICT Development Award XaaS Anything as a Service

Page 8: Seyi Dissertation

1

1. INTRODUCTION

One of the goals of the Education sector is its contribution to developing students who will transform the society and the global economy. A step taken towards reaching this goal is the adoption of Information Technology. For Educational institutions to meet their business requirements, ensure efficient service delivery and its teaching-learning objectives, they have to become highly dependent on Information Communication Technology (ICT).

In the 21st Century, developed countries deliver Educational resources via ICT and the Internet and this is considered mainstream. However, in developing countries many Educational Institutions lack the basic ICT infrastructures that will help to deliver these resources. With most information sources and applications now being accessed mainly through the Internet, staffs and students in these countries will be unable to keep up with IT trends. This will affect students when they enter the global workforce and do not understand the value of new technologies.

One of such new technologies which strives to deliver computing services over the internet is Cloud computing. The Cloud computing platform is a trend that is now being accepted and adopted in various sectors and Education is not left out in this move of this move. Cloud computing aims to reduce costs, provide accessibility and flexibility by delivering IT resources over the Internet rather than hosting these resources locally. Cloud computing offers SaaS, PaaS and IaaS service models on a pay as you go and subscription based platform to customers. Further researches in Cloud computing have led to several other service models like DaaS (Desktop as a Service), StaaS (Storage as a service) etc. which upon adoption will aim to improve the on IT infrastructure in Education.

1.1 PROBLEM STATEMENT Cloud computing is of great importance to organisations due to its computational and costs promises, as a result it is no surprise that it is one of the most trending computing technology since its inception in 2008. With more Educational institutions adopting cloud computing in developed countries and less research in its adoption in a developing country like Nigeria. There is need to evaluate some cloud platforms for the Nigerian Education sector to understand its benefits. The cloud deployments in developed countries these days are also limited mostly to PaaS, SaaS and IaaS with little research into services like DaaS.

DaaS offers the combined services of PaaS, SaaS and IaaS combined and all of this is done in a familiar desktop environment. DaaS will be great in a University setting as students from different departments or colleges will be able to use this service as they wish and within the policies and permissions allowed by the University. DaaS will also help students to gain access to computing labs from any location and at any time. This global remote access to resources will for example, help students to continue some lab activities that could not be finished during lab sessions at their spare time. As a result this research will attempt to answer the question;

“Can DaaS services replace conventional/traditional computing lab environment?”

This research will also look to answer the following sub-research questions;

Page 9: Seyi Dissertation

2

• What are the benefits of Cloud computing in Education? • What are the factors to consider before adopting Cloud computing? • What are the barriers to the adoption of cloud adoption in the Nigerian Education Sector?

1.2 AIM AND OBJECTIVES The aim of this project is to evaluate different cloud platforms and determine the possibility of adopting DaaS in Covenant University. This research will also aim to achieve the following objectives;

• To explore the factors to be considered before adopting Cloud computing. • To explore the barriers affecting the implementation Cloud computing in the Nigerian

Education Sector. • To explore the benefits of adopting Cloud computing Education. • To test several Cloud computing platforms. • To gather requirements for lab environments from stakeholders identified for the project.

1.3 APPROACH The approach taken for this project is to test 4 different cloud platforms. Microsoft Azure, Amazon EC2, Openstack and OpenNebula will be installed and configured, used and then tested against certain evaluation criteria. The four cloud platforms will be tested against the lab requirements gotten from the survey. The aim of this approach is to provide an analysis of the four platforms that will provide necessary information to help in the decision to adopt the DaaS service.

1.4 STRUCTURE This chapter provides an introduction to the work and the remaining chapters in this project are as follows

• Chapter 2 is the Literature Review • Chapter 3 is the Methodology • Chapter 4 is the Result and Analysis • Chapter 5 is the Discussion and Recommendation • Chapter 6 is the Conclusion

Page 10: Seyi Dissertation

3

2. LITREATURE REVIEW

2.1 INTRODUCTION Today, with every organisation relying on some form of Information Technology (IT) to achieve its business goals, a lot of research has been put into finding different means of reducing the effort, cost and resources required for implementing IT and improving economic growth. With years of research in Grid Computing, Virtualisation, Distributed Computing, etc. (Foster, Kesselman 2003, A Vouk 2008, IBM 2006). These researches have led to the introduction of cloud computing, a term coined when IBM and Google announced a collaboration in that domain (A Vouk 2008, Farber 2012).

According to (Voas, Zhang 2009, Singh, Hemalatha 2012) computing has undergone six different paradigm changes. In MIT’s 1961 centennial ceremony, MIT’s Professor John McCarthy in a speech mentioned for the first time the concept of Computing as a utility. He said

“Computing may someday be organized as a public utility just as the telephone system is a public utility…. The computer utility could become the basis of a new and important industry.”(Kleinrock 2005).

This evolution began with Mainframe Computing, and moved on to PC Computing, Network Computing, Internet Computing, Grid Computing and today we have Cloud Computing, (Singh, Hemalatha 2012, Voas, Zhang 2009). Figure 2 shows the six stages in the evolution of Computing.

Figure 1: The six Paradigms of Computing (Singh, Hemalatha 2012).

Page 11: Seyi Dissertation

4

2.1.1 DEFINITION OF CLOUD COMPUTING The term Cloud Computing is relatively new, but the concept behind it has already existed through the use of various borrowed concepts and terms gotten from previous computing paradigms. As a result, different researchers have different definitions for the term cloud computing. Figure 1 shows the main aspects of a cloud system.

Figure 2: Key aspects of a Cloud Computing System (Bhat, Shah et al. 2010).

Although there are many definitions of cloud computing, the National Institutes of Standards and Technology’s (NIST) definition is the most popular and generally accepted by many researchers (Bhat, Shah et al. 2010, Conboy 2013, Hashemi, Bardsiri 2009, Zhang, Cheng et al. 2010). This is due to the fact that NIST’s definition covers most of the essential characteristics that has made Cloud Computing appealing to various organisations,

“Cloud computing is a model for enabling ubiquitous, convenient, on-demand network access to a shared pool of configurable resources (e.g., networks, servers, storage, applications and services) that can be rapidly provision and released with minimal management effort or service provider interactions.”, (Mell, Grance 2009).

This definition consists of the following essential characteristics;

• Rapid Elasticity. • Resource Pooling. • On-demand self-service.

Page 12: Seyi Dissertation

5

• Measured Service. • Broad network access.

Although NIST’s definition of cloud computing is generally accepted, some authors disagree with the essential characteristics (de Haaff 2008, Geelan 2009, Vaquero, Rodero-Merino et al. 2008), stating that this definition is not complete because the business perspective need to be considered as well (for example, pay as you go and cost reduction on available IT expenditure). However, there is another definition of cloud computing that aims to cover all aspects of the infrastructure.

According to (Vaquero, Rodero-Merino et al. 2008),

“Clouds are a large pool of easily usable and accessible virtualized resources (such as hardware, development platforms and/or services). These resources can be dynamically reconfigured to adjust to a variable load (scale), allowing also for an optimum resource utilization. This pool of resources is typically exploited by a pay-per-use model in which guarantees are offered by the infrastructure provider by means of customized SLAs.”

2.1.2 CLOUD VS GRID COMPUTING The concept behind Cloud Computing is often confused with Grid Computing (Bégin, Jones et al. 2008, Jha, Merzky et al. 2009). According to (Vaquero, Rodero-Merino et al. 2008), this is due to the fact that they share some essential characteristics for example; both computing models minimize cost or the fact that both models’ increases flexibility. One of the major factors that separate Grid Computing from Cloud Computing is that with clouds the service is available all the time, i.e. in real time (Hashemi, Bardsiri 2009), and with Grid Computing service needs to be scheduled. Also (Hashemi, Bardsiri 2009) see the future of Grid Computing to be Cloud Computing while the future of Cloud Computing is the next generation of the Internet. Although (Buyya, Yeo et al. 2008) suggests that Grid Computing will be the next big thing after the Internet and the web.

2.1.3 CLOUD COMPUTING ARCHITECTURE Cloud Computing aims to reduce the cost of having and maintaining IT infrastructure and services as well as reduce the significant workload on local computers within an organisation. But what components make up the cloud computing architecture? Like most IT platforms the cloud architecture is made up of a front end (this is the side the users and consumers see) and the back end platform which is seen as the cloud itself (this is storage, service and infrastructure).The front end platform requires just a computer that has access to the Internet, while the back end is generally made up of different parts that actually make up the cloud.

Although this architecture is a breakdown of the aspects that make up the cloud, certain authors think that cloud architectures should be based on different consumer needs (Kumar, Singh et al. 2012, Buyya, Yeo et al. 2008, Vitek, Morris 2011). With every major cloud provider having an almost similar architecture, (Buyya, Yeo et al. 2008) suggests that cloud architecture should be market-oriented while (Vitek, Morris 2011) suggests that it should be service-oriented.

Page 13: Seyi Dissertation

6

2.1.3.1 MARKET-ORIENTED CLOUD ARCHITECTURE According to (Buyya, Yeo et al. 2008), the market oriented architecture is aimed at providing incentive for cloud users and providers by regulating the demand and supply of cloud resources and promotion of QoS (Quality of Service) based resource allocation, figure 3 shows the market-oriented cloud architecture. The authors also state that the following QoS parameters are critical in a market-oriented architecture (Buyya, Yeo et al. 2008);

• Time • Reliability • Security/Trust • And in some cases Cost.

Figure 3: Market-Oriented Cloud Architecture (Buyya et al, 2008).

2.1.3.2 SERVICE-ORIENTED CLOUD ARCHITECTURE (Tsai, Sun et al. 2010, Vitek, Morris 2011) suggests that market oriented architecture as well as other cloud architecture lack Service Level Agreement (SLA) support as well as multi-tenancy which simply refers to having different clouds implement uniform standards so that interoperability can be achieved, figure 4 shows the service-oriented cloud architecture.

Page 14: Seyi Dissertation

7

According to (Tsai, Sun et al. 2010), Service-Oriented Architecture is aimed at achieving a cross-platform of several clouds and as a result will be broken down into independent services such as;

• Storage Service • Computing Service • Communication Service.

Figure 4: Service-Oriented Cloud Architecture (Tsai et al, 2010).

However, NIST’s open cloud architecture is the most widely used as it breaks down the cloud components into the following (Mell, Grance 2009);

• Essential Characteristics • Service Models • Deployment Models.

Page 15: Seyi Dissertation

8

Figure 5 shows a breakdown of NIST’s open cloud architecture.

Figure 5: NIST’s Open Cloud Architecture (Mell, Grance 2009)

2.1.4 CLOUD SERVICE MODELS The service models provide options to users on the type of cloud service that they may choose to deploy.

2.1.4.1 Software As A Service (SaaS) The software as a service model allows users to use applications over the Internet without having to worry about installing and maintaining the software (Vaquero, Rodero-Merino et al. 2008). With SaaS, it is the responsibility of the provider to maintain all aspects of the software including installation, backup and recovery. SaaS providers have a list of applications that is offered on an agreed subscription plan with the client, this can be daily, monthly, or based on the number of users using the software. With SaaS consumers are never bothered with what it happening behind the scenes, all that matters is that the software is available to them when needed. This way Universities for instance, are able to focus on productivity as well as reduce the cost of installing software, hardware or the cost of acquiring more manpower to manage these softwares. Example of SaaS providers are Salesforce, Google Apps and Microsoft Office 365.

2.1.4.2 Platform As A Service (PaaS) Platform as a Service is best explained by referring to computing platforms which typically included a database, web servers, operating systems, programming language execution environment, etc. PaaS is used to replace all these platforms and the staff needed to maintain them by providing it to developers and researchers who only require an Internet enabled system

Page 16: Seyi Dissertation

9

to access them (Sultan 2010). PaaS help developers to quickly deploy web or server side applications without having to worry about acquiring, managing and hosting the physical hardware running these services. PaaS also helps developers by ensuring the smooth flow of the software development lifecycle process (Sultan 2010). The downside with PaaS is that patch management and updates can only be provided by the cloud provider, this can take some time as the PaaS provider may want to test updates or patches first in a test environment before deploying them. Example of PaaS providers are AWS Elastic Beanstalk, Heroku, Google App Engine.

2.1.4.3 Infrastructure As A Service (IaaS) Infrastructure as a service is a service model where the company/organisation outsources the equipment that supports operations such as storage, servers, networking etc. It is the responsibility of the cloud provider to house many pieces of equipment as well as run and maintain them (Sultan 2010). IaaS offers the most flexibility and control as users are allowed install services, updates, patches and software based on specific needs. IaaS offers operating systems (OS) as a virtual machine that enables customers to deploy software and resources as efficiently and effectively and with as much flexibility as they would like. However, flexibility comes with a price as organisations are now responsible for applying updates and patches (Murphy, Abraham et al. 2010). Example of IaaS providers include Openstack, Opennebula, Cloudstack etc.

Anything As A Service (XaaS) is a fairly new trend that suggests that any service being provided

over the Internet rather than locally or on-site (Schaffer 2009). A few of them will be covered next.

2.1.4.4 Desktop As A Service (DaaS) The Desktop as a Service model is often referred to as VDI (Virtual Desktop Infrastructure). The only slight difference between them is that VDI is hosted locally and DaaS is hosted on the clouds. DaaS is basically a service in which the back-end of VDI is being managed and hosted by a cloud provider (Dasilva, Liu et al. 2012). DaaS offers customers a virtual desktop based experience and all it requires is a PC or thin client to run this service (Dasilva, Liu et al. 2012). Also with DaaS users can access these desktops from any location. However, it is up to the organisation to ensure business policies are maintained on these virtual desktops. The issue of security is also up to the customer to perform except it has been arranged to be provided by the cloud provider. DaaS providers include Amazon, VMware etc.

2.1.4.5 Storage As A Service (StaaS) Storage as a Service model is a business model where small or individual companies rent data storage allocations from large companies or StaaS providers. Cloud platform offers data storage as one of its many features. StaaS offers small companies a cost effective approach to data storage (Wu, Ping et al. 2010). Also with StaaS customers need not worry about backup and recovery of data in case there is a disaster. This service is not limited to companies alone, but to anyone who wishes to store information within the cloud. Students for instance, can make good

Page 17: Seyi Dissertation

10

use of StaaS services to have backups of assignments, lecture notes, etc. in the cloud in the event they lose their storage devices. Examples of StaaS providers include Google, Dropbox etc.

2.1.5 CLOUD DEPLYMENT MODELS There are four cloud deployment modes in NIST’s open cloud architecture, this classification is based on different factors. According to (Bardin, Callas et al. 2009) there are four factors that determine which deployment model is chosen and why. The factors are;

1. Location of the cloud infrastructure. 2. Users or organisations that have access to the cloud services. 3. The owner of the cloud infrastructure. 4. The organisation or cloud provider in charge of managing the cloud infrastructure.

Also (Ahronovitz, Amrhein et al. 2010) suggests that each deployment model is used for different situations or specific needs. The deployment models available are public, private, hybrid, and community (Mell, Grance 2009).

2.1.5.1 PUBLIC CLOUDS A public cloud is a deployment model where the infrastructure belongs to a cloud provider. It is now up to the cloud provider to set a cost and offer the cloud as a utility where users or organisations pay based on how often the cloud is used (Fox, Griffith et al. 2009). One of the benefits of having a public cloud is that the risk of maintaining IT infrastructures is placed on the cloud provider. However, this leaves clients on edge as relying totally on public clouds allow for a single point of failure (Fox, Griffith et al. 2009).

2.1.5.2 PRIVATE CLOUDS A private cloud is a proprietary data centre that uses cloud computing services which operates dedicatedly for a single organisation (Fox, Griffith et al. 2009). The datacentre can be kept on site or offsite and this is usually controlled by the organisation or an appointed service provider (Bardin, Callas et al. 2009). Also public clients do not have access to private clouds just as private clients do not have access to public clouds except it is a hybrid cloud (Shimba 2010).

2.1.5.3 HYBRID CLOUDS A hybrid cloud is a cloud that has the combined benefits of a public and private cloud (Mell, Grance 2009).This can be a company that runs an in-house cloud infrastructure and also uses cloud resources provided externally (public clouds). A likely scenario where hybrid clouds are used will be, say at certain periods when the level of resources an organisation uses depletes the performance of the available IT services. At this point, such organisations can simply acquire extra capacity from elsewhere (public cloud provider). This way the organisation can achieve its daily business goals and also gain the advantage of better economics (Subramanian 2011).

2.1.5.4 COMMUNITY CLOUDS Community clouds like hybrid clouds enjoy the shared benefits of public and private clouds. The difference between them is that community clouds are shared between groups/clients with the same computing needs (Marinos, Briscoe 2009). An example would be universities within the same geographical location sharing a cloud infrastructure. Community clouds like public clouds

Page 18: Seyi Dissertation

11

offer a billing structure and like private clouds have the added level of security and privacy (Marinos, Briscoe 2009).

2.2 CLOUD PROVIDERS Cloud computing provides several platforms for users to choose from, the choice of picking a cloud provider is a factor that has to be evaluated properly before moving enterprise applications to the cloud. Factors such as availability, support etc. comes to mind and seeing as cloud providers cannot guarantee all of these factors companies have to decide whether security and availability is more important than support. The next sections examine some of the available cloud platforms from the perspective of its benefits and drawback.

2.2.1 OPENSTACK Openstack is a free and open source software that aims to provide public and private cloud deployments (Openstack 2014). Openstack allows businesses to build their own datacentres by using the IaaS service model to create large groups of virtual private servers in a cloud computing environment. Openstack is one of the open-source cloud providers that is available under the Apache 2.0 license and is written in python and provides public and private IaaS services (Openstack 2014). Figure 6, shows the Openstack Architecture.

Openstack functions using the following components (Openstack 2014);

• Openstack Compute (Nova) The Openstack Compute component is the interface used to control the hypervisor virtualisation. KVM, VMware ESXi, Xen, Hyper-V, LXC, QEMU, UML, Xen, XenServer are supported by Nova.

• Openstack Object Storage (Swift) The Openstack Object storage is used to provide reliable and secure storage, it also supports Block Storage (Cinder). It supports other server storage platforms such as NetApp, Nexenta, SolidFire, Ceph, Zadara.

• Openstack Networking (Neutron) Neutron is used to provide internal and internal networking (VPN), it is used to provision static or DHCP, VLANs, Floating IPs.

• Openstack Dashboard (Horizon) This gives administrators and users a GUI web platform for managing, controlling and provisioning cloud resources

• Identity (Keystone) Keystone is used for authenticating and authorising Openstack services.

• Image Service (Glance) Glance is used to manage and catalogue server images.

Page 19: Seyi Dissertation

12

Figure 6: Openstack Architecture (Openstack 2014) Openstack is widely used today due to the following benefits (Openstack 2014):

• It is simple to integrate. • It can be upgraded easily. • It provides the option of having a private and public cloud. • It has unlimited storage (as much as you can afford). • It provides IaaS service for businesses to have own datacentres. • Availability (anytime, anywhere through a web browser). • Efficient virtual machine (VM) deployments using pre-defined templates.

The merits of Openstack are very appealing but this does not mean there are no negative aspects to Openstack. The drawbacks are (Openstack 2014):

• E-mails and chats are the only means of providing technical support • Uploads are time consuming. • The software is constantly being updated, it is the responsibility of the user to keep it up

to date. • There is no billing and monitoring system available yet.

2.2.2 CLOUDSTACK Cloudstack is an open source software that was bought by Citrix in 2012 and donated to the Apache Software Foundation (Cloudstack 2014). Cloud stack aims to deploy IaaS service models that are aimed at creating, managing and deploying public or private clouds (Cloudstack 2014). Cloudstack is another open source platform that uses Apache 2.0 Licence and is written in Java, Tomcat6, Axis2, Maven build + ant (Cloudstack 2014). Cloudstack offers a unique open architecture to suit client needs, Figure 7 shows the open architecture.

Page 20: Seyi Dissertation

13

Figure 7: Cloudstack Open Platform Architecture

Cloudstack functions using the following components;

• Compute Node This node handles the hypervisors, Cloudstack supports XenServer, VMware, Oracle KVM, KVM and Bare metal Hypervisors.

• Storage Node CLoudstack provides customers with the choice of Block and Obkect Storage, some of the available choices are Local Disk, iSCSi, Swift, etc.

• Network Node Some features of the Cloudstack compute architecture include; load balancing, controlling traffic using firewall rules, using VPN to connect to corporate networks etc.

• Cloudstack GUI (Graphical User Interface) Cloud stack provides a dashboard to customers to help with provisioning and managing cloud resources.

Some of the benefits of Cloudstack are (Cloudstack 2014):

• User interface option for cloud management. • Secure cloud deployments. • Multiple storage solutions. • Able to provide real time usage reports. • Efficient virtual machine (VM) deployments using pre-defined templates.

Page 21: Seyi Dissertation

14

2.2.3 AMAZON ELASTIC COMPUTE CLOUD (EC2) Amazon EC2 is part of Amazon’s cloud computing platform. EC2 is a web-based service that allows organisations to run application programs on Amazons public cloud environment. Clients are allowed to rent virtual machines which are used to run the applications (Amazon 2014), clients only pay for active servers by the hour. Amazon EC2 is Amazon’s cloud computing platform. Amazon EC2 provides a web service where users can rent virtual machines that allow them to run computer applications. EC2 offers Linux, FreeBSD and Microsoft Windows instances to users. EC2 enables users to get started in minutes and grants access to SDKs (Software Development Kit), APIs (Application Programming Interface) and other development tools that will help kick-start migration into the cloud (Amazon 2014). Amazon offers the following cloud features via its web service;

• Compute and Networking This includes VPC (Virtual Private Cloud), EC2 (Virtual Servers in the cloud), Workspaces etc.

• Storage and Content Delivery This includes S3 (Scalable Cloud Storage) etc.

• Database This includes RDS Managed (Relational Database Service) etc.

• Deployment and Management This includes CloudFormation (Templated AWS Resource Creation) etc.

• Analytics This includes Elastic MapReduce (Managed Hadoop Framework) etc.

• App Services This includes SES (Email Sending Service), SNS (Push Notification Service) etc.

The benefits of Amazon EC2 are (Amazon 2014):

• Able to adopt industry strict policies. • Elastic web-scale computing. • Complete control of instance. • It is cost-effective: pay for what you use. • Flexibility.

2.2.4 MICROSOFT AZURE Microsoft Azure is Microsoft’s cloud computing platform. Microsoft Azure offers a public cloud platform that enables clients to quickly build, deploy and manage applications. Microsoft offers an open platform that allows clients to build applications using any tool, framework or language. Microsoft Azure offers both IaaS and PaaS models to clients (Microsoft 2014). Microsoft Azure provides the following features, it is however not limited to these;

• Quick and easy website deployment. • Virtual Machines. • Mobile Services.

Page 22: Seyi Dissertation

15

• Cloud Service; this is used to create and manage cloud service. • Storage. • Active Directory; you can also deploy your own windows server and configure active

directory or use your corporate active directory.

Some of the benefits of Microsoft Azure are (Microsoft 2014):

• Faster time to market due to a variety of tools, frameworks and languages to work with. • Flexibility: Applications can be deployed quickly, this means more functionality can be

added to applications without any downtime. • Reduced Costs: Clients only pay for what they use, this is a good benefit that will profit

small businesses just starting up. • Scalability: An increase in usage of applications will not have to affect performance, the

client can simply add extra capacity at peak periods.

Microsoft Azure has suffered a few setbacks in their movement into the cloud. In October 2013, Microsoft Azure had an issue with its management feature that lasted about 17hours (Mikael Ricknäs 2013). Also in February 2013, Microsoft Azure’s storage service went down locking out corporate customers (Redmond Wash 2013).

2.2.5 OPENNEBULA OpenNebula is an open-source platform that can use KVM, Xen or VMware hypervisor to oversee management of private, public or hybrid clouds. OpenNebula provides IaaS services and is written in Java,Ruby and C as well as being available under the Apache 2.0 license (Opennebula 2014). Figure 8 is an overview of the OpenNebula architecture. OpenNebula functions using the following components;

• OpenNebula Frontend This grants access to the OpenNebula Dashboard. It is also used for authentication, configuring ACL (Access Control List), allocating resource quotas etc.

• Datastores (SAN/SAS) This component grants customers access to some OpenNebula data store features such as VM image storage, use of multiple data stores, heterogeneous configurations, etc.

• Hypervisor-Enabled Hosts OpenNebula supports automatic failover and multiple hypervisors like VMware or KVM etc.

Page 23: Seyi Dissertation

16

• Service Networks This component grants the frontend access to the datastores, hosts and helps to monitor and control resources. This is also the component used for live migration.

Figure 8 Opennebula Architecture

2.3 RELATED WORK There is very little research looking into replacing traditional labs in Universities with a cloud based lab. A few researchers looked into using cloud services like Google Apps (Education Edition) or Microsoft Live @Edu (Sclater 2010, Sultan 2010). One research area that is similar to that of this research is using Virtual Desktop Infrastructure (VDI). But it is necessary to introduce Virtualisation first since VDI and Cloud computing uses Virtualisation technology.

2.3.1 VIRTUALISATION Virtualisation is a technology that dates back to the 1960s, it was a concepts started by IBM and Goldberg (Dobrilovic, Stojanov 2006). According to (Dobrilovic, Stojanov 2006) the technology was welcomed due to the high costs of computing hardware back then. Virtualisation allow interactive and multiple access to the virtual machines (VM) which resides on a physical hardware (Sugerman, Venkitachalam et al. 2001). According to (Sugerman, Venkitachalam et al. 2001) IBM describes virtual machines as a copy of a physical machine that has being isolated from the hardware. (Sugerman, Venkitachalam et al. 2001) also states that Virtualisation primarily aims to reduce energy consumption, increase hardware utilisation as well as reduce costs and simplify system management. It is for these reasons that Virtualisation was adopted and improved overtime, and its use has spread to various sectors one of which is Education.

The adoption of Virtualisation in the Education sector is unavoidable, many Universities today house thousands of students and one of the means to save on cost of Computing Equipment and easily manage that much users is through virtualisation. Virtualisation has been used in the Educational sector for various purposes; either to teach or help system administrators with system management. (Shri, Subha 2013, Dobrilovic, Stojanov 2006) also state that Virtualisation helps in increasing system performance as well as reduce cost of maintaining the system.

Page 24: Seyi Dissertation

17

Virtualisation has led to the rise of several technologies, one of which is VDI. Virtualisation is the core of the VDI platform (Miller, Pegah 2007).

2.3.2 VIRTUAL DESKTOP INFRASTRUCTURE (VDI) Technology has continued to evolve rapidly over the years that most organisations now implement a technology-oriented business model. One of such changes is the introduction of Virtualization (Barham, Dragovic et al. 2003). Overtime different advancements in virtualization have led to the introduction of Virtual Desktop Infrastructure (VDI) also known as Desktop as a Service (DaaS) (Frank Noone 2013). VDI promises businesses a low cost and efficient approach to manage IT infrastructure (David Frankk 2013).

According to (Savill 2010), the average user desktop environment is can be categorised into 3 layers;

• OS (Operating System) Layer, • Application Layer and, • Data Layer.

(Savill 2010) states that having these three layers in one hardware can lead to some problems; for instance, a failure in the operating system can lead to a situation where re-installing the OS might be the only solution, or having data on the local system can lead to accidental deletion. The solution to this problem is to virtualise each of the layers using VDI (Savill 2010). VDI allows users to have access to each layer from any location with their OS, data and application intact while simulating a full desktop experience.

VDI is a technology that uses virtualization to separate the desktop environment from the physical hardware that it’s running on. By doing this the installation of the operating system is not on the physical hardware, but stored elsewhere on a server. The user, however still needs a physical a physical workstation to access this service. Using Remote Display Protocol (RDP) users are able to access VDI through a PC or thin client. Some of the benefits of using VDI include (David Frankk 2013):

• Reduction in administrative and support cost due to users using the same image (instance).

• Users can access desktops from any location and at any time, locations outside of the organisations network will be accessed through a VPN (Virtual Private Network).

• By having a central point of administration, VDI provides reliability and security. • Central point of administration also gives total control over systems. • VDI provides real OS experience, this way employees still feel comfortable working in a

familiar environment.

VDI is not without its drawbacks, some of these are (Frank Noone 2013):

• VDI requires constant access to the network to work, if there is no connectivity in a single department productivity will drop.

Page 25: Seyi Dissertation

18

• VDI allows for a single point of failure. Any outage in the server means that all users using VDI will be affected.

• Some users will need different environment (instances), for instance applications used by the accounting department will be different from the database department. This will require more space and might drop performance hence there will be a need to acquire better equipment which will eventually increase cost.

VDI might not be the best option for a growing business because it might cost more to acquire high performance servers, networking equipment etc. when compared to the amount of systems allocated to each user. This will not be the case with Educational Institutions with thousands of students/staffs as VDI adoption will most likely help reduce IT costs.

(Morimoto 2010) investigates using Citrix and Microsoft Hyper-V for VDI deployment. With Hyper-V users gain access to virtual guest sessions (running a windows copy of Windows XP or 7) running on the Hyper-V server. Users can gain access using a PC or dumb terminal and login via a website URL. One major drawback with this system with this system is that for every user a session has to be created (Morimoto 2010, Petrović, Fertalj 2009). This means that if for instance a university department has 500 students then there will be 500 sessions running on the Hyper-V server. This will require a few servers and if scaled to the entire University, it might end up costing the university more to provide IT services. This is also going to be very demanding and tedious on the system administrator(s) who is responsible for applying patches, updates and maintaining each session.

However, (Morimoto 2010) provides a solution which is to use Citrix platform for VDI. Citrix uses just one image on the host server and many users can have access to this image (Petrović, Fertalj 2009). Each user having a separate (unique) profile whenever the image is accessed. According to (Morimoto 2010) one 64 GB server can server u to 250 users at once, as a result this will help to reduce overall costs.

Another research looks into using the VMware platform and thin clients to reduce power consumption and cost. The thin client was benchmarked against desktop PCs to determine which system used the most power (Dasilva, Liu et al. 2012). The outcome of the research was that with thin client and VDI, resource is utilized by reducing costs generated from power consumption while maintaining the quality of service for end users.

(Cristofaro, Bertini et al. 2010) also supports the use of thin clients with VDI but propose a light-weight solution called VDD (Virtual Distro Dispatcher). Their research shows that VDD maintains optimum performance levels while helping to reduce operational costs due to low power consumption. However, (Cristofaro, Bertini et al. 2010) states a high level of experience in using GNU (GNU’s Not Unix)/Linux is required to setup VDD.

(Shri, Subha 2013) research on implementing private clouds in Education highlights some of the benefits of Cloud computing. (Shri, Subha 2013) looks into implementing an e-learning system

Page 26: Seyi Dissertation

19

by using an open source platform such as Eucalyptus. This research outlines some benefits like backup and storage, flexibility, ability to access e-learning platforms from any location, etc. and states that Educational Institutions should consider adopting Cloud computing. (Shri, Subha 2013) also states that this move will help students to experience a diversified and rich learning environment.

Another research by (Kibe, Koyama et al. 2012) investigates the performance of DaaS in Education using Eucalyptus. The research looks into two approaches; the first one being a single user DaaS and the second approach a multi user DaaS. The research carried out using Cent OS discovers that the single user DaaS maintains its performance and the quality of service while the multi user DaaS drops in performance and QoS as the amount of simultaneous users increases. This paper concludes that by increasing the efficiency of the multi user DaaS, costs will be minimal and help the adoption of clouds in the Education Sector.

In conclusion, (A Vouk 2008) looks at the Virtual Computing Laboratory (VCL) implementation that is being used in North Carolina State University.VCL offers SaaS, PaaS and IaaS cloud services to students and staffs. This service currently serves about 30,000 staffs and students who currently use it but it can only be accessed on-demand (A Vouk 2008). This research shows that there are some universities already adopting cloud and enjoying the benefits associated with it.

2.4 ADOPTION OF CLOUD COMPUTING The adoption of cloud computing can be looked at from different angles in today’s economy. It can be viewed from either an IT, economic or consumer perspective among others. According to (Fellows 2008) the level of maturity of the organisation should be a major factor when the decision has been made to adopt cloud computing. However, (Khajeh-Hosseini, Greenwood et al. 2010) argues that the organisation has to go about that decision by critically analysing factors such as the effects cloud will have on the organisation, drawbacks, benefits and risks. The following factors need to be considered before the adoption of cloud computing, this is based on researchers in this area.

2.4.1 SECURITY According to (Benlian, Hess 2011) security is a very principal factor influencing executives’ decision when considering the adoption of cloud. This is because majority of the data no longer resides with the organisation’s storage equipment. These findings look into SaaS adopters and non-SaaS adopters. By adopting cloud platforms in organisation, executives give the cloud providers the control over the security of their data, this control requires a certain level of trust (Benlian, Hess 2011). However (Benlian, Hess 2011) suggests that Service-Level Agreements (SLA) contracts with well-defined security conditions will partly solve this issue. (Marston, Li et al. 2011) also supports the idea that security is the primary concern of executives.

However, (Kim, Kim et al. 2009) argues that security of computer systems can be enhanced when hosted in the clouds, this is due to the fact that there will be experts dedicated to keeping data safe and secure. (Kim, Kim et al. 2009) also stated that no system can boast of 100% security as hackers will always find new ways of hacking into the system. (Kim, Kim et al. 2009) also states that it is the same security used by organisation that cloud providers will use.

Page 27: Seyi Dissertation

20

In conclusion, the security concern plays and important role in the decision to adopt cloud, this is the reason why banks, hospitals and governments avoid adopting clouds (Kim, Kim et al. 2009, Benlian, Hess 2011, Subashini, Kavitha 2011).

2.4.2 COST Cost is another key factor to consider before adopting cloud, (Benlian, Hess 2011) suggests that IT executives take advantage of low costs as the major driver for adopting SaaS. (Marston, Li et al. 2011) supports this idea stating that adoption of cloud leads to a 5-7% reduction of computing costs. (Marston, Li et al. 2011) further states that most times only 10% of servers are actually utilized, why then do organisations spend money to buy expensive servers and other IT equipment. This equipment also have to be replaced from time to time as well as requiring maintenance and administration which only ends up increasing the total cost of computing. (Marston, Li et al. 2011) also states that small companies will be able to use expensive software which requires expensive equipment to run as well as the cost of licensing at a relatively cheaper cost.

However, (Kim, Kim et al. 2009) points out that cloud providers forget to mention potential hidden costs. (Kim, Kim et al. 2009) gives an example stating that clients still have to monitor the performance and availability of services which require additional staff time and hence increases cost. (Benlian, Hess 2011) asserted the same idea that the hidden costs in adopting clouds are usually more than anticipated. Also clients have to ensure that they have the right flow/amount of bandwidth from ISP’s to use cloud services which also increases cost (Kim, Kim et al. 2009).

In conclusion, although adopting clouds help to reduce certain costs, it is a factor that needs to be considered economically before adopting cloud computing.

2.4.3 PERFORMANCE Performance as a factor to be considered when adopting cloud computing cannot be overstretched. The adoption of cloud services rely heavily on the performance of applications. According to (Kim, Kim et al. 2009, Benlian, Hess 2011) connection quality is the main problem that arises between a client and cloud provider, this quality may reduce when there are so many users using the service at the same time or when the data being transferred is quite large.

Organisations need to determine how much bandwidth is needed and if they meet the necessary bandwidth requirement before adopting cloud computing (Marston, Li et al. 2011).

2.4.4 CLOUD MODEL PaaS, SaaS, IaaS or whichever other service of cloud to be implemented require organisations to consider which cloud model (public, private, public or community) will be adopted. According to (Marston, Li et al. 2011) the type of applications to be run and sensitivity of the data will determine which model to use. When sensitive data is used alongside some applications, it may be better to adopt private clouds (Marston, Li et al. 2011). Public clouds are better used with common applications like CRM systems. (Marston, Li et al. 2011) also states that not all

Page 28: Seyi Dissertation

21

applications are ready to be hosted on the cloud. Also using hybrid clouds can be advantageous, take for instance when the private cloud capacity is exceeded organisations can move applications to public clouds.

However, (Marston, Li et al. 2011, Kim, Kim et al. 2009) suggests that there may be certain disadvantages with hybrid clouds, for example both clouds will need to use same file systems, hypervisors etc. for the servers. Another disadvantage of using Hybrid clouds is the organisation has to ensure that both the public and private cloud complies with the company policies and that the data to be transferred between both clouds retain its confidentiality and integrity.

2.4.5 RELIABILITY The adoption of cloud computing is not complete is not complete without considering reliability, it is an effective factor to be seriously considered. No organisation benefits from an outage of services. (Kim, Kim et al. 2009) stated that before adopting clouds, outage should be taken into account by organisations. Also (Kim, Kim et al. 2009) suggests that the cloud might not be ready for hosting critical applications. (Kim, Kim et al. 2009) also states that clients should always have their data backed up in other places to ensure high availability and prevent outage. 100% availability generally is not possible but organisations should plan properly before adopting clouds so that outages can be scheduled to happen when it will have the least effect. This can also be stated in the Service-Level Agreement contract.

2.5 EDUCATION AND CLOUD Cloud computing has been around for a while with several successful implementations in various industries. With low cost alternatives to running organisation-owned data centres as well as different appealing characteristics such as scalability, per-per use models among others. It is no surprise that the educational sector is now considering moving to the cloud (Singh, Hemalatha 2012, Al-Zoube 2009). The adoption of cloud computing in the educational sector offers a range of opportunities to institutions; this includes compliance with legislation and privacy policies laid down by these institutions as well as an Internet-based dynamic e-learning platform (Sclater 2010).The benefits of education in the cloud will be stated in the next section.

2.5.1 BENEFITS OF CLOUD IN EDUCATION The 3 major concerns associated with cloud computing can be said to be Reliability, Availability and Security. These factors play a major role in the factors to be considered before adopting cloud computing. In the education sector or any sector available today these 3 factors also play a major role, it can said that if one or all of these factors is missing the organisation may lose its place in the continuous “battle” for relevance in that sector. Many universities today can boast of these 3 factors which is the reason these institutions have thousands of students on campus but will they consider adopting cloud computing which promises to improve performance, flexibility, security and even cut down ICT costs even though there is a possibility of losing availability, security or even reliability. Some of the benefits of cloud computing in the Education sector are outlined below.

Page 29: Seyi Dissertation

22

2.5.1.1 REDUCED COST OF IT SERVICES Low cost of IT services is one of the major driving forces leading the reasons for adoption of cloud computing. As a result educational institutions that run on very tight budgets see the cloud as a way to save cost (Singh, Hemalatha 2012). Also, according to (Sultan 2010, Sclater 2010) several universities have moved from on-premise e-mail systems to cloud-based systems such as Google Apps for Education and Microsoft Live@edu who offer these services at almost no cost or even free. With these services students can make use of softwares packages that include word processing, email, presentation and more all from a website and without having to worry about licensing. Also with public clouds the institution is able to cut down on labour costs, this is as a result of the easy deployment and management benefit provided by cloud computing. This will help to free up staff who can then be assigned to other duties.

2.5.1.2 HIGH AVAILABILITY Students and staff are very dependent on the availability of online learning services, this is mostly because it eases the stress of both the staff and students (Sultan 2010). For example, staffs use this online platforms to post assignments, lecture notes, necessary update etc., students in turn use this services to keep track of deadlines, lectures etc. The importance of availability of services cannot be overstretched in the education system. A case study of the University of Westminster by (Sultan 2010) show an increase in the availability of services when their email platform was moved to the cloud.

2.5.1.3 ELASTICITY All educational institutions have peak period at different times in an academic year. This is usually during exam periods or during registration at the start of the year. Most times the level of service usage affects the performance of e-learning services which will only result in discomfort and queries from both staff and students on the IT department. According to (Singh, Hemalatha 2012) these spikes in usage at peak periods can easily be managed by hosting e-learning services on cloud platforms. This is due to the fact that clouds can adjust to different levels of elasticity at peak periods. In conclusion educational institutions do not need to worry about planning on usage levels if IT services are hosted on the cloud.

2.5.1.4 FOCUS ON CORE BUSINESS Another benefit of adopting cloud based services in the educational sector is that it allows educational institutions to focus on research and providing quality education which is the primary aim of any educational institution, (Sultan 2010). By adopting clouds institutions can reduce the focus of providing IT services and aim this focus towards its core business.

2.5.1.5 USER SATISFACTION Adopting cloud comes with other benefits when not providing high availability and cost reduction among other things, one of which is User Satisfaction. Users are always satisfied (worry-free) because the adoption of clouds provide institutions with updated applications as well as assurance that data will be safely stored without having to worry about losing data (Sultan 2010). For instance students or staffs may lose memory card or USB sticks and loose data stored on them but this will not be the case if this data is stored in the cloud.

Page 30: Seyi Dissertation

23

In Conclusion, although the benefits of adopting clouds in the educational sector are very welcoming. This is not to say that cloud adoption do not come with its own concerns. According to (Sultan 2010) users of cloud computing are considered to follow the “Green” initiative due to a reduction of carbon footprint. The same cannot be said for cloud providers, the amount of electricity that will be required to maintain several servers at different locations might end up increasing their carbon footprint.

Also, according to (Sultan 2010, Sclater 2010) the issue with security and privacy is a major concern. Different governments have strict privacy policies and others are not so secure. The EU (European Union) for instance has a policy that requires that personal data should not be sent outside the EU. This may be a problem as most cloud providers have servers in countries outside the EU (Sultan 2010). Although according to (Sclater 2010) some cloud providers like Google claim that data belonging to EU students will comply with EU law.

Finally with several successful implementations of cloud services recorded in continents like Europe, Asia, Africa, etc. (Sclater 2010). It is promising to say that the education system is ready for the cloud.

2.5.2 BARRIERS AFFECTING THE ADOPTION OF CLOUD COMPUTING IN NIGERIA’s EDUCATION SECTOR The present economy is fuelled by ICT and this requires every sector of the world to keep up with this current trend by either choosing to adopt it and maintain relevance in the economy or ignore this change and fall behind. As a result it is no surprise that the education sector has chosen to adopt ICT. According to (Tinio 2003), due to the introduction of ICT in education sector, educational institutions can no longer be seen as a venue for transmitting information to students but rather be seen as a venue where lifetime skills and knowledge are acquired through continuous learning. This has led to a sector where students, teachers, researchers etc. can remotely access resources for learning at any time and from any location (Tinio 2003).

However, all these benefits gotten from integrating ICT in education do not cover all countries in the world. In developing countries like Nigeria or Bangladesh it is important to consider factors such as insufficient funds, lack of ICT infrastructures, political factors, cultural factors, corruption etc. that may have a negative impact on the introduction of ICT (Khan, Hossain et al. 2012).

The introduction of ICT into Education in Nigeria can help mitigate these factors. Cloud computing offers scalable and low cost computing resources that could improve the quality of Education in Nigeria. According to (Ukpe 2013) the introduction of ICT in Nigeria can have a positive impact on the Education sector and Nigeria economy. Also (Gital, Zambuk 2011) suggest that the adoption of cloud computing in Nigeria will be advantageous as its on-demand and low-cost service will resonate positively in the tight budgets of universities in the country.

Covenant University is one of the many private universities in Nigeria that show a lot of promise in ICT. With a dedicated team behind the Centre for Systems and Information Services (CSIS) unit it is no surprise that they were awarded with the best ICT driven university of the year award

Page 31: Seyi Dissertation

24

in West Africa by West Africa ICT Development Award (WADA). Covenant University provides its staffs and students with the following learning resources:

• An intranet service that allows students and staffs to access data locally without having to access the Internet.

• State of the art computing laboratories. • Personalized emails for staff and students • Hotspots for Internet access all around the university campus.

Although Covenant University is more ICT inclined and it would probably be easier for them to adopt cloud services, this cannot of other institutions in Nigeria. Below is a list of barriers that could affect the adoption of cloud computing in Nigeria’s education sector.

2.5.2.1 COST The pay as you use model is one of the advantages of cloud computing and one that could well work in Nigeria. The problem with cost however can be looked at from a consumer (staff or student) perspective. Although private universities like Covenant University can boast of Internet access for both staffs and students. The case is not the same in other institutions. According to (Gital, Zambuk 2011) staffs and students in other universities have to pay as much as ₦150 to ₦300 per hour in cyber café’s to use the Internet. This payment does not necessarily guarantee that the speed of this Internet would be bearable. The alternative to this is to buy a home Internet subscription with costs reaching ₦15000 for a stable and fast connectivity (Gital, Zambuk 2011). Also the cost of securing a fast Internet connection from an ISP is also very high. The cost of using the Internet is enough to bar the minds of consumers with regards cloud adoption. Finally, the Internet service provided by Covenant University comes at a cost, in order to maintain Internet access to students there may be a rise the tuition fees.

2.5.2.2 LACK OF ICT INFRASTRUCTURES Cloud computing is an advocate of virtualized data centres but how will cloud work without basic ICT infrastructures in many universities in Nigeria. Covenant University may provide standard computing laboratories to its staff and students but according to (Ukpe 2013) a survey from 2008 to 2013 shows that there are still educational institutions without computing laboratories or even lecture halls that have computers in them. Although (Gital, Zambuk 2011) states that organisations such as Education Trust Fund (ETF), National Information Technology Development Agency (NITDA) and Petroleum Technology Development Fund (PTDF) provide ICT laboratories to some institutions but these institutions find it hard to maintain the laboratories due to the high cost of renewing equipment or acquiring bandwidth from service providers. The lack of basic ICT infrastructures in these institutions simply suggest that these institutions will not be able to adopt cloud computing.

2.5.2.3 LACK OF BASIC UTILITIES The cost of running private universities like Covenant University is always high, as a result student school fees are also high. The reason for this is that it costs more to provide basic utilities like water, power supply, Internet 24/7 to staff and students. This is also a different story in many other universities as at most times the power supply is unstable (Gital, Zambuk 2011). Lack of

Page 32: Seyi Dissertation

25

basic utilities like power supply simply means that even if Internet access was provided there would be little or no opportunity to utilize it. Also this would result in a lot of money being spent on acquiring generators as well as purchasing diesel or fuel required to power them (Gital, Zambuk 2011). This would make it almost impossible to adopt cloud computing in these institutions.

However, the government is working on various means to provide power supply to the country and hopefully in the coming years the country will celebrate stable and uninterrupted power supply (Thisday 2013). Also providing these basic utilities like power supply for instance can vary in cost, the price of Diesel has been increasing with each year (BOBAI 2012). As a result of this the tuition of Covenant University also increases per year.

2.5.2.4 GOVERNMENT The government plays a major role in the implementation of ICT in non-private institutions and as a result will play a major role in the adoption of cloud computing. Unfortunately this has not been the case in Nigeria as well so other developing countries (Ukpe 2013). Corruption in Nigeria is crippling the economy of such a great country blessed with many resources. For instance in 2011, ₦356,498,828,145 was allocated to all non-private educational institutions with more than 97million citizens compared to the 300 citizens of the National Assembly that was allocated ₦300,000,000,000 (Ukpe 2013). The level of corruption in the country needed to be addressed. This brought about the creation of the Economic and Financial Crimes Commission (EFCC) to look into all cases of fraud and corruption in the country.

Page 33: Seyi Dissertation

26

3. METHODOLOGY

The previous chapter looked into some of the barriers that may affect the adoption of cloud computing in Nigeria. This chapter will try to examine the method that will be used to achieve the technical goal of this research. This research aims to investigate the possibility of replacing generic (traditional) computing laboratories presently used in Covenant University with a cloud based cloud lab platform. There is no doubt that some of the more physical activities carried out in some labs will not be catered for but this will not be the case for strictly software based laboratories.

This section will be broken down into two parts;

1. Requirements Elicitation (Gathering). 2. Evaluation Criteria. 3. Technical Requirements and Configuration.

3.1 REQUIREMENTS ELICITATION (GATEHRING) Requirements elicitation or gathering is a very vital aspect to be considered before building a system. Requirements elicitation is the process of gathering requirements from stakeholders. One of the many challenges faced by software engineers is that poorly gathered requirements will result in failure also stakeholders cannot clearly state what they want (Sharp, Finkelstein et al. 1999). This is the reason why Software Engineers rely on some techniques that help to gather these requirements. But before mentioning which technique is to be used it is necessary to point out the stakeholders of this system. A stakeholder is someone who is directly or indirectly affected by the success or failure of the system.

This research will focus on just two of the stakeholders that will be directly affected by the success and failure of the system mostly because their input will help to build the cloud based lab platform. They are

1. Staffs 2. Students

The other stakeholders are also affected by the success or failure of the system but are not being considered because they do not directly use the system when compared to staffs and students. This is also due to the fact that the requirements gathered from staff and students will help to determine the Labs, Activities and associated Softwares to be built in the cloud.

3.1.1 METHOD OF DATA COLLECTION Surveys were chosen because this aspect of the methodology focuses on getting quantitative data and also because there was no need for in-depth probing of responses since the requirements gathered will simply be used to build the system. For this research the requirements gathering technique to be used is Survey (Questionnaire). One of the factors that have led to this choice is the availability and location of the stakeholders. Other requirements gathering techniques like Focus groups, Observation and Interviews require the stakeholder to be in the same geographical location and this will not be possible because the stakeholders used in this system are in Nigeria

Page 34: Seyi Dissertation

27

(Jil Liles 2012, Kothari 2004). Surveys seemed the most appropriate choice since they can be delivered online to users irrespective of their location. Although surveys are best used to gather initial responses, they are also used to gather opinions and view which is best suited for the type of system to be built.

3.1.2 RESEARCH POPULATION The research population consists of staffs and students from the department of Computer Information Systems (CIS) in the College of Science and Technology (CST), Covenant University. Knowing fully well that other colleges and departments have different labs, CST was chosen since their labs should most likely have the most lab activities and softwares. Also CST was chosen just for testing purposes as success in CST may result in adoption in other colleges.

3.1.3 SURVEY DESIGN AND DISTRIBUTION One Survey was created with the sole purpose of finding out the softwares and activities carried out during lab sessions. The Survey was piloted here in the UK at the University of Central Lancashire (UCLan) before being deployed to Coventan University, Nigeria. The purpose of the pilot test was;

• To determine the time taken to complete the survey. • To determine the respondents attention and interest. • To determine if the survey questions were easy to understand. This was due to the use of

skip questions in the survey.

After the Pilot test the questionnaire was deployed over the Internet by sending an e-mail containing the link to the survey to the course advisor for computer science who was asked to help distribute it to his students as well as other lecturers in the department.

3.1.4 METHOD OF DATA ANALYSIS The collected responses were analysed using IBM’s SPSS tool. Inferential analysis also referred to as statistical analysis was used to analyse the frequency and percentage of the data. The ordinal data (Likert-Scale) was analysed using mean square analysis;

MS(Mean Square) = 5n5 + 4n4 +3n3 +2n2 + 1n1

(n5 + n4 +n3 + n2 + n1)

Where; n1 = number of respondents who answered “Never” n2 = number of respondents who answered “Rarely” n3 = number of respondents who answered “Sometimes” n4 = number of respondents who answered “Often” n5 = number of respondents who answered “Always”

Page 35: Seyi Dissertation

28

3.2 EVALUATION CRITERIA This project aims to look for a way to improve the experience of staffs and students on a University platform. The project aims to achieve this by evaluating cloud computing platforms with the hopes that University officials will come to understand some of the benefits of the “Cloud”. As a result this section aims to evaluate four different cloud platforms and will try to select appropriate Evaluation Criteria that should be enough for a decision to be made. This project has gone through a certain process that is aimed at avoiding some of these mistakes people make when evaluating a product/software (Comella-Dorda, Dean et al. 2002);

• Inappropriate research on the software. • Gathering requirements without involving the end users. • Deciding to use a software based on facts without ever testing the software

As a way around this, the project goes through the following stages (Process), the study stage takes place throughout the stages;

Pre-Study Planning Survey (Requirements Gathering) Hands-On Experimentation Evaluation

It is important to note that due to the nature of the project, the Evaluation Criteria to be used will not cover all aspects of a proper software evaluation but will be enough to achieve the projects objective and hopefully enough to help decide which type of cloud to adopt. Also according to (Comella-Dorda, Dean et al. 2002) for any evaluation to succeed its criteria need to be derived by a team formed of a range of experts.

The Evaluation Criteria and sub-criteria are listed in table 1.

Table 1 : Evaluation Criteria

CRITERIA SUB-CRITERIA Ease of Deployment • Documentation

• Installability • Skill Level Required

Ease of Use • Management • User Experience (Performance) • Learnability

Features • Hypervisor Support • Storage (Backup and Recovery) • Flexibility and Scalability

Support and Cost • Available Support • Equipment Cost • People Cost

Ability to Deploy DaaS Able to deliver working lab based environment

Page 36: Seyi Dissertation

29

3.3 TECHNICAL REQUIREMENTS AND CONFIGURATION The main technical goal of this project is to examine the possibility of replacing traditional labs in Covenant University with a cloud based lab alternative (DaaS). That goal will now be tested after gathering requirements from both staff and students. All installations and configuration were carried out on VMware Workstation software, this was because the deployment scenarios were all test based, successful implementations will then result in tests being carried out in a real lab based scenario. This section will examine the technical requirements and method of doing this with the following four different cloud platforms. It is important to note that the administrator and user represent the one user who tested and evaluated the cloud platforms.

3.3.1 OPENSTACK REQUIREMENTS AND CONFIGURATION The Openstack installation process used for this lab was built using Ubuntu Server 12.04.3 LTS on VMware workstation test environment. Figure 7 shows the 3-node architecture used for this setup process.

The system specifications used for the test environment can be seen in table 2.

Table 2: System specifications used for Openstack

Server Hardware Controller Node Processor: 64-bit x86

Memory: 1 GB RAM

Disk space: 100 GB

Network: One 1 Gbps Network Interface Card (NIC) Network Node Processor: 64-bit x86

Memory: 1 GB RAM

Disk space: 100 GB

Network: Three 1 Gbps Network Interface Cards (NIC) Compute Node (Virtualization Support was enabled for this node)

Processor: 64-bit x86

Memory: 4 GB RAM

Disk space: 200 GB

Network: Two 1 Gbps Network Interface Cards (NIC)

Page 37: Seyi Dissertation

30

Figure 9: Openstack 3-Node Architecture (Openstack 2014)

3.3.1.1 CONFIGURATION The three nodes (servers) were running Ubuntu 12.04.3 and was configured using (Richard Boswell 2013) and Openstack documented installation procedure. The controller node was used for management, the network node was used to provide the networking between the nodes and the compute node was used for provisioning and managing the virtual machines. One additional virtual machine was used for the configuration;

• Ubuntu Desktop 12.04: This VM acted as a router and was used to setup DHCP. It contained two network cards, with one connected locally and the other one connected to the external (Internet) network and was allocated 2 GB RAM. This desktop was also used to access the Openstack Dashboard.

The 3 nodes also received its IP address from the Ubuntu desktop unassigned pool of static addresses.

KVM was the hypervisor used as this is Openstacks default hypervisor.

The storage capacities for the nodes were 100GB for Controller and Network node and 200GB for the compute node.

Page 38: Seyi Dissertation

31

3.3.1.2 USAGE Openstack uses keystone identity service for storing users, the user data is stored using an SQL database. One user was created for this test scenario, this was done by adding the login credentials of this user manually. In an ideal scenario there will be a lot more users and this can prove to be stressful for a System Administrator. The user was added using the Openstack dashboard, it is important to note that this can also be done using CLI commands. Figure 10 shows the Openstack Dashboard.

Figure 10: Openstack Dashboard

Two images were prepared for the user;

1. A preconfigured image of Ubuntu 12.04 was provided to the user gotten from http://cloud-images.ubuntu.com

2. The second image was a preconfigured image of Windows Server 2012 R2 Evaluation gotten from http://www.cloudbase.it/ws2012r2/ , the image was “gunzip-ed” before adding using glance.

This was done using Opensatcks imaging service (Glance). Openstacks documentation provides a description for creating and uploading custom images.

The administrator logs in to an Admin tab which is where the administrator provisions quotas for users to use. The quota given to the user is shown in table 3 and 4. This quota can be expanded for the user.

Page 39: Seyi Dissertation

32

Table 3: Ubuntu Server quota

Flavor m1.small VCPU 1 RAM 2GB Disk 20GB

Table 4: Windows Server quota

Flavor m1.medium VCPU 2 RAM 4GB Disk 40GB

The user logs into the Project tab and then performs the following activities;

• Create a keypair; this is used to access instance created. • Manage firewall/security group; this is needed to allow incoming ssh, http and ICMP

traffic. • Click on images and snapshots and then launch an instance; select the Ubuntu image,

name the instance, select keypair, flavor and security group. • Click on instance; select created instance and locate IP. • Click on the instance name created and navigate to Console to use start using VM;

Openstack has a console tab although u can use ssh for the Ubuntu image and remote desktop for the Windows image. Although to do this floating IPs need to be attached to the instance.

From the console the Windows server image was configured to act like a regular desktop with some software installed and tested on it. The Ubuntu server image was simply configured to act as a web server and a test website was deployed using this image. The website was deployed on Mozilla Browser via the Ubuntu Desktop VM that was part of the test deployment. The windows and Ubuntu test deployments were run separately due to lack of memory. Figure 9 shows the Openstack Dashboard.

3.3.2 OPENNEBULA REQUIREMENTS AND CONFIGURATION The Opennebula installation process used for this lab was built using Ubuntu Server 12.04.3 LTS on VMware workstation and follows the Opennebula installation documentation. Figure 11 show the Opennebula Dashboard.

The system specification used for the test environments can be seen in table 5.

Page 40: Seyi Dissertation

33

Table 5: System specifications used for OpenNebula

Server Roles Recommended Hardware Frontend role (Virtualization Support was enabled for this node)

Processor: 64-bit x86 (AMD-V or VT-x enabled)

Memory: 2 GB RAM

Disk space: 100 GB

Network: One 1 Gbps Network Interface Card (NIC) Nodes role (Virtualization Support was enabled for this node)

Processor: 64-bit x86 (AMD-V or VT-x enabled)

Memory: 2 GB RAM

Disk space: 100 GB

Network: One 1 Gbps Network Interface Card (NIC)

Figure 11: Openenbula Dashboard

Page 41: Seyi Dissertation

34

3.3.2.1 CONFIGURATION The two nodes (servers) were running Ubuntu 12.04.3 and was configured using OpenNebula documented Ubuntu installation procedure. One additional virtual machine was used for the configuration;

• Ubuntu Desktop 12.04: This VM acted as a router and was used to setup DHCP. It contained two network cards, with one connected locally and the other one connected to the external (Internet) network and was allocated 2 GB RAM. This desktop was also used to access the Opennebula Sunstone Dashboard.

The 2 nodes also received its IP address from the Ubuntu desktop unassigned pool of static addresses.

KVM was the hypervisor used, this is one of the hypervisors available to OpenNebula.

The storage capacities for the nodes were 100 GB per node.

3.3.2.2 USAGE Openstack uses core authentication (username and password) by default, it is possible to use say x509 Auth or LDAP. After typing login details, the Opennebula Sunstone Dashboard is revealed. For this test scenario a preconfigured Ubuntu 12.04 cloud image was downloaded from http://cloud-images.ubuntu.com . A new user was created and the core authentication type was chosen. As mentioned earlier it is possible to use LDAP in a situation where there are numerous users.

A template is then created from the downloaded Ubuntu image, this is done using the following steps;

• Navigate to Templates • Select Create • Under General:

The template was named. 1 CPU. 512MB Memory.

• Select Storage; select the Ubuntu image here. • Select the network. • Select OS Booting. • Select Input/Output; VNC. • Select scheduling and then click create.

That template is then instantiated and when you navigate to Virtual Machines, you can view the console through VNC. The Ubuntu server image was also tested by deploying a web server and testing it via the Mozilla on the Ubuntu desktop VM.

Page 42: Seyi Dissertation

35

3.3.3 AMAZON EC2 REQUIREMENTS AND CONFIGURATION Amazon EC2’s only requirement is an Internet enabled system (PC or Laptop) with any web browser of your choice. That being said a 100Mbs network should be sufficient for using Amazon EC2. The system specifications used were;

• Windows OS. • 2GB RAM. • Chrome Web Browser. • 100Mbps Internet speed.

Amazon EC2 is proprietary software and as a result is not open-source or free to use and configure like Openstack for instance. An AWS account was created for my use by the university and I was able to run the AWS Free Usage Tier. This account provided the following resources;

Elastic Compute Cloud (EC2)

• 750 hours of Amazon EC2 Linux Micro Instance usage (613 MB of memory and 32-bit and 64-bit platform support) – enough hours to run continuously each month

• 750 hours of Amazon EC2 Microsoft Windows Server Micro Instance usage (613 MB of memory and 32-bit and 64-bit platform support) – enough hours to run continuously each month

• 30 GB of Amazon Elastic Block Storage, plus 2 million I/Os and 1 GB of snapshot storage Amazon VPC (Virtual Private Network)

• Amazons VPC allow customers to run virtual networks similar to that of a datacentre. However VPC provides an option of scalability via its Elastic IP feature and also allows customers integrate their own datacentre networks.

Amazon EC2 provides a management console for users to manage and deploy virtual instances, figure 12 shows amazons management console.

Page 43: Seyi Dissertation

36

Figure 12: Amazons Management Console page

Amazon Workspaces

• Amazon workspaces allow companies to deploy a windows based cloud desktop environment for a set monthly cost, figure 13, shows the workspace bundles and monthly costs available to customers. Workspaces can be configured and deployed for PC, Apple and Android tablets easily with just a few mouse clicks (Amazon 2014).

Figure 13: Amazon WorkSpace Bundles (Amazon 2014)

Page 44: Seyi Dissertation

37

3.3.3.1 CONFIGURATION AND USAGE Before configuring VMs in Amazon EC2 it is important to configure a few things some of which are VPC (Virtual Private Cloud), choosing a DNS (Domain Name System) namespace etc. After that a Windows server 2012 Standard edition VM was started and active directory configured on it. The images available to use were limited to only to images that were “free tier eligible”, the memory was also limited. Although the Windows server was not used for much hence did not require a lot of performance.

One of Amazons features is the ability to deploy Windows workspaces, a feature that provides customers with a Windows 7 desktop environment. Due to the limitations of my account I was limited to one of the four bundles standard (the other bundles are standard plus, performance, performance plus) available via Amazon workspaces. The standard bundle provides the following resources;

• Windows 7 Experience, • 1 vCPU, • 3.75 GiB Memory, • 50GB storage, • And 4 applications (Internet Explorer, Firefox, 7-ZIP, Adobe Reader).

The 4 bundles however do not restrict users from installing applications. 3 standard bundles were created all gotten from active directory and were configured to use applications derived from responses gotten from the survey. An Ubuntu server VM was also created for use, Ubuntu desktop installation was tried on this image but there attempts to connect to the Ubuntu desktop via RDP was unsuccessful even after editing the security group setting. Apache 2 was eventually installed to test as a web server but security groups needed to be configured before it could be accessed via the public DNS of the instance

3.3.4 MICROSOFT AZURE REQUIREMENTS AND CONFIGURATION Microsoft Azure’s only requirement is an Internet enabled system (PC or Laptop) with any web browser of your choice. That being said a 100Mbs network should be sufficient for using Amazon EC2. The system specifications used were;

• Windows OS. • 2GB RAM. • Chrome Web Browser. • 100Mbps Internet speed.

Microsoft Azure is proprietary software and as a result is not open-source or free to use and configure like OpenNebula for instance. A 30 day trial account was created with 190 pounds using a Microsoft Account, there was no limit to the features that could be used as long as you don’t exceed the 190 pounds. For this reason usage needed to be monitored properly.

Page 45: Seyi Dissertation

38

3.3.4.1 CONFIGURATION AND USAGE For this cloud platform 4 Windows server 2012 R2 Datacentre VMs and one Ubuntu server 12.04 VM were created. The Ubuntu server was then converted into Ubuntu Desktop following the instruction stated in the appendix under Windows Azure. This Ubuntu server was accessed via SSH and after changing it to Ubuntu Desktop it was accessed via remote desktop connection. Windows Azure make it possible to adjust the endpoints (Just like setting a security group in Amazon EC2) to allow incoming connections to the public address or cloud service. The Ubuntu image was then added to the Windows Active directory via Likewise Open GUI and tested with some applicaitons like KVM (the reason for installing KVM will be discussed later) and trying to SSH into Ubuntu Server on Amazon EC2, this required my keypair from amazon.

For the windows machine one image was configured to act as the Active directory for both the Ubuntu and the other Windows’ VMs. The other images were configured to use Windows desktop experience, this follows the Windows Azure documentation for Desktop Hosting Deployment Guide. This documentation can be found in the Appendix section under Windows Azure. The three images were used to setup three labs scenarios and applications gotten from the survey that was sent out. Figure 14 shows the Microsoft Azure Dashboard.

Figure 14: Microsoft Azure Dashboard

Page 46: Seyi Dissertation

39

4. RESULT AND ANALYSIS

This chapter explains the result gotten from the survey and analyses the findings based on the Evaluation Criteria set in the previous chapter. The survey was analysed using statistical analyses of Frequency and Percentage and Mean Score analyses for the likert scale. The following sections describes an overview of the survey methods and analyses of the result gotten from respondents

4.1 SURVEY METHODS The survey was developed on Microsoft word and then hosted on an online survey platform (esurveypro) enabling respondents to gain easy access to the survey and made it easier to analyse for the researcher. The survey questions were simple and straightforward and aimed at gathering requirements for solving the aim and objective of the research.

4.2 RESPONDENTS PROFILE This section provides the basic information that was gotten from the respondents. The survey was aimed at 230 respondents and 67 responses were valid. This means that 167 did not partake in the survey or were incomplete.

Table 6 : Number of Staff and Students Respondents

Frequency Percent Staff 5 7.5 Student 62 92.5 Total 67 100

Figure 15: Students Level

Page 47: Seyi Dissertation

40

Table 6 shows the amount of male and female students responses, 52 students and 5 Staffs, Figure 15 shows Level of students that filled the survey. There were 27.42% from Year 1, 25.81% form Year 2, 20.97% from Year 3, 25.81% from Year 4 and no response from Year 5, MSc or PhD students.

Figure 16: Staff Qualification

Figure 16 above shows the pie chart of staff respondents, there were 60% (3), 20% (1) BSc and 20% (1) PhD responses.

Figure 17: Program of Study

Page 48: Seyi Dissertation

41

Figure 17 shows the size of respondents with regards to the number of students per program. 19 of the students’ Computer Science (Programming), this shows that computer science (Programming) had the most respondents and Computer Science (Networking) had the least with just 9 responses. Table 7: Responses to “Which applications do you use in labs?”

Never Rarely Sometimes Often Always Response Average

VMware 25(37.3%) 11(16.4%) 2(3%) 8(11.9%) 21(31.3%) 2.84 Microsoft SQL

33(49.3%) 9(13.4%) 7(10.4%) 3(4.5%) 14(22.5%) 2.37

Netbeans 39(58.2%) 7(10.4%) 2(3.0%) 1(1.5%) 18(26.9%) 2.28 Packet Tracer 51(76.1%) 5(7.5%) 1(1.5%) 2(3.0)% 8(11.9%) 1.67 Photoshop 43(64.2%) 2(3.0%) 15(22.4%) 3(4.5%) 4(6.0%) 1.85 MySQL 24(35.8%) 2(3.0%) 8(11.9%) 4(6.0%) 29(43.3%) 3.18 Dreamweaver 36(53.7%) 7(10.4%) 0(0%) 7(10.4%) 17(25.4%) 2.43 Visual Studio 52(77.6%) 5(7.5%) 0(0%) 10(14.9%) 0(0%) 1.52 Eclipse 49(73.1%) 18(26.9)% 0(0%) 0(0%) 0(0%) 1.27 Wamp Server 39(58.2%) 4(6.0%) 0(0%) 5(7.5%) 19(28.4%) 2.42

Table 7 show the applications that are used during labs and the responses gotten from both staff and students. Using mean score analysis the result show that MySQL and VMware are one of the most used applications among staff and students irrespective of program and modules taught. The result also shows that Eclipse and Packet Tracer are the least used applications.

Page 49: Seyi Dissertation

42

Figure 18: Responses to "Which courses do you teach?"

Figure 18 shows the courses that a taught by staff members, this question was an open ended question so the responses where summarised into Web Programming, Database, Networking and Other categories to get the summary of the responses. The response shows 4 Web Programming modules, 2 Database modules, 1 Networking, 1 Programming module and 0 response to “other” modules.

Figure 19: Responses to "Which activities are carried out during lab sessions?"

Page 50: Seyi Dissertation

43

Figure 19 shows the activities which are carried out during , this question was an open ended question so the responses where summarised into Web Design Tasks, Database Tasks, Networking Tasks, Programming Tasks and “Other” categories to get the summary of the responses. Programming tasks had the highest rate with a frequency of 30 and “Other” category with the least with tasks such as Crimpling network cable or physically connecting Routers and server.

The analysis of the summary helped to ascertain which computing labs to build. The 3 labs chosen were;

• Networking Lab • Database Lab • And Programming Lab.

Based on the applications selected these three labs were built, also Web design tasks and Programming tasks use some of the same applications hence they were merged into one.

4.3 EVALUATION REPORT This project aims to answer the research question; can DaaS replace traditional/conventional lab environments? This section of the project will aim to report findings based on the Evaluation Criteria listed in the previous chapter. This section will analyse findings on the following four cloud platforms that have been deployed.

4.3.1 OPENSTACK Openstack is an open source platform that has seen several releases since its inception in 2010, (Openstack 2014). Its most recent release is the Openstack Icehouse. For this implementation Openstack Havana was used. Openstack was evaluated using the following criteria.

4.3.1.1 EASE OF DEPLOYMENT These criteria will explore of the following sub-criteria;

• Documentation Openstack provides customers with proper documentation of its hardware requirements,

• Installability The installation process is a bit technical. It is assumed and expected that the software tester has knowledge of either Ubuntu, Cent OS etc. It is important to be experienced in networking and virtualisation before attempting to install Openstack. Being an open source platform other developers have looked at means of installing Openstack on Windows.

• Skill Level Required Openstack requires a certain level of experience, a Senior Systems (Networking and Virtualisation) Engineer would be able to easily use cloud computing while a Junior Linux/Unix engineer may find it a bit too technical.

4.3.1.2 EASE OF USE These criteria will explore of the following sub-criteria;

Page 51: Seyi Dissertation

44

• Management Openstack provides system administrators with two options that can be used to manage the platform; CLI and GUI. The CLI can be done from the compute node and can be used to manage any resource that can be used in Openstack. The second option is via the Openstack Dashboard, this gives users a more user friendly interface that can be used to manage resources.

• Learnability Openstack provides basically every detail on how to use the system, there is even a user manual on aspects such as deploying instances or using different APIs.

• User Experience This aspect will try to analyse user experience with launching instances and its performance. The first aspect will look into CLI based instance running Ubuntu server; the CLI instance ran smoothly without any issues. The access to the webserver was very straightforward and smooth without any lag, word of mouth is not the right way to analyse this but will be accepted for this project. The second aspect will look into GUI based instances running Windows server; the instance was initially deployed with an m1.small flavour but its performance was too slow and unbearable and it couldn’t load the windows environment properly. As a result its flavour was increased to an m1.medium flavour, there was however a drop in the performance of the system that was hosting the Openstack deployment hence the Ubuntu server was suspended. Deployment of instances was also very straightforward.

4.3.1.3 FEATURES These criteria will explore of the following sub-criteria;

• Hypervisor support Openstack supports a range of hypervisors, these options give potential users a choice of hypervisor that they are comfortable with. The hypervisors supported include KVM, ESXi, Xen, Hyper-V etc.

• Storage (Backup and Recovery) Openstack uses swift to provide object storage to users; one feature of Openstack is the ability to use snapshots to create backup of instances.

• Flexibility and Scalability Openstack provides the feature of flexibility and scalability to customers. System administrators can decide to suspend a running web server when not in use (for instance during semester breaks). Another feature is scalability, with Openstack users can request more compute resource, the System administrator can simply add to the quota of the student and take it away when no longer in use.

4.3.1.4 SUPPORT AND COST These criteria will explore of the following sub-criteria;

• Available Support

Page 52: Seyi Dissertation

45

Openstack does not provide direct support to its customers provides support via a community blog and also aims to tackle bugs that may be encountered by reporting the bug via LaunchPad (LaunchPad 2014).

• Equipment Cost With regards cost Openstack may be an open source platform but to deploy within an organisations infrastructure involves a few things. In an ideal scenario Openstack will be used for say thousands of users this will require a lot of high performing equipment and a lot of bandwidth (Sullivan 2014, Ray 2014). One of the benefist of this is that with Openstack the need to upgrade users systems say every 3 years can now be increased to 5-6years.

• People Cost Cloud computing adoption entails a number of different costs, from hardware acquisition to on-going maintenance and monitoring. On-going maintenance and Monitoring make up people cost. In a fairly medium sized organisation this would require at least 1 cloud computing consultant and 1 senior systems engineer, each averaging between £45,000 and £50,00 per annum respectively. If this organisation is then stretched to a University with thousands of students the expected people cost will increase greatly.

4.3.1.5 ABILITY TO DEPLOY DAAS Based on the test scenario that was run Openstack will not be able to deliver DaaS services to users. However it is important to note that as Openstack is open sourec it allows other developers to improve or alter their own code. One of such developers created a platform called Murano (Murano 2014). With this platform it would have been possible to configure Active Directory and the configure the Windows server images to be configured for Windows desktop experience.

4.3.2 OPENNEBULA OpenNebula is another open source platform that has seen several releases since its inception in 2008. OpenNebula was evaluated using the following criteria.

4.3.2.1 EASE OF DEPLOYMENT These criteria will explore of the following sub-criteria;

• Documentation OpenNebula provides customers with proper documentation of its hardware requirements,

• Installability The installation process is also a bit technical. It is assumed and expected that the software tester has knowledge of either Ubuntu, Cent OS etc. It is important to be experienced in networking and virtualisation before attempting to install OpenNebula. Being an open source platform other developers have looked at means of installing OpenNebula on other platforms.

• Skill Level Required

Page 53: Seyi Dissertation

46

OpenNebula requires a certain level of experience, a Senior Systems (Networking and Virtualisation) Engineer would be able to easily use cloud computing while a Junior Linux/Unix engineer may find it a bit too technical.

4.3.2.2 EASE OF USE These criteria will explore of the following sub-criteria;

• Management OpenNebula provides system administrators with two options that can be used to manage the platform; CLI and GUI. The CLI can be done from the compute node and can be used to manage any resource that can be used in OpenNebula. The second option is via the OpenNebula Dashboard, this gives users a more user friendly interface that can be used to manage resources.

• Learnability OpenNebula provides a detailed documentation on how to use the system, there is even a user manual on aspects such as deploying instances or using different APIs. A junior system administrator should find it easy to adapt to the GUI interface, but some level of experience might be needed to work on the CLI.

• User Experience This aspect will try to analyse user experience with launching instances and its performance. The first aspect will look into CLI based instance running Ubuntu server; the CLI instance ran smoothly without any issues. The access to the webserver was very straightforward and smooth without any lag, word of mouth is not the right way to analyse this but will be accepted for this project. This means that a benchmarking tool should have been used to analyse the performance but was not done due to the scope and timeframe of the project.

4.3.2.3 FEATURES These criteria will explore of the following sub-criteria;

• Hypervisor support OpenNebula supports a range of hypervisors, these options give potential users a choice of hypervisor that they are comfortable with. The hypervisors supported include KVM, Xen, etc.

• Storage (Backup and Recovery) OpenNebula aslso has the snapshot feature which is great for recovering from an unplanned shutdown/breakdown of the system.

• Flexibility and Scalability OpenNebula also provides the feature of flexibility and scalability to customers. System administrators can decide to suspend a running web server when not in use (for instance during semester breaks). Another feature is scalability, with OpenNebula users can request more compute resource, the System administrator can simply add to the quota of the student and take it away when no longer in use.

Page 54: Seyi Dissertation

47

4.3.2.4 SUPPORT AND COST These criteria will explore of the following sub-criteria;

• Available Support OpenNebula provides two types of support; the first is a community support which is done via an active community blog. The second support is a commercial support; this support provides customers with designing cloud infrastructure or even training IT staff on how to use OpenNebula.

• Equipment Cost This section maintains the same stand as the Openstack section since both platforms are open source. With regards cost OpenNebula may be an open source platform but to deploy within an organisations infrastructure involves a few things. In an ideal scenario OpenNebula will be used for say thousands of users this will require a lot of high performing equipment and a lot of bandwidth (Sullivan 2014, Ray 2014). One of the benefits of this is that with OpenNebula the need to upgrade users systems say every 3 years can now be increased to 5-6years.

• People Cost This section maintains the same stand as the Openstack section since both platforms are open source. Cloud computing adoption entails a number of different costs, from hardware acquisition to on-going maintenance and monitoring. On-going maintenance and Monitoring make up people cost. In a fairly medium sized organisation this would require at least 1 cloud computing consultant and 1 senior systems engineer, each averaging between £45,000 and £50,00 per annum respectively. If this organisation is then stretched to a University with thousands of students the expected people cost will increase greatly.

4.3.2.5 ABILITY TO DEPLOY DAAS As far as deploying DaaS there was no documentation or instructions found anywhere on how to do this, the image used for Openstacks Windows was tried on this platform to no avail, the system just showed a blank screen. This however does not stop Universities from adopting OpenNebula for IaaS . The Ubuntu server image can be used for many other roles, for instance creating one image to be configured to act as a router and to creating another image for use as a word press server (or even and apache server). This way students working on websites can test their webpages on a test environment and also improve on it.

4.3.3 AMAZON EC2 Amazon EC2 is one of the first cloud platforms that ever existed. Amazon EC2 was first released in 2006 and has seen some major changes in the services offered since then. Amazon EC2 was evaluated using the following criteria.

4.3.3.1 EASE OF DEPLOYMENT These criteria will explore of the following sub-criteria;

• Documentation

Page 55: Seyi Dissertation

48

Amazon EC2’s documentation has a very well documented and regularly updated information page. The documentation made available to users are well arranged and helps to easily find useful and much needed information.

• Installability Amazon EC2 is a platform that takes away the pain of having to install the cloud platform from the user. With EC2 all that is needed is a web browser with a reasonable web connection and the necessary information to start deploying instances

• Skill Level Required There is not much needed to deploy EC2 so hiring a Junior Linux/Unix engineer will be sufficient.

4.3.3.2 EASE OF USE These criteria will explore of the following sub-criteria;

• Management Amazon EC2 cloud resources are deployed with ease all from the comfort of a web browser

• Learnability Amazon EC2 user interface is very easy to navigate and will not take more than a few minutes to get a customer started.

• User Experience This aspect will try to analyse user experience with launching instances and its performance. The first aspect will look into CLI based instance running Ubuntu server; the CLI instance ran smoothly without any issues. The access to the webserver was very straightforward and smooth without any lag, word of mouth is not the right way to analyse this but will be accepted for this project. The second aspect will look into the the windows active directory and the Amazon workspaces environment. The windows active directory was run under the free-tier which gives basic computing power but since its only objective was for the server to be used to configure active directory its performance was high. Finally the Amazon workspaces platform which provides a ready-made windows 7 desktop environment (DaaS) for users to do with as they please within the limit of company policies. Its performance was superb and it provided users with the choice of accessing these desktops from either an apple or android based tablet as well as access from anywhere in the world as long as there is a wireless connection and enough power supply to sustain the resource while being used. All the applications installed worked perfectly except one which was the VMware workstation which would’nt work with Hyper-V running as well. It was at this point that it was discovered that the windows 7 used on workspaces was just another windows server image that had windows desktop experience running on it. The overall performance of the workspaces that were setup was enough to feel like the OS was on that system.

4.3.3.3 FEATURES These criteria will explore of the following sub-criteria;

Page 56: Seyi Dissertation

49

• Hypervisor support Amazon automates the process involved with deploying virtual machines, hence it is unknown to the user the hypervisor that is being used.

• Storage (Backup and Recovery) Amazon EC2 also offers the use of snapshots to keep backup copies of data in the event that the system crashes. The amazon workspaces uses Amazons storage platform to keep data backed up at all times and is able to recover the data in the event of failure. This was sort of tested out when an attempt to install virtual box to replace VMware workstation led to a crash of the system. After the support team had been contacted the workspace was rebooted with all the applications and setting that had been preconfigured still in place.

• Flexibility and Scalability Amazon offers VPC which is a virtual private cloud that allows for users to be able to expand (scale) the networks in their datacentre to the cloud. Also with amazon workspaces there is a certain level of flexibility with regards the devices that can be used to connect to the workspace.

4.3.3.4 SUPPORT AND COST These criteria will explore of the following sub-criteria;

• Available Support Amazon offers support to its customers through their IAM (Identity and Access Management) credentials.

• Equipment Cost One thing that is concurrent with all cloud platforms is that you have to spend some money to enjoy its benefits. The equipment costs might be lower in house if deploying workspaces since all that is require is a web browser with Internet connection. Universities will end up reducing money it spends on procuring new systems to maintain its performance. Also access to the Ubuntu server only requires an SSH tool like Putty to use.

• People Cost People costs will also go down when deploying Amazon EC2, this is because it is very much straight forward to use and deploy resource and even in the event of issues you can simply contact the support team or seek out the documentation files for help.

4.3.3.5 ABILITY TO DEPLOY DAAS This criteria is satisfied a lot when using Amazon EC2, its workspaces environment is a DaaS platform. Although there is no clear way to state this but this decision may be biased. In order to cover all angles the research had to pick a fourth cloud platform to evaluate and the determine if this platform will be the answer to the research question.

4.3.4 MICROSOFT AZURE Microsoft Azure is a proprietary software whose journey into cloud computing started in 2008 Amazon EC2 was evaluated using the following criteria.

Page 57: Seyi Dissertation

50

4.3.4.1 EASE OF DEPLOYMENT These criteria will explore of the following sub-criteria;

• Documentation Microsoft Azure’s documentation has a very well documented and regularly updated information page. The documentation made available to users are well arranged and helps to easily find useful and much needed information.

• Installability Microsoft Azure is a platform that takes away the pain of having to install the cloud platform from the user. With Azure all that is needed is a web browser with a reasonable web connection and the necessary information to start deploying instances

• Skill Level Required There is not much needed to deploy Microsoft Azure so hiring a Junior Linux/Unix engineer will be sufficient.

4.3.4.2 EASE OF USE These criteria will explore of the following sub-criteria;

• Management Microsoft Azure also only needs a web browser to manage cloud resources but gives an added functionality of using PowerShell to manage resources.

• Learnability Microsoft Azure’s user interface is also very easy to navigate and will not take more than a few minutes to get a customer started.

• User Experience This aspect will try to analyse user experience with launching instances and its performance. The first aspect will look CLI with, with CLI the performance was effortless and steady. The windows server was configured to act as a web server and its deployment worked effortlessly. For the next phase the Ubuntu desktop which was formerly a server was tested for its performance. The performance was terrible, it was benchmarked against another Ubuntu desktop machine using the same system specifications. The outcome was that there were a lot of lags and delays in running applications. This Ubuntu desktop was deployed with the aim of still providing a platform for students to deploy virtual machines during lab sessions since amazon workspaces could not get VMware workstation and virtual box to work. The second aspect will briefly talk about the windows servers that were configured to run the desktop experience. The installation was well documented and straight to the point. And the performance was smooth, running four servers however used up almost all of the credit allocated to it. Hence all applications gotten from the requirements gathering process was installed and at the end of the day only VMware workstation did not work due to the issue with Hyper-V.

4.3.4.3 FEATURES These criteria will explore of the following sub-criteria;

Page 58: Seyi Dissertation

51

• Hypervisor support Microsoft Azure automates the process involved with deploying virtual machines, hence it is unknown to the user the hypervisor that is being used.

• Storage (Backup and Recovery) Microsoft Azure also offers the use of snapshots to keep backup copies of data in the event that the system crashes. The amazon workspaces uses Amazons storage platform to keep data backed up at all times and is able to recover the data in the event of failure. This was sort of tested out when an attempt to install virtual box to replace VMware workstation led to a crash of the system. After the support team had been contacted the workspace was rebooted with all the applications and setting that had been preconfigured still in place.

• Flexibility and Scalability Amazon offers VPC which is a virtual private cloud that allows for users to be able to expand (scale) the networks in their datacentre to the cloud. Also with amazon workspaces there is a certain level of flexibility with regards the devices that can be used to connect to the workspace.

4.3.4.4 SUPPORT AND COST These criteria will explore of the following sub-criteria;

• Available Support Microsoft azure offer supports to customers in two ways; the first one is to contact the support and the second is to use online forums like Stack Overflow or MSDN.

• Equipment Cost One thing that is concurrent with all cloud platforms is that you have to spend some money to enjoy its benefits. The equipment costs might be lower in house if deploying windows desktop experience on Microsoft Azure since all that is require is a web browser with an Internet connection. Universities will end up reducing money it spends on procuring new systems to maintain its performance. Also access to the Ubuntu server only requires an SSH tool like Putty to use.

• People Cost People costs will also go down when deploying Microsoft Azure, this is because it is very much straight forward to use and deploy resource and even in the event of issues you can simply contact the support team or seek out the documentation files for help.

4.3.4.5 ABILITY TO DEPLOY DAAS Microsoft Azure was another platform that was able to deploy a DaaS platform. It however had the same issue Amazon EC2 had with installing VMware workstation

The next chapter will discuss some of the limitations and the decision by the researcher on which cloud platform to deploy. It will also discuss some recommendations and future research pathways.

Page 59: Seyi Dissertation

52

5. DISCUSSION AND RECOMMENDATION

The previous chapter looked at some the statistical results gotten back from the survey as well as some of the finding discovered when the four used cloud platforms where evaluated against the selected criteria. This section will discuss some of the limitations of the study this research as well as discuss in detail some of the findings discovered. Finally the chapter will end stating which cloud platform will be recommended for use and future research pathway.

5.1 LIMITATION OF THE RESEARCH This section will try to mention some of the limitations of this research.

1. Time; the time allocated was not enough to fully test and evaluate the cloud platforms 2. The Evaluation Criteria; the evaluation criteria chosen was streamlined to address some

of the questions that this research aims to answer. (Comella-Dorda, Dean et al. 2002) states that for all the necessary criteria to be evaluated to be discovered. The criteria needed to be chosen by a team of experts in the subject area.

3. Requirements Gathering approach; the process of gathering requirements is usually in several stages and for the purpose of this research those stages needed to be rushed to ensure that the right applications are built for the right labs.

4. Expert domain; a thorough evaluation of Cloud computing platforms should be done by one who is an expert in that domain. The issue of time comes up again as more time was needed to learn about this particular expert domain. Also with more time meetings would have being arranged with other experts in this domain to get their input on the best approach to choose to evaluate these platforms.

5. Finally respondents location; the respondents were from a location where Cloud computing may have never being implemented before even in its simplest form (SaaS). The project aimed to take a giant leap straight to DaaS with the hopes that this research will implore others to focus research area on the chosen location.

The limitations stated below were listed to give the reader the frame of mind of the reader with regards the importance of Cloud Adoption in Nigeria.

5.2 FINDINGS AND RECOMMENDATION This section will divide the finding into two sections;

1. Open Source Cloud Platform The idea behind every open source software is that other developers can add to the development of the platform, modify it and most importantly it is free to use within any business that chooses to install it. But nothing comes absolutely free, they will be charges involved with buying hardware that meet the system requirements or user may have to pay for external support. This approach to these two open source platforms aims to enable users understand some of the potential benefits and drawback to choosing an Open Source Software. Openstack and OpenNebula are two very well-known open source platforms with a lot of successful implementations in various companies. But with regards answering the research question of this research are a bit behind. OpenNebula

Page 60: Seyi Dissertation

53

platform offers various hypervisor supports to and with every update a newer and better functionality is added. This is great if you are considering deploying IaaS platforms but might not work out so well for DaaS. Openstack is the other open source cloud platform chosen for use in this research, Openstack is presently at its Icehouse release and has greatly improved over the years. Openstack offers an Orchestration service that can help to automate various application deployments within minutes. Openstack has also improved to the stage where Windows server images can be deployed with ease. And with the Murano project there is no telling to how much could have been achieved if there was some more time. With all that has been said and done Openstack at the moment (or at least to the extent of this research) is also only able to deploy IaaS services or a partial GUI IaaS and this will as well not help to answer the research question of this research

2. Commercial Cloud Platform However, the following two cloud platforms Microsoft Azure and Amazon EC2 have seen the successful deployment of the DaaS platform. Also these two platforms which is a paid service offer customers SLAs that they have to fulfil, and support as part of the entire package. The only issue left to be decided is which cloud platform will be commended for future use. The cloud platform that this research will suggest for future use is Amazon EC2, and the only reason for this is that the images have already being preconfigured. All that is left to do is to integrate the Universities Active Directory and students can freely enjoy the benefits of DaaS. This decision over Microsoft Azure was as a result of the fact that when students for instance go on summer breaks that sometimes last 4 months the system administrator can simply discontinue the subscriptions until he school has resumed again for the next semester. There are a few drawbacks to this decision; one of which is that each time the session is about to begin the system administrator has to manually allocate all the students back to a workstation. Another drawback is that each workstation can only be used by one student at any given time. As a result thousands of students connected at once will result in a lot of money. The recommended solution to this is that in the computing laboratories, the expensive systems should be replaced with just a thin clients as suggested by (Dasilva, Liu et al. 2012). These are systems that use relatively old hardware but all that is required from these systems is a browser to access the web URL and then download the RDP client.

Page 61: Seyi Dissertation

54

6. CONCLUSION

The adoption of Cloud computing in the Nigerian Education sector is not a common research topic mostly because Nigeria is a developing company. This research has however evaluated dome of the benefits of Cloud computing in the Education sector as well as looked at some of those barriers in place that can deny the Nigerian Education sector from enjoying some of these benefits. This research also looked at the possibility or replacing conventional labs with a DaaS platform. To achieve this objective the research evaluated 4 cloud platforms; Openstack, OpenNebula, Amazon EC2, and Microsoft Azure. These evaluation criterias helped this research to pick Amazon EC2 has the most likely platform that will help to deploy DaaS.

In conclusion, this research will suggest a future a pathway to be considered if this work were to be continued. The future pathway will be to select appropriate evaluation criteria that will be used to determine which cloud platform to use to adopt cloud computing and also test the possibility of using thin clients with DaaS. This should be a performance test between conventional desktops and thin clients. And also to evaluate the cost difference between the two.

Page 62: Seyi Dissertation

55

7. REFERENCE

A VOUK, M., 2008. Cloud computing–issues, research and implementations. CIT.Journal of Computing and Information Technology, 16(4), pp. 235-246.

AHRONOVITZ, M., AMRHEIN, D., ANDERSON, P., DE ANDRADE, A., ARMSTRONG, J., ARASAN, B., BARTLETT, J., BRUKLIS, R., CAMERON, K. and CARLSON, M., 2010. Cloud computing use cases white paper.

AL-ZOUBE, M., 2009. E-Learning on the Cloud. Int.Arab J.e-Technol., 1(2), pp. 58-64.

AMAZON, 2014-last update, Amazon EC2. Available: https://aws.amazon.com/ec2/ [April/1, 2014].

BARDIN, J., CALLAS, J., CHAPUT, S., FUSCO, P., GILBERT, F., HOFF, C., HURST, D., KUMARASWAMY, S., LYNCH, L. and MATSUMOTO, S., 2009. Security guidance for critical areas of focus in cloud computing, .

BARHAM, P., DRAGOVIC, B., FRASER, K., HAND, S., HARRIS, T., HO, A., NEUGEBAUER, R., PRATT, I. and WARFIELD, A., 2003. Xen and the art of virtualization. ACM SIGOPS Operating Systems Review, 37(5), pp. 164-177.

BÉGIN, M., JONES, B., CASEY, J., LAURE, E., GREY, F., LOOMIS, C. and KUBLI, R., 2008. An egee comparative study: Grids and clouds-evolution or revolution. EGEE III project Report, 30.

BENLIAN, A. and HESS, T., 2011. Opportunities and risks of software-as-a-service: Findings from a survey of IT executives. Decision Support Systems, 52(1), pp. 232-246.

BHAT, M.A., SHAH, R.M., AHMAD, B. and BHAT, I.R., 2010. Cloud computing: a solution to Information Support Systems (ISS). International Journal of Computer Applications (0975–8887) Volume, 11.

BOBAI, F.D., 2012. PETROLUEM PRODUCTS PRICES AND INFLATION IN NIGERIA (1990–2008), .

BUYYA, R., YEO, C.S. and VENUGOPAL, S., 2008. Market-oriented cloud computing: Vision, hype, and reality for delivering it services as computing utilities, High Performance Computing and Communications, 2008. HPCC'08. 10th IEEE International Conference on 2008, Ieee, pp. 5-13.

CLOUDSTACK, 2014-last update, Apache Cloudstack. Available: http://cloudstack.apache.org/ [March/28, 2014].

COMELLA-DORDA, S., DEAN, J., MORRIS, E. and OBERNDORF, P., 2002. A process for COTS software product evaluation.

CONBOY, K., 2013. Factors Affecting The Adoption Of Cloud Computing: An Exploratory Study.

Page 63: Seyi Dissertation

56

CRISTOFARO, S., BERTINI, F., LAMANNA, D. and BALDONI, R., 2010. Virtual Distro Dispatcher: a light-weight Desktop-as-a-Service solution. Cloud Computing. Springer, pp. 247-260.

DASILVA, D., LIU, L., BESSIS, N. and ZHAN, Y., 2012. Enabling Green IT through Building a Virtual Desktop Infrastructure, Semantics, Knowledge and Grids (SKG), 2012 Eighth International Conference on 2012, IEEE, pp. 32-38.

DAVID FRANKK, 2013-last update, Advantages of using Virtual Desktop Infrastructure. Available: http://www.examiner.com/article/advantages-of-using-virtual-desktop-infrastructure [March/2, 2014].

DE HAAFF, B., 2008. Cloud computing-the jargon is back. Cloud Computing Journal, August, .

DOBRILOVIC, D. and STOJANOV, Z., 2006. Using virtualization software in operating systems course, Information Technology: Research and Education, 2006. ITRE'06. International Conference on 2006, IEEE, pp. 222-226.

FARBER, D., 2012. The IBM-Google Connection. CNET News, 12.

FELLOWS, W., 2008. Partly Cloudy, Blue-Sky Thinking About Cloud Computing. Whitepaper.451 Group, .

FOSTER, I. and KESSELMAN, C., 2003. The Grid 2: Blueprint for a new computing infrastructure. Elsevier.

FOX, A., GRIFFITH, R., JOSEPH, A., KATZ, R., KONWINSKI, A., LEE, G., PATTERSON, D., RABKIN, A. and STOICA, I., 2009. Above the clouds: A Berkeley view of cloud computing. Dept.Electrical Eng.and Comput.Sciences, University of California, Berkeley, Rep.UCB/EECS, 28, pp. 13.

FRANK NOONE, 2013-last update, Desktop Virtualization: A Pros and Cons List. Available: http://www.eccitsolutions.com/desktop-virtualization-a-pros-and-cons-list/ [March/2, 2014].

GEELAN, J., 2009. Twenty-one experts define cloud computing. Cloud Computing Journal, 2, pp. 1-5.

GITAL, A.Y. and ZAMBUK, F.U., 2011. Cloud Computing: Solution to ICT in Higher Education in Nigeria. Advances in Applied Science Research, 2(6),.

HASHEMI, S.M. and BARDSIRI, A.K., 2009. Cloud Computing Vs. Grid Computing.

IBM, 2006-last update, IBM Launches New System x Servers and Software Targeting Large Scale x86 Virtualization. Available: http://www-03.ibm.com/press/us/en/pressrelease/19545.wss [March/28, 2014].

JHA, S., MERZKY, A. and FOX, G., 2009. Using clouds to provide grids with higher levels of abstraction and explicit support for usage modes. Concurrency and Computation: Practice and Experience, 21(8), pp. 1087-1108.

Page 64: Seyi Dissertation

57

JIL LILES, 2012-last update, METHODS FOR ELICITING - NOT GATHERING - REQUIREMENTS. Available: http://www.batimes.com/articles/methods-for-eliciting-not-gathering-requirements.html [February/18, 2014].

KHAJEH-HOSSEINI, A., GREENWOOD, D., SMITH, J.W. and SOMMERVILLE, I., 2010. The cloud adoption toolkit: Addressing the challenges of cloud adoption in enterprise. arXiv preprint arXiv:1003.3866, .

KHAN, M., HOSSAIN, S., HASAN, M. and CLEMENT, C.K., 2012. Barriers to the Introduction of ICT into Education in Developing Countries: The Example of Bangladesh. International Journal of instruction, 5(2),.

KIBE, S., KOYAMA, T. and UEHARA, M., 2012. The Evaluations of Desktop as a Service in an Educational Cloud, Network-Based Information Systems (NBiS), 2012 15th International Conference on 2012, IEEE, pp. 621-626.

KIM, W., KIM, S.D., LEE, E. and LEE, S., 2009. Adoption issues for cloud computing, Proceedings of the 7th International Conference on Advances in Mobile Computing and Multimedia 2009, ACM, pp. 2-5.

KLEINROCK, L., 2005. A vision for the Internet. ST Journal of Research, 2(1), pp. 4-5.

KOTHARI, C., 2004. Research methodology: methods and techniques. New Age International.

KUMAR, A., SINGH, A. and SIROHI, S., 2012. Market Oriented and Service Oriented Architecture of Cloud Storage. International Journal of Applied Engineering Research, 7(11),.

LAUNCHPAD, 2014-last update, LaunchPad-Openstack. Available: https://bugs.launchpad.net/nova2014].

MARINOS, A. and BRISCOE, G., 2009. Community cloud computing. Cloud Computing. Springer, pp. 472-484.

MARSTON, S., LI, Z., BANDYOPADHYAY, S., ZHANG, J. and GHALSASI, A., 2011. Cloud computing—The business perspective. Decision Support Systems, 51(1), pp. 176-189.

MELL, P. and GRANCE, T., 2009. The NIST definition of cloud computing. National Institute of Standards and Technology, 53(6), pp. 50.

MICROSOFT, 2014-last update, Microsoft Azure. Available: http://azure.microsoft.com/en-us/ [March/22, 2014].

MIKAEL RICKNÄS, 2013-last update, Microsoft's Windows Azure cloud hit by worldwide management interuption. Available: http://www.pcworld.com/article/2059901/microsofts-windows-azure-cloud-hit-by-worldwide-management-interuption.html [Febraury/20, 2014].

MILLER, K. and PEGAH, M., 2007. Virtualization: virtually at the desktop, Proceedings of the 35th annual ACM SIGUCCS fall conference 2007, ACM, pp. 255-260.

Page 65: Seyi Dissertation

58

MORIMOTO, R., 2010-last update, Microsoft’s Virtual Desktop Infrastructure (VDI). Available: http://www.networkworld.com/community/node/51451 [April/15, 2014].

MURANO, 2014-last update, Murano-Openstack. Available: https://wiki.openstack.org/wiki/Murano [May/22, 2014].

MURPHY, M.A., ABRAHAM, L., FENN, M. and GOASGUEN, S., 2010. Autonomic clouds on the grid. Journal of Grid Computing, 8(1), pp. 1-18.

OPENNEBULA, 2014-last update, Opennebula. Available: http://opennebula.org/ [April/1, 2014].

OPENSTACK, 2014-last update, Openstack. Available: https://www.openstack.org/ [April/2, 2014].

PETROVIĆ, T. and FERTALJ, K., 2009. Demystifying desktop virtualization, Proceedings of the 9th WSEAS international conference on Applied computer science 2009, World Scientific and Engineering Academy and Society (WSEAS), pp. 241-246.

RAY, T., 2014-last update, VMware: Price Tag versus OpenStack Immaterial, Says ISI. Available: http://blogs.barrons.com/techtraderdaily/2014/04/03/vmware-price-tag-versus-openstack-immaterial-says-isi/ [April/29, 2014].

REDMOND WASH, 2013-last update, microsofts azure storage service goes down locking out corporate customers from their data. Available: http://www.newsbcc.com/malaysia/technology/microsofts_azure_storage_service_goes_down,_locking_out_corporate_customers_/412699/ [February/20, 2014].

RICHARD BOSWELL, 2013-last update, Part 1 - How to install OpenStack Havana on Ubuntu - Prerequisites, Horizon, Keystone, and Nova. Available: http://www.revolutionlabs.net/2013/11/part-1-how-to-install-openstack-havana.html [March/02, 2014].

SAVILL, J., December 6, 2010, 2010-last update, Virtual Desktop Infrastructure, Part 1: Everything Except VDI. Available: http://windowsitpro.com/virtualization/virtual-desktop-infrastructure-part-1-everything-except-vdi [May/14, 2014].

SCHAFFER, H.E., 2009. X as a service, cloud computing, and the need for good judgment. IT professional, 11(5), pp. 4-5.

SCLATER, N., 2010. eLearning in the Cloud. International Journal of Virtual and Personal Learning Environments (IJVPLE), 1(1), pp. 10-19.

SHARP, H., FINKELSTEIN, A. and GALAL, G., 1999. Stakeholder identification in the requirements engineering process, Database and Expert Systems Applications, 1999. Proceedings. Tenth International Workshop on 1999, IEEE, pp. 387-391.

SHIMBA, F.J., 2010. Cloud computing: Strategies for cloud computing adoption. Lambert Academic Publishers.

Page 66: Seyi Dissertation

59

SHRI, M.L. and SUBHA, D.S., 2013. AN IMPLEMENTATION OF ELEARNING SYSTEM IN PRIVATE CLOUD. International Journal of Engineering & Technology (0975-4024), 5(3),.

SINGH, A. and HEMALATHA, M., 2012. Cloud Computing for Academic Environment.

SUBASHINI, S. and KAVITHA, V., 2011. A survey on security issues in service delivery models of cloud computing. Journal of Network and Computer Applications, 34(1), pp. 1-11.

SUBRAMANIAN, K., 2011. Hybrid clouds. Access from http://emea.trendmicro.com/imperia/md/content/uk/cloud-security/wp01_hybridcloud-krish_110624us.pdf, .

SUGERMAN, J., VENKITACHALAM, G. and LIM, B., 2001. Virtualizing I/O Devices on VMware Workstation's Hosted Virtual Machine Monitor. USENIX Annual Technical Conference, General Track 2001, pp. 1-14.

SULLIVAN, D., 2014-last update, OpenStack For Private & Hybrid Clouds: Costs, Benefits & Risks. Available: http://www.tomsitpro.com/articles/openstack-costs-benefits,2-684.html [April/29, 2014].

SULTAN, N., 2010. Cloud computing for education: A new dawn? International Journal of Information Management, 30(2), pp. 109-116.

THISDAY, 2013-last update, FG Inaugurates "Light Up Nigeria Project" [Homepage of Thisday Newspaper], [Online]. Available: http://www.thisdaylive.com/articles/fg-inaugurates-light-up-nigeria-project-/164225/ [February/18, 2014].

TINIO, V.L., 2003. ICT in Education. United Nations Development Programme-Asia Pacific Development Information Programme.

TSAI, W., SUN, X. and BALASOORIYA, J., 2010. Service-oriented cloud computing architecture, Information Technology: New Generations (ITNG), 2010 Seventh International Conference on 2010, IEEE, pp. 684-689.

UKPE, E., 2013. ICT in Education: Catalyst for Economic Growth in Nigeria.

VAQUERO, L.M., RODERO-MERINO, L., CACERES, J. and LINDNER, M., 2008. A break in the clouds: towards a cloud definition. ACM SIGCOMM Computer Communication Review, 39(1), pp. 50-55.

VITEK, A.J. and MORRIS, M., 2011. Service Oriented Cloud Computing Architectures, UMM CSci Senior Seminar Conference Morris, MN 2011.

VOAS, J. and ZHANG, J., 2009. Cloud computing: New wine or just a new bottle? IT professional, 11(2), pp. 15-17.

WU, J., PING, L., GE, X., WANG, Y. and FU, J., 2010. Cloud storage as the infrastructure of cloud computing, Intelligent Computing and Cognitive Informatics (ICICCI), 2010 International Conference on 2010, IEEE, pp. 380-383.

Page 67: Seyi Dissertation

60

ZHANG, Q., CHENG, L. and BOUTABA, R., 2010. Cloud computing: state-of-the-art and research challenges. Journal of internet services and applications, 1(1), pp. 7-18.

Page 68: Seyi Dissertation

61

8. APPENDIX

OPENSTACK

The prerequisites for the 3 nodes on Ubuntu Server 12.04.3 LTS to be configured before proceeding with the installation are as follow;

# sudo apt-get update

# sudo apt-get -y install python-software-properties

# sudo add-apt-repository -y cloud-archive:havana

# sudo apt-get update

# sudo apt-get -y upgrade dist-upgrade

# sudo apt-get -y autoremove

# sudo reboot

After doing this the system reboots and the user needs to be elevated to the root user for unhindered access to enable smooth flow of the configurations. The following packages were installed on the 3 nodes;

• Controller node:

# apt-get -y install mysql-server python-mysqldb rabbitmq-server ntp keystone python-keystone python-keystoneclient glance nova-api nova-cert novnc nova-consoleauth nova-scheduler nova-novncproxy nova-doc nova-conductor nova-ajax-console-proxy python-novaclient cinder-api cinder-scheduler openstack-dashboard memcached libapache2-mod-wsgi

• Network Node:

# apt-get install -y neutron-server neutron-plugin-openvswitch-agent neutron-dhcp-agent neutron-l3-agent neutron-metadata-agent openvswitch-switch openvswitch-datapath-dkms ntp python-mysqldb

• Compute Node:

# apt-get install -y kvm libvirt-bin pm-utils openvswitch-datapath-dkms nova-compute-kvm neutron-plugin-openvswitch-agent python-mysqldb

After installing these packages the, some key file need to be configured and altered. When all the alterations have been done you can then login to the Openstack Dashboard using;

http://<ControllerIP>/horizon

The administrator can now login and start to configure the cloud platform that is needed.

Page 69: Seyi Dissertation

62

OPENNEBULA

The prerequisites for the 2 nodes on Ubuntu Server 12.04.3 LTS to be configured before proceeding with the installation are as follow;

# sudo wget -q -O- http://downloads.opennebula.org/repo/Ubuntu/repo.key | apt-key add -

echo "deb http://downloads.opennebula.org/repo/Ubuntu/12.04 stable opennebula"

> /etc/apt/sources.list.d/opennebula.list

#sudo apt-get update

After doing this the user needs to be elevated to the root user for unhindered access to enable smooth flow of the configurations. The following packages were installed on the 2 nodes;

Frontend:

# apt-get install opennebula opennebula-sunstone nfs-kernel-server

Node:

# apt-get install opennebula-node nfs-common bridge-utils

After installing these packages , some key file need to be configured and altered. When all the alterations have been done you can then login to the Opennebula Dashboard (Sunstone) using;

http://<FrontendIP>:9869

MICROSOFT AZURE

The procedure used to configure windows server for desktop experience can be gotten from this link;

http://go.microsoft.com/fwlink/p/?LinkId=329934

The procedure used to configure Ubuntu server to Ubuntu desktop can be gotten from this link http://blog.appliedis.com/2012/11/05/remote-desktop-to-ubuntu-in-windows-azure/