Cloud Computing based Computer Science Lab : Laboratory-as-a ...

28 downloads 3231 Views 424KB Size Report
Apr 4, 2017 - simple idea of providing dedicated remote access to a range of ... servers or travel to campus computing labs for software that was not available ...
International Journal of Engineering Technology, Management and Applied Sciences

www.ijetmas.com March 2015, Volume 3 Special Issue, ISSN 2349-4476

Cloud Computing based Computer Science Lab : Laboratory-as-a-Service Pardeep Kumar Ph. D. Scholar Department of Computer Science and Applications Chaudhary Devi Lal University, Sirsa- 125055, Haryana (India) Poonam Devi MCA Maharshi Dayanand University, Rohtak -12401, Haryana (India) Dr. Harish Rohil Asst. Professor Department of Computer Science and Applications Chaudhary Devi Lal University, Sirsa - 125055 Abstract—Hands-on practical experience through lab work has long been recognized as an essential part of the computer science / information techonology education. Successful computer science hands-on activities need a full range of resources with actively maintaining. This paper presents a novel „Cloud-based Lab‟solution for teaching computer science / information especially to support teaching and research in areas such as engineering computer science, and information assurance. Cloud-based Lab is proposed as LaaS education platform that provides a controlled experimental environment for hands-on experiments using cloud based lab technologies (such as Xen or KVM Cloud Platform) and OpenFlow switches.The LaaS can be securely accessed through OpenVPN, and students can remotely control the virtual machines (VMs) and perform the experimental tasks without physically being at the lab. Key words : Cloud Computing , cloud Lab , LaaS , Cloud based computing lab. 1. Introduction Cloud Computing is the emerging buzzword in cyberspace. It is rising day by day due to its rich and well-to-do features of services. Cloud computing refers to applications and services that run on distributed networks using virtualized resources and accessed by common internet protocols and networking standards. Cloud computing is a new flavor of computing where our trend of using Internet changes. The term “cloud” is analogical to “Internet”. The term “cloud computing” is used for the computation over the Internet. It is the future of Internet. It is also called as fifth generation of computing after Mainframe, Personal Computer, Client-Server Computing, and the Web. Currently various Internet services are available in distributed manner. There are three well-known technologies associated with Cloud Computing, specifically Softwareas-a-Service (SaaS), Platform-as-a-Service (PaaS) and Infrastructure-as-a-Service (IaaS).

388

Pardeep Kumar, Poonam Devi, Dr. Harish Rohil

International Journal of Engineering Technology, Management and Applied Sciences

www.ijetmas.com March 2015, Volume 3 Special Issue, ISSN 2349-4476 Cloud computing involves the provision of dynamically scalable and often virtualized resources. Cloud computing is used in e-learning scenarios as well because it fits very well to e-learning requirements. When e-learning has a distinctive remote aspect why delivering necessary educational e-sources like labs has to be delivered still in a classical and on-premise manner [1]? 2. The Virtual Computing Lab (VCL) The Virtual Computing Lab (VCL) was developed by North Carolina State University in 2004 with a simple idea of providing dedicated remote access to a range of computing environments for students and researchers to access from any networked location either on or off campus. The computing resources available to students and researchers were sparse and limited. Students who needed to use computing resources from off-campus locations had to use traditional shared “dial-up” servers or travel to campus computing labs for software that was not available remotely. The “dialup” servers usually consisted of UNIX servers or windows terminal servers, located in data centers or network closets across campus [4]. VCL was used in numerous information and computer technology courses for resource-intensive labs. VCL drawn-out the boundary of learning from the traditional laboratory to the homes of the students. The students could study any time, any place and at their own pace. As a centralized remote lab service, VCL was complementary to decentralized virtual labs which were performed on students' personal computers. [4] Virtualization allows multiple guest operating systems to run concurrently on a computer. It has been rapidly adopted in information technology (IT) & computer science education because they provide cost-effective ways of delivering complex, hands-on learning experiences. The benefits of virtual labs include, but are not limited to, high availability, easy access, low hardware and maintenance costs, and fast content deployment[2]. VCL typically provide access to basic desktop virtualization services with software commonly used by students and faculty members. Software such as operating systems, office productivity suites, software developments, and statistical and mathematical modeling software can be packaged in a single virtual machine (VM) without the need to install it on physical workstations or on studentowned computing environments. In some environments, individual applications can be provided to user-controlled desktops rather than virtualizing an entire machine. Though some university VLC usage scenarios are very similar to desktop virtualization scenarios in business and governmental institutions, there are some important differences. For example, deployments in non-educational environments typically involve either a small set of applications or a single VM used by most or all members of the organization. In contrast, educational deployments typically offer a larger set of applications or use multiple VMs customized to specific types of users (e.g., students in engineering, chemistry, or digital media arts) [6]. furthermore In a shared computing resource environment, where many students run high-end applications or experiment with computer science coding assignments on the same computer, the level of service degrades very quickly. Frequently the remote server crashes or locks due to the load of the machine. As a result, processor and memory limitations were set to alleviate issues, but the side effect is now many of the applications students need to use will no longer execute. Windows terminal services were also problematic; this solution is fine for light weight business applications, but when trying to provide engineering CAD or simulation based applications to thousands of remote

