So I got myself a VDI infrastructure based on VMware Horizon view. Planning or Design phase done, first implementing phase done. Depending on your why’s you are either in concept planning phase or testing before going to production. Good let’s introduce the next step in the project phases, planning for workload or testing the infrastructure for the right workload. But how do I measure if my architecture can be, or is, up to the right numbers….
For vSphere server testing we can use the IO analyzer fling or specific service/applications tools like sqlio, iometer, vscsistats, iozone, Citrix Edgesight for load testing (well till the end of the year as Citrix EOL is per 31 december 2013 ), website testing with Apache JMeter and so on. But VDI needs its own benchmarking.
For VMware Horizon View VDI infrastructure we have VMware View Planner as our designated tool for planning or benchmarking.
So what is VMware View Planner?
VMware View Planner is a tool designed to simulate a large-scale deployment of virtualized desktop systems. This is achieved by generating a workload to the infrastructure that is representative of (many) user-operations, from user or administrative point of view. Selection can be made from user actions that typically take place in a VDI environment or customs workloads can be added.
The VMware Planner can be downloaded as a virtual appliance (OVF template) from http://www.vmware.com/products/desktop_virtualization/view-planner/overview.html. There you will also find some documentation to get your environment up and running.
What testing can be done?
The test can be summarized in three categories:
- Workload generation; By configuring View Planner to simulate the desired number of users and configured applications, View Planner can accurately represent the load presented in a given VMware VDI deployment. Once the workload is running, resource usage can be measured at the servers, network, and storage infrastructure to determine if bottlenecks exist.
- Architectural comparisons; To determine the impact of a particular component of VDI architecture, you can configure a fixed load using View Planner and measure the latencies of administrative operations (provisioning, powering on virtual machines, and so on) and user operations (steady-state workload execution). Changing the component and measuring latencies again provides a comparison of the different options. A note, you will have to do some comparison of other architecture components (eg. hosts, storage, networking) configuration decisions to the View Planner workload to completely have a view of the impact.
- Scalability testing; The system load is increased gradually until a selected resource is experiencing contention or is exhausted. Resources measured include CPU, memory, and storage bandwidth.
There is more, as VDI deployments are organization specific (at least organizations have specific application landscapes) VMware View Planner allows for Custom Applications to be added.
View of predefined workloads:
So what is need, VMware View Planner Architecture.
Basically you need a VMware Horizion view environment where you deploy the VMware View Planner appliance.
I have taken the following model from the VMware website
- VMware View Planner Virtual Appliance. A Linux-based appliance virtual machine. This virtual appliance interacts. It runs a web server to present a web interface. The View Planner appliance interacts with a VMware vCenter View connection server or Virtual Center server to control desktop virtual machines. It also communicates with client virtual machines to initiate remote protocol connections.
- Harness. Part of the appliance, but such an important piece it needs to be mentioned on it’s own. The central piece in the View Planner architecture. The harness controls everything, from the management of participating desktop virtual machines (which can be scaled in thousands, up to 4000), to starting the defined or selected workloads, and collecting results back from these workloads. Results are storage in a database in the appliance. The harness provides monitoring the state through a web user interface.
- Web Interface; The graphic user interface to interact to the VMware View Planner appliance to setup the environment, set up the workloads, controlling the workloads and viewing the results.
- Workload; A predefined set of actions that can be custom build for your organization. The workloads can be sequenced in any way desired. Workloads typically have two possible categories to operate in: user and admin operations. User operations can include typing documents, browsing the web, reading or printing PDF documents, checking email, etc, etc. Admin operations can include provisioning virtual machines, cloning operations, powering servers on and off, etc. etc. etc.
Workloads are placed in sequences to better simulate a real user environment. An example of user workload sequence steps: starting with Excel (Open, compute, save, close, minimize, maximize, enter value), followed by Zip (Compress) and let’s play a Video (Open, Play, Close).
If your not going to stick to only local mode workloads, you will need interaction with Active Directory, vCenter, ESXi hosts and View Connection Server.
In my VMware Workstation 10 lab environment I have a Horizon View 5.2 environment with vSphere 5.1 hosts, and 5.1 Windows vCenter Server system. vCenter is running on Windows 2012 with a SQL Express DB. View components are running on Windows 2008 R2 server and also using the SQL Express instance. Not much is to expect from this environment but to walk through the deployment steps of VMware View Planner.
What will you need for resources? The appliance is configured with 1vCPU, 3GB vRAM and a circa 15GB for disk space. Can fit in any environment easily.
In this virtual infrastructure I add the VMware View Planner Appliance downloaded from the VMware web site. Deploying the OVF is straightforward. Just accept the agreement, select location and networking. Add the appliance to the current network and let it rip.
Connect to the console to setup use the provided scripts (see installation manual). The console can be accessed by the root vmware combo.
Change to the /root/ViewPlanner directory. Set the path for Python by running the command: source setup.sh
Configure the virtual machine’s static IP address and the corresponding settings by running the command: python ./harness_setup.pyc -i <ipaddr> -m <netmask> -g <gateway> -d <full-domainname> -n <dnsip1> [,<dnsip2>, …]
Replacing <ipaddr>, <netmask>, <gateway>, <full-domainname>, <dnsip1>, and (optionally) additional DNS addresses with appropriate values, including the static IP address and the fully-qualified domain name.
Fire up the view planner web interface (http://your fqdn you configured in the python harness setup)
and logon via user root and password: abc123.
Next setup view planner to your vCenter and AD DS.
Go back to Run & Reports to start setting up your profiles. First you will have to set some up, and when you have some saved you can return later and load them when you want to rerun them.
For VDI based on VMware products this is the tool to use in your planning phase to determine if your infrastructure is up to the challenge and can be easily scaled up when necessary. How are some architectural decisions going to influence your environment now and in the future, well find out with VMware View Planner.
You can also use it to test/benchmark current infrastructures or just implemented infrastructures, and test what they are capable of. With existing and operational systems (and concepts that are using shared components) stress testing influences your environment. So be careful of the consequences of your action. Main focus of this product is in the name: Plan!
As with projects, same goes with the planner, start small and scale when needed. Get the hang of it and try your use case scenario’s and see what results you can get before going out in an all war scenario (just fireup all sequences for 4K virtual desktops sergeant!).
– Enjoy your VDI VMware Horizon View planning!