Upload
amoseva
View
213
Download
0
Embed Size (px)
Citation preview
7/28/2019 XenDesktop With Login Consultants VSI V3 - Guide
1/12
WHITE PAPER | Citrix XenDesktop and Login VSI
www.citrix.com
Benchmarking Citrix XenDesktop
using Login Consultants VSI
Configuration Guide
7/28/2019 XenDesktop With Login Consultants VSI V3 - Guide
2/12
Page 2
Contents
Overview ............................................................................................................................................................. 3
Login VSI Installation ....................................................................................................................................... 3
Login VSI 3 Launcher Customizations .......................................................................................................... 4
Login VSI 3 Launcher Environment .............................................................................................................. 7
Virtual Desktop Environment ......................................................................................................................... 7
Troubleshooting ................................................................................................................................................. 8
Conclusion .......................................................................................................................................................... 8
Appendix: Example Python Script (WILauncher.py) ................................................................................. 9
7/28/2019 XenDesktop With Login Consultants VSI V3 - Guide
3/12
Page 3
Overview
As part of the XenDesktop implementation planning process, IT administrators may want to
execute scalability testing to establish target numbers for virtual desktop density and hardware
requirements. Citrix Consulting has utilized theLogin VSI toolto execute scalability testing for
XenDesktop. Login VSI is commonly referenced as a standard within the virtual desktop
community and was designed for benchmarking Server Based Computing (SBC) and Desktop
Virtualization (VDI) solutions including Citrix XenDesktop. The Login VSI tool consist of two key
components, the Login VSI Launcher and the Login VSI workload. The focus of this paper is to
provide guidance on utilizing the Login VSI Launcher in conjunction with a custom Python script to
launch simultaneous XenDesktop connections that simulate a large number of end-users accessing
the environment.
It should be noted that Citrix Consulting recommends leveraging Citrix EdgeSight for Load Testing
3.8 when performing scalability testing for XenDesktop 5. Guidance for utilizing EdgeSight for
Load Testing 3.8 with XenDesktop 5 and the Login VSI workload has been documented by CitrixConsulting with step-by-step instructions on theCitrix Knowledge Center. The EdgeSight for Load
Testing 3.8 tool is available to Citrix customers as part of XenDeskop 5 Platinum Edition and
provides a collective view of the performance metrics for all respective XenDesktop components,
but for IT Administrators who are looking to either execute scalability testing with XenDesktop 4
(EdgeSight for Load Testing is not supported with XenDesktop 4) or utilize the Login VSI tools
Launcher component with XenDesktop 5 must leverage a custom Python script to perform
scalability testing. This configuration guide provides step-by-step instructions for tailoring the
custom Python script for an individual XenDesktop environment and configuring the Login VSI
Launcher to execute that respective Python script.
Login VSI Installation
The high-level architecture of Login VSI consists of four major components:
1. Active Directory: An Active Directory domain controller is required for user accounts and
standard policies for accessing the virtual desktop.
2. VSI Share: The VSI file share is a central repository for the benchmarking tools
configurations and logging.
3. VSI Launcher: The VSI launcher operates in a master and slave relationship to initiate
simultaneous XenDesktop sessions. Multiple launchers are required to increase the number
of virtual desktop connections per test.
4. Target Machine: The target machine is defined as the XenDesktop virtual desktops where
the default user workload scripts are installed.
http://www.loginvsi.com/http://www.loginvsi.com/http://www.loginvsi.com/http://support.citrix.com/article/CTX129576http://support.citrix.com/article/CTX129576http://support.citrix.com/article/CTX129576http://support.citrix.com/article/CTX129576http://www.loginvsi.com/7/28/2019 XenDesktop With Login Consultants VSI V3 - Guide
4/12
Page 4
Please follow the VSI administrators guide located athttp://vsi.wikispaces.comfor detailed
instructions on installing and configuring the test environment with all the required VSI
components.
Login VSI 3 Launcher Customizations
Citrix developed a custom Python script to automate an Internet Explorer connection to the Citrix
Desktop Delivery Controller. The Python script populates the user credential fields of web
interface1 with the parameters specified in the script and automatically logs the simulated user into
the respective XenDesktop virtual desktop. This function coupled with VSI launchers ability to
execute multiple instances of the Python script supports the simultaneous launch of concurrent
XenDesktop sessions.
This section details the Login VSI launcher customizations required to launch simultaneous Citrix
XenDesktop sessions utilizing the custom Python script. After installing Login VSI according to the
Administrators Guide, follow the steps outlined in this section to integrate the Python script. Thecomplete Python script is available at the end of this document in theAppendixcan be downloaded.
Proper spacing and indentation is critically important for the Python script, so IT administrators
may prefer to start with the downloadable script.
Python Installation
A custom Python script is utilized along with the VSI Launchers to launch simultaneous
XenDesktop connections. Follow the steps outlined below to install Python on your launcher
workstation(s):
Install Python 2.6 on the root directory (C:\) from
http://www.python.org/download/releases/2.6.2 (filename: python-2.6.msi). The installer
will install Python into C:\Python26
Install the Python for Windows extension fromhttp://sourceforge.net/projects/pywin32/
into C:\Python26. (filename: pywin32-212.win32-py2.6.exe)
Copy the WILauncher.PYfile ino C:\Python26. (This is the python script example provided in
the Appendix.)
Download Pam 3.0 fromhttp://sourceforge.net/projects/pamie/. Unzip Pam 3.0 and placethe two files under C:\Python26\Lib\Site-Packages. (filename: pam3.0.zip contains 2 files,PAM30.py and winGuiAuto.py)
1This document contains specific details for XenDesktop 5 and Web Interface 5.4. The Python is designed for the
5.4 version of Web Interface and may not work with other versions.2
The steps in this document are only applicable to Python 2.6 and may not work with other versions of Python.
http://vsi.wikispaces.com/http://vsi.wikispaces.com/http://vsi.wikispaces.com/http://www.python.org/download/releases/2.6http://www.python.org/download/releases/2.6http://sourceforge.net/projects/pywin32/http://sourceforge.net/projects/pywin32/http://sourceforge.net/projects/pywin32/http://sourceforge.net/projects/pamie/http://sourceforge.net/projects/pamie/http://sourceforge.net/projects/pamie/http://sourceforge.net/projects/pamie/http://sourceforge.net/projects/pywin32/http://www.python.org/download/releases/2.6http://vsi.wikispaces.com/7/28/2019 XenDesktop With Login Consultants VSI V3 - Guide
5/12
Page 5
VSI Launcher Configurations
VSI launcher needs to be configured for the Custom with CSV option to utilize the Python script
that emulates an Internet Explorer connection. This can be configured as detailed below:
Within the Login VSI Launcher, click on Test Configuration.
Set the Connection type to Custom Commandline with CSV.
Set the Custom command line to be:
In the example above, all the entries are static except for the %CSV_User% parameter. This
parameter allows multiple simulated users to be specified in a separate CSV file. It should be
noted that in this example each user is utilizing the same password and domain, but this can
be customized in the CSV file (Reference the LoginVSI Admin Guide, Section 8.4.4 formore information). The path to the CSV file containing the user connection information is
required on the Test Configuration screen within Specify CSV file.
For the parameter %CSV_User%, the entries in the target CSV file should be as shown in
the Figure 1. The User is passed as the parameter %CSV_User% to the Python script and
the first username entered into web interface is Login_VSI1. Please note, the usernames
must be configured in Active Directory before being added to the CSV file.
To begin a test, the VSILauncher.exeneeds to be executed on one VSI Launcher workstation. Within
the VSILauncher.exetool as shown in Figure 2, the following parameters need to be configured:
Syntax:
Location of the Python Script Name of the Python Script XenDesktop DDC URL Test
username password Test Domain XenDesktop Group Name Delay
Example:
C:\python26\python.exe c:\python26\WILauncher.py http://DDC/citrix/desktopweb/
%CSV_User%Password! XDDomain XDGroup 20
Figure 1: Sample CSV
http://ddc/citrix/desktopweb/http://ddc/citrix/desktopweb/http://ddc/citrix/desktopweb/7/28/2019 XenDesktop With Login Consultants VSI V3 - Guide
6/12
Page 6
Figure 2: VSI Launcher Connection Configuration
Custom Command Line (as shown in Figure 2):
o Custom Commandline: Specify the Python script command (example command:
C:\python26\python.exe WILauncher.pyhttp://DDC/citrix/desktopweb/
%CSV_User%Password! XDDomain XDBWGroup 20)
o Specify CSV File: Specify the path to the UNC share and CSV filename (example
location: \\172.20.0.10\LoginVSIShare\LoginVSI1.csv)
http://ddc/citrix/desktopweb/http://ddc/citrix/desktopweb/http://ddc/citrix/desktopweb/http://ddc/citrix/desktopweb/7/28/2019 XenDesktop With Login Consultants VSI V3 - Guide
7/12
Page 7
Login VSI 3 Launcher Environment
Since Login VSI Launchers receive their configuration from the VSI Share, Citrix Provisioning
Services can be configured to rapidly provision multiple VSI Launchers. When preparing the golden
VSI Launcher image, ensure that the following configurations are in place:
Printer Policy: A XenDesktop policy should be created to not map the locally
connected printer, or all local printers have to be removed from the launcher.
Active Desktop Ratio: It is possible to overload the launcher system if it is running too
many active sessions. The session capacity is dependent on the launcher system
configuration. Citrix has successfully executed testing with a range of 20-40 sessions on a
single launcher. To accurately guage the ideal ratio of active sessions suitable for an
individual launcher, it is best to actively monitor the launchers to ensure that they
functioning properly and are not overloaded.
Virtual Desktop Environment
Before testing begins, there are some additional modifications that should be made to the virtual
desktop image to ensure that the VSI workloads can execute successfully. The following design
considerations are outlined in the Login VSI Admin Guide, but should be carefully reviewed when
utilizing Citrix Provisioning Services:
User Profiles: Each test user should be configured with a unique domain account. The
Login VSI Admin Guide recommends local profiles, but if the environment is utilizing
Citrix Provisioning Services to provide a shared desktop image for all virtual desktops,then the recommendation is to use roaming profiles. The roaming profile will be loaded
during each desktop launch, but the Provisioning Services vDisk will not require a local
profile for every user in the environment.
Page File and Write Cache: As stated in the Login VSI Admin Guide, it is best
practices to have the page file a fixed size and for it to be the same size as the memory
allocated to the virtual image. This will remove the need for the Page File to grow as
memory increases and reduce overhead. When utilizing Provisioning Services with a
client-side write cache, the write cache should be at least twice the size of the memory to
accommodate the fixed size of the page file. For example, if the RAM allocated to thevirtual machine is 2GB then the local Provisioning Services write cache should be at least
4GB and the page file should be set at a fixed size of 2GB.
7/28/2019 XenDesktop With Login Consultants VSI V3 - Guide
8/12
Page 8
Troubleshooting
When troubleshooting issues with the VSI Launcher or a workload execution failure, please
reference the Event Viewer on the respective component. During some of the test cycles, the
following workarounds were implemented when the noted issue was identified:
If an issue is reported in the Event Viewer regarding CDViewer.exe (ex. CDViewer has
encountered a problem and needs to close), the recommendation is to change the file
association for *.ica from CDViewer.exe to WFICA.exe to resolve the issue.
If the workload fails due to a printer issue, ensure that the BullZip printer is the default
printer within the virtual desktop. Office installs the XPS printer by default during the
Office installation, if the XPS printer is the default printer the workload will fail. The
recommendation is to remove the XPS printer.
Periodically the first login to Web Interface could take additional time to process. In aneffort to prevent it from affecting test results, it is recommended that a user login to Web
Interface manually once prior to starting the test cycle. Otherwise the potential delay could
create problems and skew results.
Conclusion
Citrix and Login Consultants have collaborated to provide IT administrators with a distinct
benchmarking tool such as Login VSI to use for evaluating Citrix XenDesktop. Login VSI allows
customers to easily perform benchmarking tests on their existing Citrix XenDesktop environment.
Overall, Login Consultants VSI provides customers a distinct opportunity to analyze CitrixXenDesktop performance based on their unique end-user requirements. For information regarding
custom Login VSI workflow development, please referenceLogin VSI. For more information
regarding XenDesktop deployment assistance, please contactCitrix Consulting.
http://www.loginvsi.com/http://www.loginvsi.com/http://www.loginvsi.com/http://www.citrix.com/English/SS/supportThird.asp?slID=4758&tlID=23664http://www.citrix.com/English/SS/supportThird.asp?slID=4758&tlID=23664http://www.citrix.com/English/SS/supportThird.asp?slID=4758&tlID=23664http://www.citrix.com/English/SS/supportThird.asp?slID=4758&tlID=23664http://www.loginvsi.com/7/28/2019 XenDesktop With Login Consultants VSI V3 - Guide
9/12
Page 9
Appendix: Example Python Script (WILauncher.py)
The following script is only provided as a reference and cannot be guaranteed to function with all
versions of Citrix Web Interface.It has been tested with LoginVSI 3 and XenDesktop 5 SP1. For a
more robust solution, Citrix recommends utilizing theWeb Interface SDKto build a custom
launcher . If using this example script as a starting point, copy it to the Python directory
(C:\python26) once Python is installed.
from distutils.core import setup
from PAM30 import PAMIE
import PAM30
import sys
import time
# Version 5.0 - 4/22/2011 Happy Earth Day!
#
# The delay parameter value must be less than the launch interval specified in LoginVSI#
if len(sys.argv) < 6:
print "Usage :: WILauncher.py baseURL username password domain DesktopGroup [delay]"
else:
baseURL = sys.argv[1]
username = sys.argv[2]
password = sys.argv[3]
domain = sys.argv[4]
DTGName = sys.argv[5]
print "Message: Launching IE"
ie = PAM30.PAMIE()
print "Message: Navigating to " + baseURL + "auth/login.aspx"
ie.navigate(baseURL + "auth/login.aspx")
loop = 10
while loop > 0 and not ie.textBoxExists("user"):
print "Message: Page not loaded yet..."
ie._wait()
time.sleep(1)
loop = loop - 1
if ie.textBoxExists("user"):print "Message: Setting TextBox 'user'"
ie.setTextBox("user", username)
else:
print "Message: Did not find TextBox 'user'"
sys.exit(-1)
http://community.citrix.com/display/xa/Web+Interface+SDKhttp://community.citrix.com/display/xa/Web+Interface+SDKhttp://community.citrix.com/display/xa/Web+Interface+SDKhttp://community.citrix.com/display/xa/Web+Interface+SDK7/28/2019 XenDesktop With Login Consultants VSI V3 - Guide
10/12
Page 10
if ie.textBoxExists("password"):
print "Message: Setting TextBox 'password'"
ie.setTextBox("password", password)
else:print "Message: Did not find TextBox 'password'"
sys.exit(-2)
if ie.textBoxExists("domain"):
print "Message: Setting TextBox 'domain'"
ie.setTextBox("domain", domain)
else:
print "Message: Did not find TextBox 'domain'"
if ie.linkExists("Log On"):
print "Message: 'Log On' Link found! Clicking..."ie.clickLink ("Log On")
elif ie.buttonExists("Log On"):
print "Message: 'Log On' Button found! Clicking..."
ie.buttonClick("Log On")
else:
print "Message: Failed to find a 'Log On' Button or Link"
sys.exit(-4)
loop = 10
while loop > 0 and not ie.linkExists(DTGName):
print "Message: Page not loaded yet..."ie._wait()
time.sleep(1)
loop = loop - 1
if ie.linkExists(DTGName):
print "Message: Desktop group '"+DTGName+"' found! Clicking..."
ie.clickLink (DTGName)
else:
print "Message: Failed to find desktop group '"+DTGName+"'"
sys.exit(-5)
if len(sys.argv) > 6:
print "Message: Sleeping for " + sys.argv[6] + " seconds"
time.sleep(int(sys.argv[6]))
7/28/2019 XenDesktop With Login Consultants VSI V3 - Guide
11/12
Page 11
if ie.linkExists("Log Off"):
print "Message: 'Log Off' Link found! Clicking..."
ie.clickLink ("Log Off")
elif ie.buttonExists("Log Off"):
print "Message: 'Log Off' Button found! Clicking..."
ie.buttonClick("Log Off")
else:
print "Message: Failed to find a 'Log Off' Button or Link"
sys.exit(-6)
print "Message: Closing IE"
ie.quit()
7/28/2019 XenDesktop With Login Consultants VSI V3 - Guide
12/12
Page 12
Product Versions
Product Version
XenDesktop 4.0, 5.0 SP 1
Web Interface 5.4
Revision HistoryRevision Change Description Updated By Date
0.1 Final Version Bhumik Patel April 2, 20100.2 Updates Carisa Stringer June15, 20100.3 Additional Updates Carisa Stringer July 13, 20100.4 Updates for LoginVSI 3 Benn Schreiber May 2, 2010
About Citrix
Citrix Systems, Inc. (NASDAQ:CTXS) is the leading provider of virtualization, networking and software as a service
technologies for more than 230,000 organizations worldwide. Its Citrix Delivery Center, Citrix Cloud Center (C3)
and Citrix Online Services product families radically simplify computing for millions of users, delivering applications
as an on-demand service to any user, in any location on any device. Citrix customers include the worlds largest
Internet companies, 99 percent of Fortune Global 500 enterprises, and hundreds of thousands of small businesses
and prosumers worldwide. Citrix partners with over 10,000 companies worldwide in more than 100 countries.
Founded in 1989, annual revenue in 2010 was $1.9 billion.
2011 Citrix Systems, Inc. All rights reserved. Citrix, Access Gateway, Branch Repeater, Citrix Repeater,
HDX, XenServer, XenApp, XenDesktop and Citrix Delivery Center are trademarks of Citrix Systems, Inc.
and/or one or more of its subsidiaries, and may be registered in the United States Patent and Trademark Office
and in other countries. All other trademarks and registered trademarks are property of their respective owners.