Daniele Tosatto

Application delivery and virtualization news

Browsing Posts in Citrix

It’s easy to run a local installed application isolated. WhyI should run applications isolated and last but not leased what is the impact of running a local application isolated?
Let’s start with an application Citrix is using that way: Internet Explorer. When Application Streaming is used to run an Internet Explorer Add-on, it does exactly what I want to do: Running a local installed Internet Explorer isolated to make the add-on available for the user.
So the question is now, are there other applications where you want to run an add-on isolated/streamed. Yes there are! The first time I run into that question, was the day I isolated 7-Zip. It is an easy task to profile 7-Zip, but because Explorer is not “aware” of the streamed “zip utility” the explorer context menu does not contain the 7-Zip Add-on.

But if you run Explorer isolated the context menu contains the 7-Zip extensions. Now there is the question. How can I run Explorer inside an isolation environment of a streamed application?
Simply by “calling” Explorer or any other installed executable from inside the isolation. There are many ways to do so: I like to do everything possible inside the Citrix Profiler, so I created a run_Explorer.cmd file, but you can also define a start script starting explorer (with option /e,). The cmd script I added to the target and also defined it as an application shortcut.
Now 7-Zip is shown in the context menu of Explorer.

As a side effect now the 7-Zip installation files are “visible” to Explorer. If you need details on how to do it step by step look here: Blog from Joseph Nord: AIE on Desktop and AIE via App Streaming

Now it looks like everything is done. Isn’t it? No it is not. Running Explorer locally has a lot more impact: When using Explorer you change settings, you create files, copy files and all this tasks are running isolated, controlled by the Isolation rules.
So the last thing you have to do is consider in which way the isolation rules impacts the application behavior and how to change them.

The following registry changes are recommended for all deployment scenarios and would almost always be desirable in a Windows 7 hosted VM-based VDI desktop implementation:

Configuration Optimizer Registry Modification (in REG format)
Disable Last Access Timestamp Yes [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\FileSystem] “NtfsDisableLastAccessUpdate”=dword:00000001
Disable Large Send Offload No [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\BNNS\Parameters]
“EnableOffload”=dword:00000000
Disable TCP/IP Offload No [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters]
“DisableTaskOffload”=dword:00000001
Increase Service Startup Timeout No [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control] “ServicesPipeTimeout”=dword:0002bf20
Hide Hard Error Messages No [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Windows] “ErrorMode”=dword:00000002
Disable CIFS Change Notifications No [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\Explorer]
“NoRemoteRecursiveEvents”=dword:00000001
Disable Logon Screensaver No [HKEY_USERS\.DEFAULT\Control Panel\Desktop]
“ScreenSaveActive”=”0″

Note: The Optimizer column indicates whether this registry change is included in the XenConvert Optimizer tool that is installed with the Provisioning Services target device software.

Standard Mode Recommended Configurations

The next set of registry changes are recommended for images deployed using standard mode vDisk images with Citrix Provisioning services. Standard mode images are unique in that they are restored to the original state at each reboot, deleting any newly written or modified data. In this scenario, certain processes are no longer efficient. These configurations may also apply when deploying persistent images and in many cases should be implemented in addition to the changes recommended in the preceding section.

Configuration Optimizer Registry Modification (in REG format)
Disable Clear Page File at Shutdown Yes HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management]
“ClearPageFileAtShutdown”=dword:00000000
Disable Offline Files Yes [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\NetCache]
“Enabled”=dword:00000000
Disable Background Defragmentation Yes [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Dfrg\BootOptimizeFunction] “Enable”=”N”
Disable Background Layout Service Yes [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\OptimalLayout]
“EnableAutoLayout”=dword:00000000
Disable Bug Check Memory Dump Yes [HKLM\SYSTEM\CurrentControlSet\Control\CrashControl]
“CrashDumpEnabled”=dword:00000000
“LogEvent”=dword:00000000″
SendAlert”=dword:00000000
Disable System Restore Yes [Software\Policies\Microsoft\Windows NT\SystemRestore] “DisableSR”=dword:00000001
Disable Hibernation Yes [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Power] “Heuristics”=hex:05,00,00,00,00,01,00,00,00,00,00,00,00,00,00,00,3f,42,0f,00
Disable Memory Dumps Yes [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\CrashControl] “CrashDumpEnabled”=dword:00000000 “LogEvent”=dword:00000000 “SendAlert”=dword:00000000
Disable Mach. Acct. Password Changes Yes [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Netlogon\Parameters]
“DisablePasswordChange”=dword:00000001
Redirect Event Logs No Set appropriate path based on environment.HKLM\SYSTEM\CurrentControlSet\Services\Eventlog\Application]
“File”=”D:\EventLogs\Application.evtx”