389

Pardeep Kumar, Poonam Devi, Dr. Harish Rohil

International Journal of Engineering Technology, Management and Applied Sciences

www.ijetmas.com March 2015, Volume 3 Special Issue, ISSN 2349-4476 users, this method does not scale well in terms of flexible computing resources, usability, and it is very costly [4]. University George Mason University

Discription Apache VCL, general purpose computing laboratory, similar labs implemented at other Virginia state universities Apache VCL, primarily supports students using SPSS and similar software

URL http:// www.vcl.gmu.edu

http://www.geni.net

University of Alaska Fairbanks

Citrix Xen with significant extensions, supports advanced research into distributed applications Citrix XenApp, general purpose computing lab, also provides access to common data storage VMware ESX and Lab Manager, provides specialized labs for information assurance courses.

University of Maryland

Citrix XenApp, engineering students

University of New Mexico (UNM)

VMware ESX and Lab Manager, provides a http://vlab.mgt.unm.edu general purpose computing laboratory and specialized labs for information systems and information assurance Apache VCL, general purpose computing http://vcl.unc.edu laboratory, similar labs used at other NC state universities

Georgia State University GENI

SUNY Buffalo

University of North Carolina University of West England

primarily

http://www.gsu.edu/help/46646.ht ml

http://ubit.buffalo.edu/software/vi rtual/index.php http://assert.uaf.edu/lab.html

supports http://eit.umd.edu/vcl

Citrix XenApp, general purpose computing http://www.uwe.ac.uk/its/corporat lab, also provides access to a common data e/services/remotefiletransfer.shtm storage l

Table 1[6]. Sample of VCL Installations For removing such type problem Cloud Computing based Computer Science Lab (LaaS) might be a better solution for higher education organizations or for IT training facilities. 4. Cloud Computing "Cloud computing is a model for enabling convenient, on-demand network access to a shared pool of configurable computing resources (e.g., networks, servers, storage, applications, and services) that

390

Pardeep Kumar, Poonam Devi, Dr. Harish Rohil

International Journal of Engineering Technology, Management and Applied Sciences

www.ijetmas.com March 2015, Volume 3 Special Issue, ISSN 2349-4476 can be rapidly provisioned and released with minimal management effort or service provider interaction. This cloud model is composed of five essential characteristics, four deployment models, and three service models [3].

Fig.1 Cloud Model 5. Service Models: There are three cloud services which are describe as under i. Software as a Service It describes any cloud service where Users are able to access software applications over the internet. The applications are placed in “the cloud” and can be used for a large variety of tasks for both individuals and organizations. Examples: Google Docs, Salesforce CRM, SAP Business by Design. ii. Platform as a Service It provides computational resources using a platform upon which applications and services can be developed and hosted. PaaS typically makes use of dedicated APIs to control the behavior of a server hosting engine which executes and replicates the execution according to user requests. Examples: Force.com, Google App Engine, Windows Azure (Platform). iii. Infrastructure as a Service It is a provision model in which an organization outsources the equipment used to support operations, including storage, hardware, servers and networking components. The service provider owns the equipment and is responsible for housing, running and maintaining it. The client typically pays on a per-use basis. Examples: Amazon S3, SQL Azure. Cost efficiency is an oftentimes mentioned strength of cloud computing. In times of decreasing educational budgets the concept of Laboratory-as-as-Service (LaaS) might be a better solution for higher education organizations or for IT training facilities. Laboratory-as-as-Service (LaaS): It is Cloud computing based computer science / information technology lab for used to manage the cloud computing system and provide dedicated compute environments according to users‟ need. A conceptual view of the LaaS based on Cloud Computing environment is demonstrate in Figure No. 3, which is referred from the [5]. LaaS defines and manages a pool of virtual machines provided via

391

Pardeep Kumar, Poonam Devi, Dr. Harish Rohil

International Journal of Engineering Technology, Management and Applied Sciences

