Traditional desktop delivery model is based on a large number of distributed PCs executing operating system and desktop applications. Managing traditional desktop environments is incredibly challenging and costly. Tasks like installations, conguration changes, security measures require time-consuming procedures and dedicated deskside support. Also these distributed desktops are typically underutilized, resulting in low ROI for these assets. Further, this distributed computing model for desktops also creates a security concern as sensitive information could be compromised with stolen laptops or PCs. Desktop virtualization, which moves computation to the data center, allows users to access their applications and data using stateless thin-clientdevices and therefore alleviates some of the problems of traditional desktop computing. Enterprises can now leverage the exibility and cost-benets of running users' desktops on virtual machines hosted at the data center to enhance business agility and reduce business risks, while lowering TCO. Recent research and development of cloud computing paradigm opens new possibilities of mass hosting of desktops and providing them as a service. However, transformation of legacy systems to desktop clouds as well as proper capacity provisioning is a challenging problem. Desktop cloud needs to be appropriately designed and provisioned to offer low response time and good working experience to desktop users while optimizing back-end resource usage and therefore minimizing provider's costs. This paper presents tools and approaches we have developed to facilitate fast and accurate planning for desktop clouds. We present desktop workload proling and benchmarking tools as well as desktop to cloud transformation process enabling fast and accurate transition of legacy systems to new cloud-based model.
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
1. Desktop to Cloud Transformation PlanningAuthor: Kirk Beaty,
Andrzej Kochut, Hidayatullah Shaikh IBM T.J. Watson Research Center
Presenter: SOK Phearin MBC Lab., Konkuk University
2. ContentsI. IntroductionII. Transformation Planning for
Desktop Clouds A. User Profiling - UPROF B. Desktop Benchmarking -
DeskBench C. Computing Resources Requirement for Virtualized System
and Desktop PlacementIII. Examples and Experimental Studies A.
Desktop Workload Analysis B. Benchmarking for Capacity PlanningIV.
Related WorkV. Conclusion and Future Work
3. Introduction
4. Introduction Traditional desktop delivery model Costly
Time-consuming procedures Security concerns Deskside supports
Desktop Virtualization is an emerging alternative. OS and
application reside at a remote data center Lightweight end-user
computer/device Lower management cost Improved data and application
security management
5. Introduction Cloud computing - an emerging paradigm whereby
services and computing resources are delivered to customers over
the Internet from a service provider who owns and operates the
cloud. Service models: IaaS SaaS PaaS Desktop as a Service (DaaS) :
a natural environment of virtual desktop paradigm whereby desktops
would be delivered as a service from a Desktop Cloud.
6. Introduction
7. Introduction Major contribution of the paper provides method
and transformation planning algorithm that: Accounts for realistic
scaling factors between application execution on legacy system and
execution on virtualized servers Provides validation mechanism
using benchmarking driven by realistic action sequences based on
workload analysis Allows for estimating networking needs and
effects of remoting protocol and network conditions on user
experience.
8. Transformation Planning for Desktop Clouds
9. Transformation Planning for Desktop Clouds Server to
CloudDesktops to Cloud Transformation Transformation Interactive
desktop User interactions with applications servers Desktop is
generally Transaction based with single-user aggregate user load
Unpredictable utilization Predictable resources requirement
requirements Users bursts of interatction, computing and think time
Similarity of the both transformation is Hardware Transparency
10. Transformation Planning for Desktop Clouds
11. Input: user profiling data and activities Process: analyze
Output: profiling of both system and user applications to determine
the key applications in terms of usage frequency and resource
requirements.
12. Capture and replay the completion event in a precise timing
Provides the necessary data to determine how resource utilization
and execution times will scale from one hardware platform to
another
13. Scaling data (3) and resource utilization data (2) are both
used by the cloud administrator
14. Uses the Knowledge and Models based rules (6) and Cloud
operator (4) to help guide allocation of user desktops to the
cloud. Output: a transformation plan
15. Provision and place the legacy desktop images onto hardware
within the desktop cloud (8)
16. Transformation Planning for Desktop Clouds Shared Server A
single operating system Provides shared services to many users
Virtualized Server Full administrative access Application libraries
required by less than limited amount of users Dedicated Server
Provide a dedicated 1-to-1 instantiation Additional resources
required such as heavy graphics processors for 3D rendering.
17. User Profiling - UPROF
18. User Profiling - UPROF User Profiling tool or agent running
on users desktops Gathers details for all processes in 10 second
interval Prototype version - Microsoft Windows Management Interface
(WMI) to obtain statistics of interests including: number, speed,
type and utilization of processors size and utilization of memory
size and utilization of local disks utilization of network
interfaces names, user/owner, command line arguments, utilization
of CPU, memory, network for all processes names, frequency,
resource utilities of applications
19. User Profiling UPROF (cont. ) Uploader: CURL HTTP Collects
data at all times the desktop is in operation, regardless of
network connection Data is stored and uploaded on a subsequence
attempt when connection is re-established Categorized data for
desired details Ex. Administrator, developer, business manager
20. Desktop Benchmarking DeskBench
21. Desktop Benchmarking - DeskBench DeskBench: an
implementation of the window manager software or an independent
layer between the application and the window manager library (as a
shim). The primitives that need to be intercepted and injected are
common throughout all major window managers both the open source
and proprietary.
22. Desktop Benchmarking DeskBench (Cont.) A tool capable of
replaying and timing previously recorded user actions (keyboard and
mouse events) Actions recorded are stored as Artifacts Artifact -
combination of playlist, a set of actions, can be played back with
directives included for controlling repetitions, random or fixed
think times, and random or sequential order. Two phases: Recording
Replaying
23. Desktop Benchmarking DeskBench (Cont.) Recording Phase All
events (mouse and keyboard), generated by window manager and passed
to application, arerecorded. A synchronization point - a screen
state that logically is a necessary point to reach before
proceeding with subsequent actions, or is a point that the tool
user wants to mark for measured execution time. Hash codes (MD5) of
the screen image buffer are recorded along with each
synchronization point to expect the completion of the corresponding
event element of the artifact being played.
24. Desktop Benchmarking DeskBench (Cont.) Replaying Phase
Processes each ordered event found in the artifact file and injects
into window manager.
25. Computing Resources Requirement for Virtualized System and
Desktop Placement
26. Computing Resources Requirement for Virtualized System and
Desktop Placement A method for calculating the proper capacity
planning using scaling factor for resource usage. Produces a ratio
of amount of the resource used by the same application executing in
the cloud and legacy desktop. The next step involves placing of
virtual desktops to servers in the cloud using standard techniques,
such as binpacking algorithm where item sizes correspond to
resource requirements of virtual desktops
27. Examples and Experimental Studies
28. Desktop Workload Analysis Desktop workload analysis gives
detailed view of activity on legacy systems. Various outputs from
UPROF tool. CPU utilization over the measurement period Large
cumulative CPU usage important cloud capacity planning
29. Desktop Workload Analysis CPU consumption when Critical for
finding peak application is loaded in usage application memory
30. Desktop Workload Analysis Read and write transfer rate of
the top application
31. Desktop Workload Analysis Scaling factors for resource
usage on legacy (IBM T42) and virtualized system (HS20 blade
running ESX 3.0 hypervisor) Windows XP WMP requires almost 3 times
more CPU resources on virtualized system
32. Desktop Workload Analysis Aggregate usage of resources for
a given user group In this example, workload of 9 workstations were
aggregated Time-series of aggregate CPU utilization for all
desktops
33. Desktop Workload Analysis Histograms of aggregate CPU usage
and memory usage accordingly Used as estimates of aggregate
resource consumption to be expected on a virtualized
environment
34. Desktop Workload Analysis aggregate disk write
transfers
35. Desktop Workload Analysis Resource usage due to a single
application across all of the users Provisioning shared services
environment
36. Benchmarking for Capacity Planning results of benchmarking
experiments for a set of typical applications Sensitive operations
to the concurrence the acceptable density of operations per core to
maintain a given responsiveness
37. Benchmarking for Capacity Planning Effects of latency on
responsiveness of rendering a picture Picture rendering is
significantly affected because it requires significant network
transfers. DeskBench can be used to estimate how far (in terms of
network latency and bandwidth) user terminals can be from the
virtualized servers to maintain desirable level of response
time
38. Related Work &Conclusion and Future Work
39. Related Work Cloud computing is a new architectural
approach designed to conceal complexities of the large scale
computer systems and provide users with easy to use, flexible, and
massively scalable services. Desktop cloud: an example of services
provided by cloud computing At the data center, techniques and
approaches used are: Various virtualization technologies Several
protocols to access remote desktops Shared same concept of relaying
the keyboard and mouse events to the server
40. Related Work Many approaches applicable to server
consolidation: Static heuristic-based vector bin-packing algorithm
Optimization algorithm based on the expected financial gains
Integrated resource management framework for QoS Allocation
algorithm minimizing the number of migrations Algorithm minimizing
the number of VM migrations Grid-based resource management
algorithm Theoretical algorithm for scheduling of tasks Con: Not
desktop consolidation Not consider application level statistics
Purely analyze without the use of benchmark component
41. Conclusion and Future Work A set of tools and an approach
in legacy desktops to desktop cloud transformation model:
Assessment of workload on legacy machines Benchmarking of target
virtualized environment Future Work: Research on automation of
actual transformation execution
42. Key References [10] Desktone, .Desktop as a Service,.
http://desktone.com/, 2008. [11] J. Rhee, A. Kochut, and K. Beaty,
.DeskBench: Flexible Virtual Desktop Benchmarking Toolkit,. to
appear in Integrated Management Symposium (IM), 2009.