[HKLM\SYSTEM\CurrentControlSet\Services\Eventlog\Security]
“File”=”D:\EventLogs\Security.evtx”

[HKLM\SYSTEM\CurrentControlSet\Services\Eventlog\System]
“File”=”D:\EventLogs\System.evtx”

Reduce Event Log Size to 64K Yes HKLM\SYSTEM\CurrentControlSet\Services\Eventlog\Application]
“MaxSize”=dword:00010000
[HKLM\SYSTEM\CurrentControlSet\Services\Eventlog\Security]
“MaxSize”=dword:00010000

[HKLM\SYSTEM\CurrentControlSet\Services\Eventlog\System]
“MaxSize”=dword:00010000

Optional Configurations

This last set of machine-based registry changes is optional regardless of whether the image is deployed as a persistent or standard image. In many cases, the following configurations should be implemented; however, these configurations should be analyzed for suitability to each unique environment.

Configuration Justification Registry Modification (in REG format)
Disable Move to Recycle Bin Although the recycle bin will be deleted on subsequent reboots, disabling this service altogether might pose a risk in that users will not be able to recover files during their session. Although this setting is part of the optimizer, it might be advantageous to not disable the Recycle Bin. [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\BitBucket]
“UseGlobalSettings”=dword:00000001
“NukeOnDelete”=dword:00000001

Note: These are only recommendations. You should implement these at your own risk

Remember, you can stay current with this and other Windows 7 virtual desktop recommendations via the Virtualize My Desktop – Windows 7 site.

Administration has changed quite a bit in XenApp 6. Not only have a few Citrix-related policies have been added or modified, but there are new options for administration. Citrix policies are now based on user or computer policies, and they can be administered as Active Directory GPOs. That combined with Worker Groups based on OUs may initially seem complex but really can mean much more efficient administration of your XenApp servers via Active Directory—if you understand your options.

First, let’s take a look at the options that are available for administration of Citrix computer policies based on the Citrix recommended preference order:

Worker Groups can be based on OUs, Server Group Accounts, or Farm Servers. Essentially, it is a grouping of servers that will take on the same characteristics, and each server can belong to one or more worker groups. If OUs are used as the basis for Worker Groups, servers that are added or deleted from OUs automatically take on the characteristics of a specific Worker Group. Please see CTX124481 for more information about Worker Groups.

Where possible, Citrix recommends administering XenApp 6 via Active Directory using the Group Policy Management Console; it is installed by default with XenApp 6 for this purpose. However, the administrator must have administrative rights to the OUs that house the Citrix servers. Please see XenApp 6 Policies and Group Policy Integration for more information about XenApp 6 policies.

To take it one step further, when Citrix Provisioning services is used to create new XenApp servers, these can automatically be assigned to an OU. If published applications and Citrix policies are configured based on Worker Groups and Worker Groups are based on OUs, administration is greatly simplified. Let’s walk through that flow:
• New server gets provisioned via Citrix Provisioning services; it is automatically assigned to an OU
• The server automatically inherits characteristics based on the Worker Group designation, including published applications and Citrix policies

Thus, the only process initiated was the provisioning of the new XenApp server. If the applications are embedded in the XenApp image or automatically streamed, the server is now functional.

Additionally, an administrator should:
• Apply the correct load evaluator (newly installed server defaults to the default load evaluator)
• Move the server to a different zone if required
That’s it!

Citrix does not recommend mixing administration methods. A mix-and-match approach can cause undesired results because the policies are applied from different sources and may overwrite in ways not intentioned. It’s kind of like three business partners having access to a bank account and no one looks at the balance before making a withdrawal—the results may not be good.

As an example, if you import policies via the XenApp 6 Migration Tool, those policies are written into the IMA Data Store. If you plan to administer your new XenApp 6 farm by means of Active Directory, you’d have policies in two repositories, i.e., AD GPO and IMA Data Store. Keeping in mind that Citrix policies are applied based on hierarchy – i.e., the precedence order is child OU; parent OU; subsequent parent OU; Domain; Site; IMA; Local – having policies in more than one place may produce results other than what you had intentioned. If you want to streamline the imported Migration Tool policies into an AD GPO, additional steps are required. Look for an upcoming blog from Juliano Maldaner that explains this.