www.ijetmas.com March 2015, Volume 3 Special Issue, ISSN 2349-4476 VMware, lab manager, computers and virtual computing labs, and a set of customized operating systems and applications (known as images). Through LaaS built-in resource scheduling system, a user can connect to the Lab web portal to request access to a desired application environment and computing resource for a limited time. It provides better solution of the availability of software and desired resource with out physically being at the lab. 5. Building Cloud Computing based Computer Science Labs Based on previous research and instructional needs, we believe that it is beneficial to build Cloud Computing based Computer Science Lab Cloud system to take advantage of the Cloud Computing technology. Figure No. 2 presents an overview of the new Cloud-based Computer Science Labs remote laboratory. In this Lab, we utilize the sophisticated Cloud management and scheduling functionality to deliver a secured, scalable, and dedicated remote laboratory environment to every user. To do it, we create a remote laboratory virtual machine, set the required hardware configuration and user access privilege, and store it in the image repository of the Cloud. The Cloud manages the image and finds the available and best-suited hardware environment to launch the image when a request comes in. A user needs to register in the Cloud system first before making any requests. After registration, a user is able to make a reservation to the remote lab image at any time, and anywhere. A user can request to use the remote lab immediately or at a specified time. The cloud launches the image based on the available resources and notifies the user once it is ready. The user can then log into the dedicated environment and conduct experiments without worrying any interfering. Once the requested time slot is up, the user is asked to log off from the system and make the system resources available to the other users.

Fig.2 The new Cloud-based Computer Remote Laboratory

392

Pardeep Kumar, Poonam Devi, Dr. Harish Rohil

International Journal of Engineering Technology, Management and Applied Sciences

www.ijetmas.com March 2015, Volume 3 Special Issue, ISSN 2349-4476 It should be noted that once the Cloud launches the user requested image to a dedicated computer environment, the user will no longer contact the VCL management node. It will directly “talk” with the assigned computer using Remote Desktop and VPN. So the managing node will serve other requests and focus on resources arrangement. This scheme effectively solved the bottleneck problem in the previous remote lab framework[5]. 6. Component of LaaS The components of purposed lab are describe as under I. User Firstly user accesses Cloud Based Virtual Lab through a secure network connection using Web interface to select required combination of application and Resources from given menu. If a user required image combination is not available as an image, an authorized user can have the flexibility to create their own image from the Cloud-based Computer Laboratory library components. The Cloud-based Computer Laboratory manager software then maps that user request to available software application images and hardware resources, and schedules it for either immediate use (on demand) or for later use. II. Apache VCL cloud software VCL is stand for Virtual Computing Lab. The VCL can be various things, first of all it is a opensource software that is provide a remote access in dedicated computing environment for an end-user. This software is powered by the Apache Software Foundation and donated to North Carolina State University. The provisioned computers are usually Placed in a data center and may be physical blade servers, or virtual machines. The main goals of VCL is to provide a dedicated computing environment to a user for a specified time slice using a secure web interface. It is Also using the scheduling API (application programming interface) it can be used to computerize the provisioning of servers in a data centre. III.

VCL Manager VCL Manager is a centralized management console that produces fine-grained access control and functionality for the cloud based virtual labs host. VCL Manager manages all aspects of the cloud based virtual labs including all hosts and virtual machines. VCL Manager has several components that can be installed on a number of various servers in the environment. Once the VCL Manager Administration console has been installed and setup,VCL Manager will automatically deploy and install the administration client on all managed hosts. VCL is, actually, a general-purpose cloud computing management platform or cloud Manager with a selfservice portal which facilitate to user can simply use via the secure Internet to access any number of IaaS, PaaS, SaaS, LaaS and other cloud services that it can support. It have different types free versions such as VMware ESXi, KVM or Xen without the large expenditure. And it can deliver all these services in the most cost-effective manner, supervise software licenses, monitor actual hardware and software usage, managing user/group access based on administrator-defined policies[7].

IV.

Remote Lab Image In Cloud based Lab , the term image is a software stack that incorporates the following utilities:

393

Pardeep Kumar, Poonam Devi, Dr. Harish Rohil

International Journal of Engineering Technology, Management and Applied Sciences

www.ijetmas.com March 2015, Volume 3 Special Issue, ISSN 2349-4476 • Base-line operating system, and if virtualization is needed for scalability, this will allow on hypervisor layer. • Required application that runs on the selected operating System. • End-user access solution that is suitable for the selected operating system. Images can be loaded on an operating system/application virtual environment of choice. If the user's desired combination of images is not available, the user has the privilege to construct the images in their own choice from the VCL component library. When a user has the right to create an image, that user usually starts with a NoApp or base-line image (Windows XP or Linux) and extends it to the applications.[4] V.

