DESKTOP VIRTUALIZATION OVER THE CLOUD THROUGH HOST-BASED VIRTUAL MACHINES



Similar documents
Development of Web-Based Remote Desktop to Provide Adaptive User Interfaces in Cloud Platform

Desktop Virtualization Technologies and Implementation

Virtualization Management the ovirt way

Intel Cloud Builder Guide to Cloud Design and Deployment on Intel Xeon Processor-based Platforms

Desktop virtualization using SaaS Architecture

How to Create an Enterprise Content Management Solution Based on Alfresco in a vcloud Environment. A VMware Cloud Evaluation Reference Document

Implementing and Managing Windows Server 2008 Hyper-V

Desktop Virtualization. The back-end

Module I-7410 Advanced Linux FS-11 Part1: Virtualization with KVM

How To Understand The Architecture Of An Ulteo Virtual Desktop Server Farm

Desktop Virtualization and Cloud Computing Systems Security Audit Committee Item 5 July 14, 2011 Shaun Coyne

RED HAT ENTERPRISE VIRTUALIZATION & CLOUD COMPUTING

How Zero IT Can Be. A New Way to Desktop Virtualization. Gernot Fels Product Marketing. 0 Copyright 2011 FUJITSU

How to Create a Simple Content Management Solution with Joomla! in a vcloud Environment. A VMware Cloud Evaluation Reference Document

Introduction to ovirt

Solution for private cloud computing

Computing Service Provision in P2P Clouds

PERFORMANCE ANALYSIS OF KERNEL-BASED VIRTUAL MACHINE

ovirt Introduction James Rankin Product Manager Red Hat Virtualization Management the ovirt way

Outgoing VDI Gateways:

MobiKEY. Virtual Desktop Infrastructure (VDI) Integration. September 2012

MobiKEY TM with TruOFFICE

Business Process Desktop: Acronis backup & Recovery 11.5 Deployment Guide

How to Use a LAMP Stack on vcloud for Optimal PHP Application Performance. A VMware Cloud Evaluation Reference Document

RED HAT ENTERPRISE VIRTUALIZATION FOR SERVERS: COMPETITIVE FEATURES

McAfee Product Entitlement Definitions

Remote PC Guide Series - Volume 1

Windows Server 2012 R2 VDI - Virtual Desktop Infrastructure. Ori Husyt Agile IT Consulting Team Manager orih@agileit.co.il

Cisco, Citrix, Microsoft, and NetApp Deliver Simplified High-Performance Infrastructure for Virtual Desktops

KVM, OpenStack, and the Open Cloud

Virtualization Technologies and Blackboard: The Future of Blackboard Software on Multi-Core Technologies

Table of Contents. Server Virtualization Peer Review cameron : modified, cameron

The Art of Virtualization with Free Software

How to Create a Flexible CRM Solution Based on SugarCRM in a vcloud Environment. A VMware Cloud Evaluation Reference Document