XenApp 6 provides multiple options for administration. If unsure as to which is best and you have administrative rights to Active Directory for OUs that house the XenApp servers, use the Group Policy Management Console. Nonetheless, make a decision initially as to how you will administer your XenApp farm and then continue to use that method.

Citrix Support have been developing tools to help troubleshooting your Citrix environments for many years now. Below you will find the full list of tools available from Citrix Support along with links to useful resources.

Troubleshooting Tool Name Download Link Overview & Demo Video
UPM Log Parser Tool CTX123005 CitrixTV Video
CDFMarker Tool CTX124577 CitrixTV Video
SsOnExpert Tool CTX124918 CitrixTV Video
XDPing Tool CTX123278 CitrixTV Video
Logoff Sessions Tool CTX124949 CitrixTV Video
Quick Launch Tool CTX122536 CitrixTV Video
MedEvac Tool CTX107935 CitrixTV Video
Printing Tool CTX122962 CitrixTV Video
XenApp 6 Migration Tool CTX125471 CitrixTV Video
CDFAnalyzer Tool CTX122741
CDFControl Tool CTX111961
ICA File Creator Tool CTX113472
License Path Utility Tool CTX111344
Port Check Utility Tool CTX122450
Profiler Template for SQL 2000 Tool CTX120629
Profiler Template for SQL 2005 Tool CTX120630
XenAppPrep Integration Utility for XenApp and PVS Tool CTX116063
Citrix UPM Log Parser CTX123005
Client IP Extraction Module – ISAPI – for use with NetScaler CTX119347
CTX_SmaUser Re-creation Tool CTX117330
CtxCPMDiag – For Password Manager Agent CTX124811
CtxHideEx32 CTX110341
CTXReports CTX119955
CtxsLicChk – Citrix License Check Utility CTX123935
DSCHECK – XenApp Data Store Checker Tool Commands CTX124406
DSCHECK Version 5.15 CTX117329
DSInfo 1.2 CTX114916
DSRepCheck – SQL Replication Test Tool – For XenApp 6 CTX124815
DSView CTX106232
EdgeSight Database Size Estimation Tool CTX122146
EdgeSight Load Testing XenApp Using Office 2007 CTX122568
Enabling Remote Installation for Citrix Receiver CTX121355
Endpoint Analysis Antivirus Scan Package Autoupdate Scripts CTX111343
FTACLN CTX106280
HDX Experience Monitor for XenDesktop CTX123058
Health Monitoring and Recovery Test Pack CTX123197
JetTest CTX116532
LBDiag – XenApp 6 Load Balancing Diagnostic Tool CTX124446
MFCOM to Powershell Script Searcher CTX125089
MigrateToSqlExpress CTX118693
NetScaler CPU tight-loop (LCT) monitor CTX121569
NetScaler CPU Usage Conditional Profiler CTX121568
Nsconmsg to Excel Tool CTX122317
PDBFinder for 32-bit and 64-bit Platforms CTX110629
Print Detective CTX116474
QueryDC CTX106317
SQL Replication Test Tool Version 4.2 CTX111656
SysPool Tool CTX122204
SystemDump 3.1 for 32-bit and 64-bit platforms CTX111072
TSUserLog CTX114179
Wireshark for Netscaler CTX122318
XenApp Console Discovery Repair CTX124805
XenApp Template for BGInfo CTX121339
XenDesktop 4 Client Identity Pack CTX124963
XenDesktop Client Identity Utilities CTX120323
XenDesktop Session Parser CTX124012
XenDesktop VDA Farm Changer CTX124379
XenServer Database Tool CTX121564
XenServer Workload Balancing Administration Tool CTX125365
StressPrinters 1.3.2 for 32-bit and 64-bit Platforms CTX109374
MessageHistory 2.0 for 32-bit and 64-bit platforms CTX111068
WindowHistory 4.0 for 32-bit platforms CTX106985
ScreenHistory 1.0 for 32-bit and 64-bit platforms CTX113046
Repair Clipboard Chain 2.0.1 CTX106226
WindowHistory64 4.0 for x64 platforms CTX109235
WindowHistory Mobile Version 2.2 CTX110775
TestDefaultDebugger v1.0 for 32-bit and 64-bit platforms CTX111901
ADSCleaner 2.0 CTX108542
ProcessHistory v1.1 for 32-bit and 64-bit platforms CTX111408
Citrix DumpCheck Explorer Extension version 1.4 CTX108825
Citrix DumpCheck Utility (Command Line) version 1.4 CTX108890

Citrix Support published Top 10 Technical articles for June 2010.

Find below the Citrix Knowledge Center Top 10.

Top 10 Technical Articles