Virtual Machine (VM) A virtual machine (VM) is a Plateform or operating system that not only provide the behavior of a separate computer, but is also able of performing tasks such as managing process, work with applications and programs like a different computer. A virtual machine, generally known as a guest is created within another computing environment referred as a "host" . The virtual machine usually simulate a actual computing environment, but requests for CPU, memory, hard disk, I/O devices , network and other hardware resources are managed by a virtualization layer which translates these requests to the underlying physical hardware.

VI.

Computational Hardware/ Network storage Cloud based Lab servers provide a pool of resources that are according to the users requirement . The allocation of resources are depends on the particular applications that are to be computed. The storage and network resource are dynamic, meeting both the workload and user demands. In a cloud based lab , computational hardware and storage can be anything from a blade center, to a collection of diverse desktop units or workstations, to an enterprise server or to a high-performance computing engine. Each blade has at least two networking interfaces – one for the public network, and the other for a private network that is used to manage the blades and load images. Storage is attached either directly through fiber or through a network[4]. Conclusion The current research aims to promote another cloud service technology for providing an educational resource that will focus on delivery of simulated network hardware resources (the concept of Laboratory-as-as-Service (LaaS)). This distinguishes the work from traditional virtual learning environments in common use in educational establishments today. We are exploring the cloud computing technology for higher education organizations or for IT training facilities. The benefits of the new Cloud Computing based Computer Science Lab (LaaS) design include the utilize the sophisticated Cloud scheduling function to enable convenient lab reservations. It will Support a diversity of lab platforms and applications through VMware virtual machine and share the Cloud resources, and provide a cost-efficient solution. Purposed lab will reduce lab administration cost and higher Laboratory Resource availability and No time restriction for off- campus student

394

Pardeep Kumar, Poonam Devi, Dr. Harish Rohil

International Journal of Engineering Technology, Management and Applied Sciences

www.ijetmas.com March 2015, Volume 3 Special Issue, ISSN 2349-4476 Reference: [1] Nane Kratzke (2012), Virtual Labs in Higher Education of Computer Science Why they are Valuable? How to Realize? How much will It Cost?, Education 2012, 2(7): 239-246 DOI: 10.5923/j.edu.20120207.04 , pp. 239-246. Available at: http://article.sapub.org/10.5923.j.edu.20120207.04.html [2] Sam Averitt et al (2007), Virtual Computing Laboratory (VCL) , In the proceedings of the International Conference on Virtual Computing Initiative, , IBM Corp., Research Triangle Park, NC, pp. 1-16. Available at: https://vcl.ncsu.edu/vcl-history [3] Peng Li et al. (2011), Incorporating Virtual Lab Automation Systems in IT Education. Available at: http://www.asee.org/public/conferences/1/papers/1882/download [4] Peter Mell et al. (2011), The NIST Definition of Cloud Computing, NIST Special Publication 800-145, pp. 1-7. Available at: http://csrc.nist.gov/publications/nistpubs/800-145/SP800-145.pdf [5] Jithesh Moothoor et al. (2010), Cloud Computing Solution for Universities: Virtual Computing Lab, Authors, Vasvi Bhatt, ibm.com/developerWorks , pp. 1-13. Available at: http://www.ibm.com/developerworks/webservices/library/ws-vcl/ [6] Farzad Sabahi (2012), Secure Virtualization for Cloud Environment Using Hypervisor-based Technology, International Journal of Machine Learning and Computing, Vol. 2, , pp. 39-45. Available at: http://www.ijmlc.org/papers/87-A888.pdf [7] Razvan I. et al. (2012), Dinita A Cloud-based Virtual Computing Laboratory for Teaching Computer Networks, International Conference on Optimization of Electrical and Electronic Equipment (OPTIM), pp. 1314 – 1318. Available at : http://ieeexplore.ieee.org/xpl/articleDetails.jsp?arnumber=6231992 [8] Jes´us Mart´ınez-Mateo et al. (2010), A discussion of thin client technology for Computer labs, In Proceedings of the Multi-Conference on Innovative Developments in ICT, pages 119-124 DOI: 10.5220/0002962901190124. Available at: http://www.dma.fi.upm.es/jmartinez/doc/ICTEL_2010_7.pdf [9] http://www.wisegeek.com/what-is-a-computer-lab.htm [10] Available at:https://vcl.ncsu.edu/vcl-history [11] Available at: en.wikipedia.org/wiki/Community_cloud

395

Pardeep Kumar, Poonam Devi, Dr. Harish Rohil

Suggest Documents