VMLab: A Desktop Virtualization Testbed
for Research and Education
Prasad Calyam, Ph.D. (Principal Investigator) [email protected] Alex Berryman (Student Research Assistant) [email protected]
Rohit Patali (Graduate Research Associate) [email protected]
Merit Desktop Virtualization Summit 1st December 2010
Topics of Discussion
• VMLab Overview
– Hardware and Software
– Project Web-portal
• VMLab Use Cases
– Administrator Sandboxes
• User requests, VM environment and networking setup
– Classroom Labs
• User requests, VM environment and networking setup
– Research and Development
• VDBench Toolkit, NSF GENI Experiment
Topics of Discussion
• VMLab Overview
– Hardware and Software
– Project Web-portal
• VMLab Use Cases
– Administrator Sandboxes
• User requests, VM environment and networking setup
– Classroom Labs
• User requests, VM environment and networking setup
– Research and Development
• VDBench Toolkit, NSF GENI Experiment
VMLab Overview
• OSC/OARnet VMLab – http://vmlab.oar.net
– Proof-of-concept testbed for desktop virtualization experiments
• Established in June 2009
– Sponsors
• Funding Sources: Ohio Board of Regents, VMware, Dell, National Science Foundation
• Hardware/Software Donations: IBM, VMware, HP, Wyse, Dell
– Used for various tabletop experiments over the last 8 months
• Research: Desktop Pools Management, Application Virtualization, Thin Client Protocols Evaluation, “VDBench” v0.1 Tool Development
• Classroom Labs: Moldflow for OSU ISE Dept., Remote Visualization w/GPU for OSU SAIC, Remote Instrumentation for YSU Chemistry
Virtual Desktop Infrastructure
• VMware View is one of the popularly used VDI solutions
– Personalized user desktops, applications and data access while maintaining centralized control and security
VMLab Hardware Components
• IBM donation to VMLab – 50+ desktop users can be supported
– 2 IBM HS22 Intel Blade Servers
• 2 Quad Core CPU’s each, 32 GB of RAM each, 4 NIC’s each
– 9 TB Shared SAS Storage + 300 GB Solid State Array
• Network Emulator – Dual-NIC PC-router
• Thin Clients
– HP t5730, Dell FX100, WYSE C90, Teradici Zero State Client, Pano Logic Zero State Client, Wyse PocketCloud for iPhone/iPad, Microsoft RDP, Open-source VNC
VMLab Software Components
• VMware vSphere 4.5 (ESXi 4.5); View 4.5
–
Windows Server 2003• vCenter, View Manager, View Composer, ThinApp, Active Directory, (vCloud Director)
• Virtual Machines – Windows XP, Ubuntu Linux, Fedora Linux
• Network Emulator – Netem on Linux Kernel 2.6.15
• User Applications
– Novice User: MS Word, Acrobat Reader, IE Browser
– Expert User: MS Word, Acrobat Reader, IE Browser, Windows Media, Flash Video, Matlab, MoldFlow, VLC Player, VolSuite
VMLab Project Web-portal
• Project Website and Testbed Gateway - http://vmlab.oar.net
• Central site for information on VMLab testbed resources and capabilities
• Placeholder for study results, presentations and the virtual desktop performance benchmarking toolkit release (VDBench v0.1)
• Enables hands-on access to run your own remote desktop virtualization experiments in VMLab!
Topics of Discussion
• VMLab Overview
– Hardware and Software
– Project Web-portal
• VMLab Use Cases
– Administrator Sandboxes
• User requests, VM environment and networking setup
– Classroom Labs
• User requests, VM environment and networking setup
– Research and Development
• VDBench Toolkit, NSF GENI Experiment
Use Case: Administrator Sandboxes
• Users and their Requirements
– Central State University
• Install VMware technologies, Test configuration options
– The Ohio State University
• Web-portal VM staging, Electronic Lab Notebook
– Belmont Technical College
• Deploy and administer of Windows XP/7 Desktops
– Northeastern Ohio Universities Colleges of Medicine & Pharmacy
• Deploy and administer of Windows XP/7 Desktops, Video Streaming
– University of Findlay
• Install VMware technologies, Test configuration options
– Baldwin Wallace College
• Install VMware technologies, Test configuration options
– Bowling Green University
VM Environment and Networking Setup
• Each Sandbox had a dedicated virtual network with separate
blade, storage and firewall resources
– User meetings, requirements gathering, MOUs, Billing, …
• VPN had to be setup for WAN connections
– Avoids having public IP address to all VMs
• PCoIP protocol client must be able to directly connect to virtual desktop with a public IP address or a VPN
– OpenVPN server was deployed with
pfSenseon a VM to
accept VPN connections from any external IP address
• Virtual pfSense server also is a firewall appliance that we used
to handle all traffic between the virtual desktops and the Internet • Firewall rules were set/modified to block access to certain ports
Classroom Labs
• Users and their Requirements
– The Ohio State University, Dept. of Chemistry
• Electronic Lab Notebook for scientific instrument data management
– The Ohio State University, Dept. of Industrial and Systems Engineering
• Multiple Moldflow VMs
• Data sharing and folder permissions to enable faculty/student group access, content management
– Faculty distributed source files and documents by placing them in a write-protected network share mapped to Z: drive on each student VM
• Moldex3D VMs for student simulations
– The Ohio State University, Small Animal Imaging Center
VolQuiz Remote Visualization Demo-I
• VMware View Manager does not have capabilities to directly interface with GPU hardware
• Evaluated solutions involving connection brokers and gatekeepers to help improve user accessibility and ease-of-use for remote
visualization over wide-area networks
VolQuiz Remote Visualization Demo-II
• Evaluated integration of state-of-the-art thin client protocols such as PCoIP with encapsulation of custom VNC remote access solutions • Demo at Summer 2010 Internet2/ESCC Joint Techs Conference,
Motivations for Research
• Recent advances in thin clients and the numerous benefits in
transitioning user desktops to cloud environments
– Convenience, Cost savings, Green IT, Security, …
• Need for “
system-aware
”, “
network-aware
”, “
human-aware
”
frameworks and tools to deploy virtual desktop clouds
– Existing work focuses mainly upon system (i.e., CPU and memory) measurements for server-side resource adaptation
– Our focus is to couple client-and-server resource adaptation with measurements of network health and user experience
• Minimize cloud resource over-commitment
• Avoid guesswork in configuring thin client protocols • Deliver optimum user experience of virtual applications
VMLab Experiments
• VDI Scalability
– Stress test VMs under various user application work loads
• User Applications: MS Excel, IE Browser, Windows Media Player, Matlab
– We used “Autoit” user application work loads (scripts for
repeatable and automated GUI interactions with key presses, mouse movements)
• VDI Reliability
– Evaluate performance of remote desktop protocols
• Protocols Evaluated: Microsoft Remote Desktop Protocol (RDP), HP Remote Graphics Software (RGS), Teradici PC-over-IP (PCoIP), VNC Remote Frame Buffer Protocol (RFB)
– We used Netem for network (e.g., bandwidth, delay, loss) emulation
VMLab Experiments
I. User Load Simulation
Cloud Experiments on NSF GENI Facility
• Extend VMLab to a virtual desktop cloud with 3 data centers in
the NSF GENI Testbed Facility – http://www.geni.net
– West, South & East US locations with L2/L3 network connectivity – Install VMware ESXi, Other hypervisors, VDBench tools, …
• Provision “sandbox” and “desktop” VMs within User slices
– For GENI experimenters, Classroom Labs, Internet users, … – VMs will host trial and open-source software for users
• OS (e.g., Windows 7, Ubuntu), Office Suite (e.g., Word, GIMP), Gaming
Server (e.g., Counter Strike), Scientific computing (e.g., Matlab, Octave) – Users generate synchronous and asynchronous loads
• Profile “monitor” and “user” VMs under various load conditions
and investigate decision schemes for resource allocation
– “Monitor” VMs are instrumented to perform experiment runs – User loads trigger performance data logging in monitor VMs
Anticipated Duration of Experiments
• Synthetic profiling experiments generally take 2 hrs for a load
point, hence about 100 hrs (4 days) for a total run
• Real user profiling experiments might need atleast 14 days for
a total run
– Total run time is the sampling duration of active VM usage that provides a baseline to develop a user profile snapshot
– Industry standard is 45 days…
• Longer sampling periods help in better profiling
• We expect to have several experiment runs based on a variety
of virtual desktop application use cases
Potential Research Questions
• What are trends of thin-client based user activities and their
impact on resource consumption in virtual desktop pools?
– Is memory the most contended resource in virtual desktop
clouds? (i.e., users will idle CPUs but keep their desktop applications open)
• What are the challenges in coupling network and human
performance components in decision schemes?
– What are the trade-offs in client-based (e.g., VNC) versus server-based thin client adaptation (e.g., RGS)? (i.e., thin client protocol
consuming less resources is due to network bottleneck or light usage)
• How to build scalable testbeds that can support thin-client
based virtual desktop staging experiments?
– How to develop effective VM benchmarking tools as well as synthetic load profiles that emulate real user loads? (i.e., characteristics of steady state, spikes/bursts, flash crowds)
Topics of Discussion
• VMLab Overview
– Hardware and Software
– Project Web-portal
• VMLab Use Cases
– Administrator Sandboxes
• User requests, VM environment and networking setup
– Classroom Labs
• User requests, VM environment and networking setup
– Research and Development
• VDBench Toolkit, NSF GENI Experiment
Remote Instrumentation Proof-of-Concept
• VMLab as a platform to evaluate technologies before transitioning
users into HPC and networking production environments
VMLab Future Work
• Shared services based on VMware technologies to provide
testbed access to USO user communities
– For institutions that lack resources to build similar testbeds • Evaluate upcoming VMware View features, Windows 7
migration, etc.
– Persistent and Non-persistent desktops for testing amongst scientific user communities
– VMware related disaster data recovery service – Community cloud pilot studies
– Cyber-security research, e.g., virtual machines to attract and analyze web-malware