Article Number Article Title
CTX238200 Troubleshooting Client Drive Mapping
CTX368624 Troubleshooting Citrix Pass-through Authentication (Single Sign-On)
CTX711855 Common SSL Error Messages, and Respective Cause and Resolution
CTX101644 Seamless Configuration Settings
CTX106531 Troubleshooting the Citrix XTE Service and Errors: There is no route to the specified address … Protocol Driver Error
CTX107572 Troubleshooting Tools for Citrix Environments
CTX677542 Advanced Concepts – Farm Maintenance
CTX106192 Access Gateway Software Updates
CTX564283 Troubleshooting 1003 and 1004 Terminal Server Licensing Errors
CTX746354 Best Practices for Uninstalling Presentation Server

Top 10 Whitepapers

Article Number Article Title
CTX110351 User Profile Best Practices for MetaFrame Presentation Server
CTX124565 Best Practices: Customizing Microsoft Office 2010 for Streaming Environments
CTX117913 Technical Guide for Upgrading / Migrating to XenApp 5.0
CTX101997 Citrix Secure Gateway Secure Ticket Authority Frequently Asked Questions
CTX101739 Microsoft SQL Server 2000 Data Store Replication
CTX124087 XenDesktop Modular Reference Architecture
CTX125351 XenClient Express Proof of Concept Implementation Guide
CTX119036 User Profile Manager Deployment Best Practices
CTX123684 Delivering 5000 Desktops with Citrix XenDesktop 4
CTX125060 Best Practices for Optimizing HDX Technologies for XenDesktop 4

Top 10 Hotfixes

Article Number Article Title
CTX122756 Hotfix Rollup Pack 6 for Citrix XenApp 5.0 and Citrix Presentation Server 4.5 for Microsoft Windows Server 2003 32-bit Edition
CTX116550 Citrix Presentation Server Client 10.200 for Windows
CTX125235 Citrix Online Plug-in 12.0.3 for Windows
CTX120923 Hotfix Rollup Pack 5 for Citrix XenApp 5.0 and Citrix Presentation Server 4.5 for Microsoft Windows Server 2003 32-bit Edition
CTX122761 Hotfix Rollup Pack 6 for Citrix XenApp 5.0 and Citrix Presentation Server 4.5 for Microsoft Windows Server 2003 64-bit Edition
CTX118445 Citrix XenApp Plug-in for Hosted Apps 11.0 and Streamed Apps 1.2 for Windows
CTX109307 Hotfix Rollup Pack PSE400W2K3R02 – For Citrix Presentation Server 4.0, Citrix Access Essentials 1.0 and 1.5 for Windows Server 2003
CTX119069 Hotfix Rollup Pack 4 for Citrix XenApp 5.0 and Citrix Presentation Server 4.5 for Microsoft Windows Server 2003 32-bit Edition
CTX125057 Citrix Online Plug-in 11.2.38 for Windows with HDX Flash Redirection Enhancements
CTX122248 Access Gateway Enterprise Edition 9.1, Maintenance Build 103.9

Top 10 Presentations

Article Number Article Title
CTX125175 TechEdge 2010 – Debugging a Citrix XenApp and XenDesktop Environment
CTX111920 Selected Citrix Troubleshooting Tools
CTX125180 Troubleshooting XenDesktop, Provisioning Services & XenServer Integration
CTX105908 Get the Most Out of Your Resource Manager Summary Database
CTX111560 Health Checks for Citrix Services Using Advanced Monitors
CTX123530 XenDesktop 4.0 Core Infrastructure and Features – GoToWebinar
CTX125177 TechEdge 2010 – Troubleshooting XenDesktop Deployments
CTX125181 TechEdge 2010 – Troubleshooting Performance Issues in a Virtualized Environment
CTX121117 Troubleshooting Tools and Methodology for Citrix XenApp 5 Environment
CTX119104 TechEdge 2008 – Troubleshooting Tools for a XenApp Environment

Top 10 Tools

Article Number Article Title
CTX122536 Citrix Quick Launch
CTX106226 Repair Clipboard Chain 2.0.1
CTX111961 CDFControl
CTX116063 XenAppPrep Integration Utility for XenApp and Provisioning Services
CTX113472 Citrix ICA File Creator
CTX109374 StressPrinters 1.3.2 for 32-bit and 64-bit Platforms
CTX122962 Citrix Printing Tool
CTX113554 CTX_CpsvcUser Re-creation Tool for 32-Bit and 64-Bit Versions of Presentation Server 4.5
CTX107136 Citrix Connection Test Tool
CTX107935 MedEvac 2.5