VMware Virtual Desktop Infrastructure (VDI) - The Best Strategy for Managing Desktop Environments Mike Coleman, VMware (mcoleman@vmware.

Dynamic Load Balancing of Virtual Machines using QEMU-KVM

Cloud Computing for SCADA

Technical Brief. Userful Multiplatform Desktop Virtualization Software

How to Create a Multi-user Content Management Platform with Drupal in a vcloud Environment. A VMware Cloud Evaluation Reference Document

The all-new Citrix VDI-in-a-Box

SSM6437 DESIGNING A WINDOWS SERVER 2008 APPLICATIONS INFRASTRUCTURE

MOC 10324A: Implementing and Managing Microsoft Desktop Virtualization

VDI can reduce costs, simplify systems and provide a less frustrating experience for users.

Outline SSS Microsoft Windows Server 2008 Hyper-V Virtualization

In addition to their professional experience, students who attend this training should have technical knowledge in the following areas.

Cloud Networking: A Novel Network Approach for Cloud Computing Models CQ1 2009

Getting Familiar with Cloud Terminology. Cloud Dictionary

Quick Start Guide for Parallels Virtuozzo

A Monitored Student Testing Application Using Cloud Computing

Cloud Computing Architecture

Pivot3 Reference Architecture for VMware View Version 1.03

Desktop Virtualization (VDI) Overview VMware Horizon View

An Oracle White Paper December Oracle Virtual Desktop Infrastructure: A Design Proposal for Hosted Virtual Desktops

Maintaining HMI and SCADA Systems Through Computer Virtualization

HP Matrix Operating Environment Federated CMS Overview

Microsoft Exchange Solutions on VMware

Microsoft Virtual Desktop Infrastructure (VDI) FAQ

9/26/2011. What is Virtualization? What are the different types of virtualization.

OpenNebula Open Souce Solution for DC Virtualization. C12G Labs. Online Webinar

Quick Start Guide for VMware and Windows 7

605: Design and implement a desktop virtualization solution based on a mock scenario. Hands-on Lab Exercise Guide

7 Things You Need to Know about Virtual Mobile Infrastructure

RED HAT ENTERPRISE VIRTUALIZATION

Vertex Virtual Desktops

Remote Application Server Version 14. Last updated:

Component Details Notes Tested. The virtualization host is a windows 2008 R2 Hyper-V server. Yes

PROPALMS VDI. Version 2.1. Administrators Guide. Rev

Sage Intergy 6.10 Architecture Guide

Citrix XenDesktop 5.6 Providing best TCO and TVO at once. Fabian Kienle Regional Sales Manager, Citrix Systems

Configuring and Deploying a Private Cloud with System Center 2012 MOC 10751

White Paper. ThinRDP Load Balancing

Enterprise Desktop Virtualization

RPM Brotherhood: KVM VIRTUALIZATION TECHNOLOGY

Best Practices for Virtualised SharePoint

Get Success in Passing Your

Virtual Desktop Infrastructure (VDI) made Easy

Designing a Windows Server 2008 Applications Infrastructure

Simplify VDI and RDS Private Clouds for SMBs

Connection Broker Managing User Connections to Workstations, Blades, VDI, and More. Quick Start with Microsoft Hyper-V

Making a Smooth Transition to a Hybrid Cloud with Microsoft Cloud OS

Chapter 1 - Web Server Management and Cluster Topology

Installing & Using KVM with Virtual Machine Manager COSC 495

Design a Scalable Virtual Desktop Infrastructure

Red Hat VDI. David Simmons

The virtualization of SAP environments to accommodate standardization and easier management is gaining momentum in data centers.

Virtualization. Pradipta De

Hyper-V over SMB: Remote File Storage Support in Windows Server 2012 Hyper-V. Jose Barreto Principal Program Manager Microsoft Corporation

VMware vcloud Networking and Security Overview

Course 10751A: Configuring and Deploying a Private Cloud with System Center 2012

CLOUD SERVERS vs DEDICATED SERVERS

Building a Virtual Desktop Infrastructure A recipe utilizing the Intel Modular Server and VMware View

OpenNebula Open Souce Solution for DC Virtualization

Whitepaper. NexentaConnect for VMware Virtual SAN. Full Featured File services for Virtual SAN

Desktop Virtualization for the Banking Industry. Resilient Desktop Virtualization for Bank Branches. A Briefing Paper

Transcription:

DESKTOP VIRTUALIZATION OVER THE CLOUD THROUGH HOST-BASED VIRTUAL MACHINES PROJECT REFERENCE NO. : 37S1074 COLLEGE : SAPTHAGIRI COLLEGE OF ENGINEERING, BANGALORE BRANCH : COMPUTER SCIENCE AND ENGINEERING GUIDE : DR. C.M. PRASHANTH STUDENTS : NITIN SHARATH ANKUR PRAKASH Keywords: VDI, QEMU-KVM, Cloud Computing, Virtualization. Introduction: Cloud computing is the concept of rendering computing services to a user over a network and has been the predominant way of delivering IT services in the past few years. It boasts many features such as performance, business continuity, scalability, to name a few. Virtualization is the process of virtualizing computing resources. It is usually done to get better utilization from otherwise under-utilized resources. Desktop virtualization is a type of virtualization where desktops are virtualized. It is the concept of isolating a logical operating system instance from the client that is used to access it. Virtual Desktop Infrastructure (VDI) is an architectural model for desktop virtualization where the client operating system is run on host-based virtual machines. The storage, execution and management of virtual desktops are done at the data centre[1]. Host-based forms of desktop virtualization require that the users view and interact with their desktops over a network by using a remote display protocol. Since processing takes place in a data centre, client devices can be thin clients, zero clients(no local storage), smartphones or tablets. Each user connects to an individual virtual machine that is hosted in a data centre. The user may connect to the same VM every time, allowing personalization, or be given a random VM from a pool. The project developed is a management software suite, called Neptune, which can be used to set-up an infrastructure for providing virtual desktops to a user over the web. Due to the 1

ubiquity of browsers, the system provides for a browser based interface for a platform independent solution. Objectives: To set-up a cloud environment which can be used to provide an infrastructure as a service(iaas) to the user by means of a virtualized desktop. To set-up a web based interface to the user which allows portability over a wide range of clients. To give the user, freedom to configure the specifications of his/her virtualized desktop. To give the user, freedom to scale the capacity of his/her virtual machine, on demand. Methodology: Hypervisor is a software residing on the host system which enables the virtualization. The hypervisor used here is QEMU-KVM[2,3]. QEMU is an open source processor emulator which is capable of emulating a variety of architectures. One of the objectives of this project, is to provide a pure browser based interface. To achieve this, Guacamole, an open source client-less HTML5 remote desktop gateway, has been used[4]. It supports protocols like VNC and RDP. Velocity is a templating engine developed by Apache[5] which can be used for producing dynamic web pages. It is developed in Java and is fully compatible with Java based servlet containers like Apache Tomcat. It is intended as an alternative development strategy against other tools for similar purposes, such as PHP or JSP(Java Servlet Pages). The storage is located on a centralized Network File System(NFS) which eases management and scalability. The project also uses a SQL Database to store and maintain persistent records of information about users and the virtual machines. Overall, the system follows a broker architecture. It includes a group of servers, a broker and group of clients. All the interactions from the clients to the servers happen through the broker. The hypervisors are hosted on multiple nodes(servers) and are managed remotely by a central node through libvirt[6]. This central node is also the broker node. The web server, hosted on the broker node as well, provides the gateway for the clients to access the virtual machines 2

hosted on the servers. This is done through Guacamole. The storage of the hypervisors are located on a centralized Networked File System(NFS) node. The web server also uses a database for user management. This structure is shown in the following figure. The system is designed such that the user is presented with a set of choices of predefined virtual desktops from which the user makes a selection. This selection is cloned to create a new virtual desktop for the user. This list of predefined virtual desktops is called the catalog. The cloned virtual desktops created for the user are the actual domains which will be run.the system can be divided into two main components. The Virtual Machine Management(VMM) module and the Web application. The VMM module contains interfaces to configure and manage the virtual machines where as the web application provides the front end and user management to interact with them. The hypervisors on the servers are centrally managed by the VMM module. Whenever a virtual machine has to be started, a node is chosen depending on its load and whether or not it can run the requested domain. If such a node is found, the virtual machine is started on it. If no such node satisfies the condition, the start fails and this error is relayed back to the requester. This function is done by the load balancer module. An advantage of having a centralized storage is that, the virtual machines can be started on any node, which can ease the load balancing process. Each connection is represented by a connection object. To start a virtual machine, a connection object is requested from the load balancer. The load balancer decides a node based on the parameters of the virtual machine, and sends the connection object of the corresponding node. This way, by arbitrating the connection objects through a single module, the load balancer can be isolated to a single unit, while relieving the others to focus on managing the virtual machine. The ability to migrate virtual machines can be useful for management, for example if a server needs to be taken down for maintenance purposes. This too, is taken care of by the VMM 3

module. After migration, the address and the port of the VNC server gets changed as it now runs on a new machine. Therefore, after the migration, the VMM module returns the new VNC address and port with which the migrated domain can be interfaced with. It should be noted, that migration is only meaningful in the context of the servers. In other words, as far as the user is concerned, all the virtual machines are hosted on one server. Therefore, the web application is designed to reflect the changes after migration, without any intervention from the user. Results and Conclusions: The system was set-up on 3 Intel i3 systems interconnected with each other through a Gigabit Ethernet. One of these system was designated as a broker. Although, this system is a broker and a hypervisor server, the two roles are distinct from each other. The networked file system(nfs) and the database were also set-up. Several tests were conducted to ensure that the system is working as proposed. This included various unit test, integration tests and overall system tests. In addition, a benchmarking test was also performed to demonstrate that varying the virtual CPUs of a domain result in an improvement in performance of the domain using a software called HardInfo. The test resulted are tabulated in the following table: Virtual CPUs HardInfo Benchmark Score(Lower is Better) 1 10.62 2 5.33 3 4.42 Overall the project presents a management suite, called Neptune, which can be used to setup a virtual desktop infrastructure which allows provisioning of virtual desktops to users as a service. It provides user management for managing users and their virtual machines. Due to the ubiquity of web browsers, the interfacing is done through then as a means of providing a platform independent client experience. The system uses QEMU-KVM as the hypervisor and the browser interface is provided by leveraging the Guacamole HTML5 Remote Desktop Gateway. 4

Scope of Future Work: The system has a rudimentary security model, so, a stronger and robust security model needs to be developed. The broker may prove to be a bottleneck to the system's scalability, and so, needs a more scalable architecture. One possibility is a multi-broker system sharing the load of a single broker. Scalable storage support needs to be added to the system. Support for interfacing remotely with various hardware peripherals needs to be added. Support for sound needs to be added. The browser interface can be improved by providing a more user friendly interface. The system can be optimized for tablets and other mobile devices. References: [1] Tomislav Petrovic and Kresimir Fertalj. Demystifying desktop virtualization. In Proceedings of the 9th WSEAS international conference on Applied computer science, pages 241{246. World Scientic and Engineering Academy and Society (WSEAS), 2009. [2] The official website of qemu. http://www.qemu.org. Accessed: 28th, April. [3] The official website of kvm. http://www.linux-kvm.org. Accessed: 28th, April. [4] The official website of guacamole. http://guac-dev.org. Accessed: 28th, April. [5] The official website of velocity templating engine. http://velocity.apache.org. Accessed: 28th, April. [6] The official website of libvirt. http://www.libvirt.org. Accessed: 28th, April.. 5