Keeping track of the technical details of Citrix and Microsoft products can be confusing, but when was the last time you took stock of licensing? While organizations strive to be in legal compliance, that can be a complex task.

The most direct way to ensure compliance is to read through the End User Licensing Agreement (EULA) of every product that you install and to maintain detailed records. Realistically, how many administrators routinely click “I Accept” vs. those that read through the entire EULA . . . that’s what I thought.

E = Enterprise edition
P = Platinum edition
**XenDesktop Enterprise or Platinum licensing required when XenApp infrastructure used to implement App-V to XenDesktop.

Citrix and Microsoft licensing was covered as part of the Application Delivery Options for XenApp and/or XenDesktopTechtalk that I delivered a few weeks ago because licensing is certainly one of the technical considerations when deciding exactly how applications should be made available to users. Of course, you must license the operating system from Microsoft and comply with vendor application licensing. But there’s more to it when it comes to licensing for XenApp, XenDesktop, and/or App-V functionality.

Of course, XenDesktop Enterprise and Platinum licensing incorporates the respective edition of XenApp. Bottom line is that if you have XenDesktop Platinum licensing, you get all of the listed Citrix technologies.

Okay, what about Microsoft licensing? Just when you thought you understood it, there are a number of changes coming on July 1st. What you previously knew as VECD licensing doesn’t exist anymore. And there’s more . . .

The table above gives you a high-level overview of Microsoft licensing. A few notable items:
• SA or VDA licensing is required for the endpoint. The difference is whether the endpoint is a Windows-based device or a non-Windows-based device.
• Terminal Services/Remote Desktop Services Client Access Licenses include App-V to XenApp servers. However, where App-V will be used on virtual or physical desktops, additional licensing is required.

For more information on Microsoft licensing, please see:
http://download.microsoft.com/download/5/0/5/5059CBF7-F736-4D1E-BF90-C28DADA181C5/Microsoft%20VDI%20and%20Windows%20VDA%20FAQ%20v2%200.pdf
http://download.microsoft.com/download/C/6/7/C673E444-6DDD-40B8-B29F-625354F2A8F7/Licensing_Windows_for_Virtual_Desktops_Whitepaper.pdf
http://blogs.technet.com/b/yungchou/archive/2010/06/11/microsoft-vdi-licensing-primer.aspx

Have you heard of the XenApp 6 Migration Tool?

http://support.citrix.com/article/ctx125471
You can use the the cmdlets to move XenApp settings from a legacy XenApp 5 server farm and move them to a new XenApp 6 farm.
Below are the requirements, and available cmdlets you can use for migrating:
Requirements and Install:
http://support.citrix.com/proddocs/index.jsp?topic=/xenapp-w2k8-migrating/ps-migrate-xa6-requirements-install.html

  • .NET Framework 3.5 SP1
  • MSI 3.0
  • PowerShell 2.0

How To Use:

http://support.citrix.com/proddocs/index.jsp?topic=/xenapp-w2k8-migrating/ps-migrate-xa6-using-cmdlets.html

CMDLETS:

(For complete PowerShell syntax, type Get-Help cmdlet)

http://support.citrix.com/proddocs/index.jsp?topic=/xenapp-w2k8-migrating/ps-migrate-xa6-cmdlet-ref.html

Cmdlet

Description

Add-XAServerMapping Adds a server mapping.
Add-XASettingOverride Specifies a value for an object property.
Get-XALegacySettingName Outputs the settings you can use with the Add-XASettingOverride cmdlet.
Get-XAMigrationObjectCount Outputs a count of objects in the legacy and new farms.
Get-XAMigrationOption Outputs the list of migration options.
Get-XAServerMapping Outputs the list of server mappings.
Get-XASettingOverride Outputs the list of object property value overrides.
Remove-XAServerMapping Removes a server mapping.
Remove-XASettingOverride Removes an object property value override.
Set-XAMigrationOption Sets migration options.
Start-XAMigration Starts the migration.

ADVANCED CDMLETS:

http://support.citrix.com/proddocs/index.jsp?topic=/xenapp-w2k8-migrating/ps-migrate-xa6-advanced.html

-        Get-XALegacyAdministrator
-        Get-XALegacyApplication
-        Get-XALegacyFarmConfiguration
-        Get-XALegacyFolder
-        Get-XALegacyHmrTest
-        Get-XALegacyLoadEvaluator
-        Get-XALegacyPolicy
-        Get-XALegacyPolicyConfiguration
-        Get-XALegacyPolicyFilter
-        Get-XALegacyServer
-        Get-XALegacyServerConfiguration
-        Get-XALegacySessionPrinter
-        Convert-XALegacyObject
-        New-XALegacyConnection
-        Remove-XALegacyConnection

If you were asked what desktop resources your needed how would you answer? If you ask me what type of desktop I need, I’m going to say, 2+ cores with at least 4+ GB of RAM, 500+GB hard drive, etc. If you look at what I really need, you will see 1 core and maybe 2-3 GB of RAM. In fact, when I look at my resource consumption, I get close to 2.5 GB of RAM by the end of the day due to the number of applications I have running, memory leaks in some of my applications, and applications not freeing up memory when closed.

Like me, many users only consume a fraction of their total potential desktop computing power, which makes desktop virtualization extremely attractive. By sharing the resources between all users, the overall amount of required resources is reduced. However, there is a fine line between maximizing the number of users a single server can support and providing the user with a good virtual desktop computing experience.
Improperly allocating resources to the virtual desktops is the 7th most common mistake make. Other mistakes, discussed previously, include:

10. Not calculating user bandwidth requirements

9.   Not considering the user profile

8.   Lack of Application Virtualization Strategy

One of the lessons we learned from virtual desktop implementations is trying to push the hypervisor, any hypervisor, too hard results in a poor user experience. The following recommendations help optimizing the environment by focusing on the hypervisor:

Parameter Hypervisor Description
CPU Allocation Citrix XenServer
Microsoft Hyper-V
VMware vSphere
Users should start with a single vCPU and be granted a second if needed due to the following:

  • Most user-based applications are only single-threaded and will not benefit from a multiple CPU configuration.
  • Many user applications do not require significant amounts of processing, which negates the need for more CPU power.
  • By allocating multiple vCPUs for each virtual desktop, extra resources are required to switch requests across the different cores.
Command Tuning Citrix XenServer
Microsoft Hyper-V
VMware vSphere
The XenDesktop controller sends low-level commands to the hypervisor layer to perform tasks on the virtual machines (start, stop, reboot, etc). If too many tasks are sent out simultaneously, the connection to the hypervisor layer can become sporadic. These tasks often have a large impact on the server resources, which impacts the users. It is advisable to throttle the number of commands sent
Transparent Page Sharing VMware vSphere Transparent Page Sharing allows the vSphere hypervisor to share portions of memory that are identical between virtual machines. This has the potential to improve the virtual desktop performance by having a positive impact on memory consumption.This feature will typically only provide value in older operating systems, like Windows XP and Windows Server 2003, which have 4KB memory pages.  Newer operation systems, like Windows 7 and Windows Server 2008, have large memory pages (2MB) by default. The larger memory pages makes the likelihood of finding exact duplicates of memory very difficult.
Memory Ballooning
Memory Overcommit
VMware vSphere
Note: XenServer and Hyper-V support for dynamic memory is new. It is assumed the results will be similar, but testing is required.
Memory ballooning or memory overcommit shifts RAM dynamically from idle virtual machines to active workloads. Memory ballooning artificially induces memory pressure within idle virtual machines, forcing them give back memory so other virtual machines can consume it (each hypervisor does it differently but the overall concepts are similar).
In practical applications, this has shown to be an impediment to positive user experiences. Forcing virtual desktops to free up memory is only a temporary solution. If a large group of idle or low-usage virtual desktops become active (after lunch, for example), they will require more memory. But if many of the virtual desktops on the same hypervisor are experiencing increased loads, where will the extra memory come from? With no free memory, the hypervisor is forced to page to disk, which is slow.
A desktop is not a server. A desktop is running desktop applications which often have more memory leaks and poor cleanup processes when compared to server applications. Most desktops consume more memory as the day progresses due to these leaks, which will put strain on any overcommit feature. It is advisable to disable this feature.

This article describes how to install Citrix Receiver 11.1 on Ubuntu.

Requirements

Ubuntu, Citrix Receiver 11.1, OpenMotif 2.3.1

Background

Citrix Receiver 11.1 for Ubuntu (Debian) requires OpenMotif 2.3.1 or greater if you plan to use the GUI for connections. The procedure below installs OpenMotif and Citrix Receiver 11.1.

If you do not require the GUI and only plan to use Web Interface, you do not have to install OpenMotif.

Procedure

The steps to complete the task are as follows:

Installing Citrix Receiver 11.1 on Ubuntu

Prerequisites

Citrix Receiver for Linux v11.1 requires OpenMotif v2.3.1 or greater to use the Graphical User Interface (Custom ICA Connections and PNAgent).

OpenMotiv 2.3.1 is not available as a Ubuntu (Debian) Package at the time of this writing. The current version available using the APT package manager is 2.2.3-4.

The first step in this configuration is to install OpenMotif 2.3.1.

Download OpenMotif 2.3.1. You can find this in the download section of motifzone.net. http://www.motifzone.net/filebrowser/openmotif/2.3/2.3.1

You can install OpenMotif 2.3.x by converting the RPM pack to DEB using Alien. Alien is a program that converts between Red Hat RPM, Debian DEB, Stampede SLP, Slackware TGZ, and Solaris PKG formats. The first method described in this article will convert the RPM package to a DEB package.

  1. Install OpenMotif 2.3.1.
  2. Convert RPM to DEB:
    a. Download the RPM package from the website.

    http://www.motifzone.net/files/public_downloads/openmotif/2.3/2.3.3/openmotif-2.3.3-1.el5.3.i386.rpm

    b. Install Alien if not already installed:
    sudo apt-get install alien

    c. Convert RPM to DEB:
    sudo alien –d openmotif-2.3.3-1.el5.3.i386.rpm

    d. Install the DEB Package:
    sudo dpkg –i openmotif-2.3.3-2_i386.db

  3. Install using Ubuntu/Debian package:
    You can still technically install libmotif3 using the Ubuntu/Debian package manager and create a symbolic link to the required libraries.
    sudo apt-get install libmotif3
    sudo ln –s /usr/lib/libXm.so.3.0.2 /usr/lib/libXm.so.4
  4. Install the ICA Client.
    Download the Receiver from the Citrix website at:

    http://www.citrix.com/English/ss/downloads/details.asp?downloadId=3323&productId=186&c1=sot2755

    There are two ways to install: from the DEB package or from source.

    Install from DEB package:
    dpkg –i ica_client_11.100_i386.patched.deb

    Accept the EULA. Citrix Receiver is now available from the Application Menu under Internet or can be launched from the terminal window: /usr/lib/ICAClient/wfcmgr

    Install from source:
    a. Download the tar.gz file from the Downloads section of the Citrix website.

    http://www.citrix.com/English/ss/downloads/details.asp?downloadId=3323&productId=186&c1=sot2755#top

    b. Extract the files:
    tar –xzvf linuxx86-11.100-158406.tar.gz

    c. Run the setup script as Super User to install for all users and follow the prompts:
    sudo ./setupwfc

Select a setup option:

1. Install Citrix Receiver for Linux 11.100
2. Remove Citrix Receiver for Linux 11.100
3. Quit Citrix Receiver for Linux 11.100 setup

Enter option number 1-3 [1]: 1

Please enter the directory in which Citrix Receiver for Linux is to be installed.
[default /usr/lib/ICAClient]
or type “quit” to abandon the installation:

You have chosen to install Citrix Receiver for Linux 11.100 in /usr/lib/ICAClient.

Proceed with installation? [default n]: y

CITRIX(R) LICENSE AGREEMENT

Use of this component is subject to the Citrix license covering the
Citrix product(s) with which you will be using this component. This
component is only licensed for use with such Citrix product(s).

CTX_code EP_T_A34320

Select an option:

1. I accept
2. I do not accept

Enter option number 1-2 [2]: 1
Installation proceeding…

Checking available disk space …
Disk space available 16311224 K
Disk space required 6923 K

Continuing …
Creating directory /usr/lib/ICAClient
Core package…
Setting file permissions…
Integrating with browsers…
Browsers found.

Integration complete.
Do you want to integrate Citrix Receiver with KDE and GNOME? [default y]: y
Do you want GStreamer to use the plugin from this client? [default y]: y
Do you want to install USB support? [default n]: y
* Starting Citrix USB daemon [ OK ]

Select a setup option:

1. Install Citrix Receiver for Linux 11.100
2. Remove Citrix Receiver for Linux 11.100
3. Quit Citrix Receiver for Linux 11.100 setup

Enter option number 1-3 [2]: 3
Quitting Citrix Receiver for Linux 11.100 setup.

Running Citrix Receiver

If you chose to integrate Citrix Receiver with either Gnome or KDE, it is now in the Applications Menu under Internet. You can also run the Receiver GUI using the following command:

usr/lib/ICAClient/wfcmgr

More Information

Gstreamer codecs are already up-to-date in the version of Ubuntu.

Citrix Support published Top 10 Technical articles for May 2010.

Find below the Citrix Knowledge Center Top 10.

Top 10 Technical Articles

Article Number Article Title
CTX368624 Troubleshooting Citrix Pass-through Authentication (Single Sign-On)
CTX711855 Common SSL Error Messages, and Respective Cause and Resolution
CTX238200 Troubleshooting Client Drive Mapping
CTX101644 Seamless Configuration Settings
CTX106192 Access Gateway Software Updates
CTX677542 Advanced Concepts – Farm Maintenance
CTX107572 Troubleshooting Tools for Citrix Environments
CTX106531 Troubleshooting the Citrix XTE Service and Errors: There is no route to the specified address … Protocol Driver Error
CTX089874 Troubleshooting and Explaining the Citrix Universal Print Driver
CTX746354 Best Practices for Uninstalling Presentation Server

Top 10 Whitepapers

Article Number Article Title
CTX110351 User Profile Best Practices for MetaFrame Presentation Server
CTX117913 Technical Guide for Upgrading / Migrating to XenApp 5.0
CTX101739 Microsoft SQL Server 2000 Data Store Replication
CTX122303 Technical Guide to Upgrading/Migrating to XenApp 5 Feature Pack 2
CTX101997 Citrix Secure Gateway Secure Ticket Authority Frequently Asked Questions
CTX124565 Best Practices: Customizing Microsoft Office 2010 for Streaming Environments
CTX124087 XenDesktop Modular Reference Architecture
CTX123684 Delivering 5000 Desktops with Citrix XenDesktop 4
CTX118735 XenServer Demo and Evaluation Setup Guide
CTX124799 User Profiles for XenApp and XenDesktop

Top 10 Hotfixes

Article Number Article Title
CTX122756 Hotfix Rollup Pack 6 for Citrix XenApp 5.0 and Citrix Presentation Server 4.5 for Microsoft Windows Server 2003 32-bit Edition
CTX116550 Citrix Presentation Server Client 10.200 for Windows
CTX120923 Hotfix Rollup Pack 5 for Citrix XenApp 5.0 and Citrix Presentation Server 4.5 for Microsoft Windows Server 2003 32-bit Edition
CTX124027 XS55EU2 – XenServer 5.5 Update 2
CTX118445 Citrix XenApp Plug-in for Hosted Apps 11.0 and Streamed Apps 1.2 for Windows
CTX125057 Citrix Online Plug-in 11.2.38 for Windows with HDX Flash Redirection Enhancements
CTX122761 Hotfix Rollup Pack 6 for Citrix XenApp 5.0 and Citrix Presentation Server 4.5 for Microsoft Windows Server 2003 64-bit Edition
CTX124293 MegaRAID SAS Version 4.17.1 Driver Disk – For XenServer 5.5 Update 2
CTX109307 Hotfix Rollup Pack PSE400W2K3R02 – For Citrix Presentation Server 4.0, Citrix Access Essentials 1.0 and 1.5 for Windows Server 2003
CTX124280 Hotfix XDE400VDAWX86002 (Version 4.0.4534) – For Citrix XenDesktop 4.0 Virtual Desktop Agent x86

Top 10 Presentations

Article Number Article Title
CTX125175 TechEdge 2010 – Debugging a Citrix XenApp and XenDesktop Environment
CTX105908 Get the Most Out of Your Resource Manager Summary Database
CTX125180 Troubleshooting XenDesktop, Provisioning Services & XenServer Integration
CTX111920 Selected Citrix Troubleshooting Tools
CTX123530 XenDesktop 4.0 Core Infrastructure and Features – GoToWebinar
CTX111560 Health Checks for Citrix Services Using Advanced Monitors
CTX125177 TechEdge 2010 – Troubleshooting XenDesktop Deployments
CTX125182 TechEdge 2010 – Provisioning Services Stream Process Architecture and Advanced Troubleshooting
CTX125181 TechEdge 2010 – Troubleshooting Performance Issues in a Virtualized Environment
CTX125178 TechEdge 2010 – XenServer Storage Management and Troubleshooting

Top 10 Tools

Article Number Article Title
CTX122536 Citrix Quick Launch
CTX116063 XenAppPrep Integration Utility for XenApp and Provisioning Services
CTX111961 CDFControl
CTX106226 Repair Clipboard Chain 2.0.1
CTX113472 Citrix ICA File Creator
CTX109374 StressPrinters 1.3.2 for 32-bit and 64-bit Platforms
CTX122962 Citrix Printing Tool
CTX107935 MedEvac 2.5
CTX113554 CTX_CpsvcUser Re-creation Tool for 32-Bit and 64-Bit Versions of Presentation Server 4.5
CTX107136 Citrix Connection Test Tool