Workspace Environment Management (WEM) 4.7

Last Modified: Sep 2, 2018 @ 7:53 am

Navigation

This post covers Citrix Workspace Environment Management (WEM) versions 4.7, 4.6, 4.5, 4.4, 4.3, 4.2, and 4.1.

ūüí° = Recently Updated

Change Log

Overview

Workspace Environment Management¬†(WEM) is Citrix’s Performance Management and UEM (User Environment Management) tool for all XenApp/XenDesktop Enterprise or Platinum Customers with active Software Maintenance (Subscription Advantage is not sufficient). The WEM Agent is supported on XenApp 6.5, and XenApp/XenDesktop 7.x. Videos:

Note: WEM does not replace Citrix Profile Management. You usually implement both.

Citrix Blog Post User Experience on Steroids: Citrix Workspace Environment Management has a list of Frequently Asked Questions about WEM, including a drawing of the architecture.

From Hal Lange at Database sizing at Citrix Discussions: SQL Always On is fully supported.  The ONE caveat is to remove from the Always On Availability Group before upgrading.

Here is the official calculations from the Norskale days on space needed on the SQL Server:

  • Reserve 1GB of RAM per 1,000 users deployed
  • RAM=1.5GB system + (1.5GB SQL + 1 GB per 1,000 users) for that SQL instance
  • Disk = 1GB per 10,000 users per year + 10 MB per WEM site configured

Upgrade WEM

CTA Marco Hofmann at CUGC: How-To: Update Citrix Workspace Environment Management (WEM) from 4.x to 4.7 (v4.07.00.00)

To upgrade Citrix WEM:

  1. In-place upgrade the Citrix Licensing Server. No special instructions.
    • Ensure the installed licenses a non-expired Subscription Advantage date.
  2. In-place upgrade the WEM Server. No special instructions.
  3. Use the Database Maintenance tool to upgrade the WEM database. You might have to run the WEM Broker Configuration Tool on each Broker to point to the upgraded database.
  4. In-place upgrade the WEM Console. No special instructions.
  5. In-place upgrade the WEM Agents.

Install/Upgrade WEM Server (Broker Service)

The WEM Broker Service can be installed on one or more servers, including Delivery Controllers. The WEM Agent cannot be installed on the Broker Server.

A WEM Server with 4 vCPU and 8 GB RAM can support 3,000 users.

  1. Download Workspace Environment Management 4.7 and extract it.
  2. Run the downloaded Citrix Workspace Environment Management Infrastructure Services Setup.exe.
  3. Click Install to install the prerequisites.
  4. In the Welcome to the InstallShield Wizard for Citrix Workspace Environment Magement Infrastructure Services page, click Next.
  5. In the License Agreement page, select I accept the terms, and click Next.
  6. In the Customer Information page, click Next.
  7. In the Setup Type page, click Next.
  8. In the Ready to Install the Program page, click Install.
  9. If you are upgrading, you might be prompted to restart applications.
  10. In the InstallShield Wizard Completed page, click Finish.
  11. Antivirus –¬†C:\Program Files (x86)\Norskale\Norskale Infrastructure Services must be excluded from Antivirus scanning. Or exclude: Norskale Broker Service.exe; Norskale Broker Service Configuration Utility.exe; Norskale Database Management Utility.exe.
  12. Firewall РEnsure firewall allows the following ports to/from the WEM Broker servers. See Citrix CTX101810 Communication Ports Used by Citrix Technologies.
    • Agent Port defaults to TCP 8286 – from WEM Agent to WEM Broker
    • AgentSyncPort defaults to TCP 8285 – from WEM Agent to WEM Broker SQL
    • AdminPort defaults to TCP 8284 – from WEM Admin Console to WEM Broker
    • Monitoring Port defaults to TCP 8287 – from Director to WEM Broker
    • AgentPort defaults to TCP¬†49752 –¬†from WEM Broker to WEM Agent
  13. See¬†CTX218965¬†Error: “Server sent back a fault indicating it is too busy to process the request” and the WEM Agent fails to connect to the Broker Service if you need to throttle the number of connections if you have insufficient resources on the WEM Broker server.

Upgrade WEM Database

Workspace Environment Management 4.5 and newer have PowerShell commands. For details, see Citrix Workspace Environment Management SDK v4.5 at Citrix Developer docs.

To upgrade the Workspace Environment Management database using the GUI tool:

  1. If this is a new install, skip to Create WEM Database.
  2. The person running Database Management must be a sysadmin on the SQL Server. Or you can enter a SQL login.
  3. On the WEM server, run Database Management from the Start Menu.
  4. If upgrading, in the ribbon, click Upgrade Database.
  5. Enter the SQL Server Name.
  6. Enter the existing WEM Database Name.
  7. Configure the credentials for the WEM service account.
  8. If your account is not a sysadmin on Citrix, then enter a SQL account in the Database Credentials fields.
  9. Click Upgrade.
  10. Click Yes when asked to proceed.
  11. Click OK when prompted that database upgraded successfully.
  12. Click Finish to close the Database Upgrade Wizard.
  13. Close the WEM Database Management Utility.
  14. After the database is upgraded, run the WEM Infrastructure Service Configuration Utility to set the database connection settings again. Upgrading seems to wipe out the settings.

    1. On the Licensing tab, configure the licensing server.
    2. On the Advanced Settings tab, configure the service account.
    3. On the Database Settings tab, enter the database server name and database name.
    4. In the ribbon, click Save Configuration.
    5. Click Yes to restart the Broker Service.
  15. Skip ahead to upgrade the WEM Administration Console.

Create WEM Database

Workspace Environment Management 4.5 and newer have PowerShell commands. For details, see Citrix Workspace Environment Management SDK v4.5 at Citrix Developer docs.

To create the database using the GUI tool:

  1. The person running Database Management must be a sysadmin on the SQL Server. Or you can enter a SQL login.
  2. Make sure SQL Server authentication (mixed mode) is enabled on the SQL server > Properties > Security. Even though the WEM Broker server runs as an AD account that is used login to SQL, WEM Broker also uses a SQL account named vuemUser, which means mixed mode must be enabled. Source = John Long at WEM new install, cannot connect to infrastructure server at Citrix Discussions.

  3. On the WEM server, run WEM Database Management Utility from the Start Menu.
  4. If a new install, in the ribbon, click Create Database.
  5. In the Create database Wizard page, click Next.
  6. In the Database Informations page, enter the SQL server name, and enter a new Database Name.
    1. Only enter an instance name if you have a named SQL instance.
    2. Only enter a port number if your SQL instance is listening on a static port number other than 1433.
    3. From Måns Hurtigh at Problem creating WEM 4.3 Database on SQL Server 2012 at Citrix Discussions: The database name cannot contain a dash.
  7. The paths might not be correct so double check them. Then click Next.
  8. In the Database Server Credentials page, if your account has sysadmin permissions, then leave the box checked. Otherwise, uncheck the box, and enter a SQL login that has sysadmin permissions. Click Next.
  9. In the VUEM Administrators section, click Browse, and select your Citrix Admins group.
  10. In the Database Security page, if you intend to load balance multiple WEM servers, then specify a Windows service account for database access. The Broker Service will run as this account. Ryan Revord Load balancing Citrix Workspace Environment Manager. And the new load balancing topic at Install the Citrix Workspace Environment Management Infrastructure Services at Citrix Docs.
  11. The Database Creation Wizard also creates a SQL account called vuemUser with an 8 character alphanumeric password. If you want it more complex, check the box and specify the password.
    • Note: if you intend to implement AlwaysOn Availability Group, then you must specify this password, since you’ll be asked for it again when adding the database to the Availability Group. Also see SQL Server Always On at Citrix Docs.

  12. Click Next.
  13. In the Database Information Summary page, click Create Database.
  14. Click OK when prompted that the database was created successfully.
  15. Click Finish to close the Database Creation Wizard.
  16. Close the WEM Database Management Utility.
  17. There is a log file at¬†“C:\Program Files (x86)\Norskale\Norskale Infrastructure Services\Citrix WEM Database Management Utility Debug Log.log”

WEM Broker Configuration

  1. On the WEM Server, run WEM Infrastructure Service Configuration Utility from the Start Menu.
  2. On the Database Settings tab, enter the SQL Server name and database name.
  3. Switch to the Advanced Settings tab.
  4. If you intend to load balance WEM Servers, then Browse to a service acccount. This service account must have access to the database. Ryan Revord Load balancing Citrix Workspace Environment Manager.
  5. The service account must be in the local Administrators group on the WEM server.
  6. On the Database Maintenance tab, consider checking Enable Scheduled Database Maintenance.
  7. On the Licensing tab, you can enter a Citrix License Server 11.14.0.1 or newer that has valid licenses. Or you can enter the license server later in the admin console.
  8. Click Save Configuration in the ribbon.
  9. Click Yes when asked to restart the Broker Service.
  10. Close the WEM Infrastructure Service Configuration utility.
  11. If you are load balancing WEM servers, then you must also create a Kerberos SPN, where [accountname] is the service account you are using for the Norskale service. Ryan Revord Load balancing Citrix Workspace Environment Manager.
    setspn -U -S Norskale/BrokerService [accountname]

Install/Upgrade WEM Console

  1. Run Citrix Workspace Environment Management Console Setup.exe.
  2. In the Welcome to the InstallShield Wizard for Citrix Workspace Environment Management Console page, click Next.
  3. In the License Agreement page, select I accept the terms, and click Next.
  4. In the Customer Information page, click Next.
  5. In the Setup Type page, click Next.
  6. In the Ready to Install the Program page, click Install.
  7. In the InstallShield Wizard Completed page, click Finish.

WEM Configuration Sets (formerly known as Sites)

In WEM 4.3, Sites was renamed to Configuration Sets.

  1. From the Start Menu, run WEM Administration Console.
  2. In the ribbon, click Connect.
  3. In the Database Broker Information window, enter the WEM Server name, and click Connect.
  4. Some WEM Console settings are global (every agent gets the same setting). So if you want different global settings for different agents, then you create multiple WEM Configuration sets. At the top of the window, in the ribbon, you can create a new WEM Configuration set. 
  5. Once you have multiple Configuration sets, you can use the drop-down to switch between them.
  6. An Agent can only belong to one WEM Configuration set. Different Agents can belong to different WEM Configuration sets.
  7. In WEM 4.3 and newer, you add agents to the Configuration set at Active Directory Objects (workspace on bottom left) > Machines (node on top left). You can add OUs or individual objects (computers or computer groups).
  8. In WEM 4.2 and older:
    1. The WEM Group Policy template has a GPO setting to specify the WEM Site name that an agent should use.

Import Recommended Settings

  1. If you have multiple WEM configuration sets, this process should be repeated for each WEM configuration set.
  2. In WEM 4.4 and newer, on the right side of the ribbon, click Restore.

    • In WEM 4.3 and older, on the right side of the ribbon, click Import Settings.
  3. In WEM 4.4 and newer, select Settings, and click Next.
  4. In the Settings Restore wizard, click Next.
  5. In the Restore from folder section, click Browse, and browse to the \Workspace-Environment-Management-v-4-07-00\Configuration Templates\Default Recommended Settings folder that was included in the WEM download.
  6. In the Settings Type Selection section, check all available boxes, and click Next.
  7. In the Restore settings processing window, click Restore Settings.
  8. Click Yes when prompted to replace.
  9. Click Finish.

James Kindon at WEM Hydration Kit has a collection of Applications, File System and Registry Actions that can be imported to WEM.

WEM Administrators

  1. In the Administration Console, go to Administration (workspace on bottom left) > Administrators (node on top left).
  2. In the right pane, click Add, and specify an Active Directory group that can administer WEM.
  3. After adding a group or user, right-click the new administrator, and click Edit.
  4. Use the Permissions drop-down to select a role. The roles are detailed at Administrators at Citrix Docs.
  5. Then use the State drop-down to select Enabled. New administrators are initially disabled. Click OK to close the window.

WEM Agent Configuration

For configuration guidance, see James Kindon and Hal Lange at WEM Advanced Guidance – Part 1¬†and WEM Advanced Guidance‚ÄďPart 2: User Interaction at CUGC.

  1. In the WEM Administration Console, in the Advanced Settings workspace (bottom left), there are several tabs for configuring the agent.
  2. On the bottom of each tab is an Apply button. Click this button periodically to save your configuration to the database.
  3. On the Main Configuration tab, one option you might want to enable is Launch Agent for admins.
  4. Also consider enabling Launch Agent at Reconnect.
  5. In the right pane, on the Reconnection Actions tab, you can select which modules should be refreshed on reconnect.
  6. The Agent Options tab defaults to processing printers and drives asynchronously.
  7. Setting on these tabs are mostly self-explanatory. Feel free to change any as desired.
  8. The Service Options tab has a setting for Bypass ie4uinit Check. Enabling this eliminates a 2 minute delay before WEM Agent starts. See Marco Hofman at http://www.carlstalhood.com/workspace-environment-manager/comment-page-1/#comment-5069 for details.
  9. On the top left, in the Advanced Settings workspace, there’s a¬†UI Agent Personalization node.
  10. In the right pane, in the UI Agent Options tab, you can change the Agent skin, and Preview it.
  11. Other settings on this page let you hide the splash screen.
  12. The Helpdesk Options tab lets you enable Screen Capture.

System Optimization

  1. The System Optimization workspace (bottom left) lets you configure the various optimizations.
  2. On the top left, click the CPU Management node.
  3. CPU Spikes Protection gives processes equal access to the CPU.
    • From Hal Lange: “CPU Usage Limit should never be set to higher a percentage than one CPU. This will keep a single threaded application from thrashing a CPU.¬† Example:¬†if 2 CPU’s are available, the CPU setting should not be set above 49%,¬†if 4 CPU’s are available, the CPU setting should not be set above 24%”
    • Hal Lange demonstrates¬†Citrix WEM Performance Optimizations in a YouTube video.
  4. Other tabs on the right let you manually specify CPU priority and/or clamping.

    1. CTX230843 WEM protection and Skype for Business + Real Time Optimization Pack has a list of processes that should be excluded from WEM CPU Spikes protection.
    2. From CTA Chris Schrameyer¬†WEM ‚Äď CPU LOGGING:¬†WEM does not provide any built-in logs to determine when a CPU Spikes Protection action is taken. It would be nice to know what processes are often limited, so we can then add them to a CPU Clamping policy or identify why they are using so much CPU.
  5. On the top left, click the Memory Management node.
  6. In the right pane, you can enable¬†Working Set Optimization¬†to periodically reclaim memory from running processes. This feature tells processes to flush their memory to disk. In other words, you’re trading memory for disk.
  7. On the top left, click the I/O Management node.
  8. On the right, you can prioritize process IO.
  9. On the top left, click the Fast Logoff node.
  10. In the right pane, enabling Fast Logoff disconnects a session immediately, and runs logoff processes in the background.

Security

  1. In Workspace Environment Management 4.5 and newer, on the bottom left, click the Security workspace. In older WEM, stay on the Process Optimization workspace.
  2. On the top left, click the Process Management node.
  3. In the right pane, in the Processes Management tab, enable Process Management. The other tabs are grayed out until you check this box.

  4. You can BlackList processes. There’s also a WhiteList, but once something is added to the WhiteList, then all other processes are blocked.
  5. In Workspace Environment Management 4.5 and newer, on the top left, click Application Security.
  6. You can use the top-left sub-nodes to configure AppLocker. See Application Security at Citrix Docs.
  7. If you click the Executable Rules sub-node, on the bottom right is a button to Add Default Rules.
  8. If you edit a rule…

    1. You can assign the rule to a user group.
    2. The list of user groups comes from Active Directory Objects (workspace) > Users.
  9. On top of the right pane, set Rule enforcement to On or Audit.
  10. In the ribbon is a button to Import AppLocker Rules that were exported from a group policy. See CTA  Saadallah Chebaro Configure Citrix Workspace Environment Management Application Security for details.
  11. The other sub-nodes follow the same configuration pattern.

Policies and Profiles

  1. The Policies and Profiles workspace (bottom left) has four nodes on the top left.
  2. In the Environmental Settings node (top left), in the right pane, you can enable Environmental Settings, and configure restrictions that are usually configured in group policy. Peruse the various tabs on the right. Administrators can be excluded from these restrictions.
  3. The Environmental Settings within the WEM Administration Console are per-machine, not per-user. This means that, by default, all the settings configured inside of a Configuration Set apply to every non-admin user that logs into that particular Agent machine. In order to have different Environmental Settings apply to different users/user groups, they would need to be applied to a separate WEM Agent machine, and all the settings would need to be configured inside a separate Configuration Set to which the WEM Agent Machine is bound. Source = CTX226487 Guidance on configuring WEM settings per user/user groups.
  4. If you switch to the Citrix Profile Management Settings node, you can use WEM to configure Citrix Profile Management. See the Citrix Profile Management post for details on a recommended configuration.

    1. WEM 4.2 and newer includes the latest UPM 5.5 and 5.6 features, including: Active Write Back Registry, NTUSER.DAT Backup, and Default Exclusion Lists.
    2. WEM 4.4 and newer includes the latest UPM 5.8 and 7.15 features, including Enable Logon Exclusion Check.
  5. If you use WEM to configure UPM settings, but the settings are not applying to the WEM Agent, then see Citrix CTX219086 Some UPM or WEM Agent parameters may not be applied by the agent after switching from GPO settings to Workspace Environment Management settings.
  6. In the right pane, the File System tab has a useful Profile Cleansing button to remove excluded folders from an existing UPM profile share.

    1. Adjust the Profiles Root Folder, click Scan Profiles Folder, and then click Cleanse Profile(s). This might not be necessary if you enable Logon Exclusion Check.
  7. To configure folder redirection, on the top left, click Microsoft USV Settings.
  8. On the right, on the Roaming Profiles Configuration tab, check the box to Process User State Virtualization Configuration.
  9. Then switch to the Folder Redirection tabs, and configure them as desired.

WEM Agent Group Policy

  1. In the WEM Download, go to the \Workspace-Environment-Management-v-4-07-00\Agent Group Policies\ADMX folder, and copy the .admx file, and the en-US folder to the clipboard.
    • In WEM 4,3, 4.4, and 4.5, the .admx file is labelled 4.3.
  2. Go \\MyADDomain.com\sysvol\MyADDomain.com\Policies. If you have a PolicyDefinitions folder here, paste the file and folder.
  3. If you don’t have PolicyDefinitions in Sysvol, then instead go to¬†C:\Windows\PolicyDefinitions, and paste the file and folder there.
  4. Look for older versions of the .admx and .adml files (in the en-us subfolder), and delete them.
    • In WEM 4.6 and newer, the .admx and .adml files no longer have a version designation, so remove any .admx and .adml files that have a version number.

  5. Edit a GPO that applies to the VDAs that will run the WEM Agent.
  6. Go to Computer Configuration | Policies | Administrative Templates | Citrix | Workspace Environment Management | Agent Host Configuration.
  7. On the right, double-click Infrastructure server.
  8. Enable the setting, enter the FQDN of the WEM server (or load balanced name), and click OK. Note: It must be FQDN. Also see Ryan Revord Load balancing Citrix Workspace Environment Manager.
  9. In WEM 4.3 and newer, to assign an Agent to a Configuration Set (formerly known as Site). In the WEM Administration Console, go to Active Directory Objects workspace (bottom left) > Machines node (top left), and in the right pane, add an OU or individual machines.
  10. It’s possible that an Agent might register with multiple Configuration sets. You can review the registrations at¬†Administration¬†workspace (bottom left) > Agents¬†node (top left) >¬†Registrations¬†tab (right pane).
  11. It also might show you Agents not registered with any Configuration Set. Add the Agent to Active Directory Objects > Machines.
  12. If WEM 4.2 or older:
    1. You can configure the WEM Agents to connect to a non-default WEM site by editing the Site Name GPO setting.

Install/Upgrade WEM Agent

  1. If App Layering, Citrix recommends installing the WEM Agent in the Platform Layer.
    1. If you are installing the WEM Agent in a App Layer, see George Spiers to workaround an issue with the Netlogon service in a Platform Layer that has the Provisioning Services Target Device software installed.
  2. Use registry editor to confirm that the WEM GPO has applied. Look for HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Norskale\Agent Host\BrokerSvcName.
  3. On a VDA Master machine, run the downloaded Citrix Workspace Environment Management Agent Setup.exe.
  4. If you are installing the Agent on a Provisioning Services vDisk, there are a couple Agent Installer Switches that let you move the WEM cache file to the PvS cache disk:
    "\\fs01\bin\Citrix\WEM\Workspace-Environment-Management-v-4-07-00\Citrix Workspace Environment Management Agent Setup.exe" /v"AgentCacheAlternateLocation=\"D:\WEMCache\""
  5. You can use the ARPSYSTEMCOMPONENT=1 switch to prevent the Agent from showing up in the Programs and Features list where it can be uninstalled.
  6. Citrix CTX218964 How To Secure a Citrix WEM Agent Installation in Cases Where Users are Local Administrators also details how to configure a group policy to prevent local administrators from stopping the Agent service.
  7. Click Install to install the prerequisites.
  8. In the Welcome to the InstallShield Wizard for Citrix Workspace Environment Management Agent Host page, click Next.
  9. In the License Agreement page, select I accept the terms, and click Next.
  10. In the Customer Information page, click Next.
  11. In the Setup Type page, click Next.
  12. In the Ready to Install the Program page, click Install.
  13. In the InstallShield Wizard Completed page, click Finish.
  14. After installation, check the registry under HKLM\System\CurrentControlSet\Control\Norskale\Agent Host to verify your command line switches applied correctly.
  15. Citrix CTX219839 How to Enable Debug Logging on Workspace Environment Management Agent manually, if no connectivity to Broker exists. Set AgentDebugModeLocalOverride and AgentServiceDebugModeLocalOverride to 1. The Norskale Agent Host Service Debug.log file will be written to %ProgramFiles(x86)%\Norskale\Norskale Agent Host. The Agent Log file will be written to the User Profile (i.e. under %UserProfile%).
  16. Srinivasan Shanmugam at¬†WEM Agent v4.5 Upgrade Issues at CUGC mentioned that you might have to delete the upgraded Agent’s local database.
  17. Optionally, you can pre-build the Agent Cache by running AgentCacheUtility.exe, which is located in C:\Program Files (x86)\Norskale\Norskale Agent Host.
  18. It needs the following switches:
    -refreshcache -brokername:MyWEMServer
  19. From Hal Lange: “AgentCacheUtility does except short values (Eg AgentCacheUtility -r -b:)¬† the broker name should always be in FQDN since this does use Kerberos for the authentication.”
  20. You can also use the WEM Administration Console at Administration workspace (bottom left), Agents node (top left), to refresh the cache. The Synchronization column indicates if the cache is up to date or not. It takes a few minutes to update.
  21. From Hal Lange: “Need to optimize the client by running ngen for .NET optimizations¬†in the x64 and x86 directories. These commands will help optimize ANY .NET application installed on the system
    C:\Windows\Microsoft.NET\Framework\v4.0.30319
    C:\Windows\Microsoft.NET\Framework64\v4.0.30319
    ngen.exe update
    ngen.exe eqi 1
    ngen.exe eqi 3
  22. Antivirus –¬†¬†C:\Program Files (x86)\Norskale\Norskale Agent Host must be excluded from Antivirus scanning. Or exclude Norskale Agent Host Service.exe; VUEMUIAgent.exe; Agent Log Parser.exe; AgentCacheUtility.exe; AppsMgmtUtil.exe; PrnsMgmtUtil.exe; VUEMAppCmd.exe; VUEMAppCmdDbg.exe; VUEMAppHide.exe; VUEMCmdAgent.exe; VUEMMaintMsg.exe; VUEMRSAV.exe.
  23. After Agents are installed, the Administration workspace (bottom left), Agents node (top left), shows the list of Agents, allowing you to perform actions against an Agent. For example, if UPM settings are not applying to your Agents, you can right-click the Agent, and click Reset Citrix Upm Settings. You might have to click the Refresh button on the bottom right. See Workspace Environment Manager UPM at Citrix Discussions.
  24. If you use WEM to configure UPM settings, but the settings are not applying to the WEM Agent, then see Citrix CTX219086 Some UPM or WEM Agent parameters may not be applied by the agent after switching from GPO settings to Workspace Environment Management settings.  Delete the machine cache, which is at the following registry location:
    HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Norskale\Agent Host\UsvMachineConfigurationSettings
    HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Norskale\Agent Host\UpmConfigurationSettings

    This will force VUEM to re-apply the per-machine settings (Microsoft USV or Citrix UPM settings, respectively).

  25. James Kindon describes the WEM Client Side Tools including: Log Parser, Resultant Actions Viewer, VUEMAppCMD, Manage Printers, Manage Applications, and Help Desk Tools.

WEM Agent on Provisioning Services

From Julian Mooren Citrix Workspace Environment Management with PVS ‚Äď Synchronization State ‚ÄúUnknown‚ÄĚ: For PvS, schedule a task to run the following commands at Target Device boot (Trigger = At Startup).

"C:\Program Files (x86)\Norskale\Norskale Agent Host\AgentCacheUtility.exe" -refreshcache

From CTA David Ott at Using Citrix Workspace Environment Management to Redirect Folders via Symbolic Links ‚Äď Speed Up Logon:¬†before shutting down your maintenance/private mode vdisk to re-seal, kill the Norskale Agent Host Service. For whatever reason if you don‚Äôt do this it can cause your vms in standard mode to take an obscenely long time to shutdown.

If you have a PVS environment and you have redirected the WEM cache to the persistent drive, use a startup task to refresh the cache, force restart the Norskale Agent Host Service, and start netlogon after. If the cache doesn’t already exist, WEM doesn’t seem to check with the WEM server. You have to create the cache, and then restart the service so that it reads it, and force restarting the Norskale Agent Host Service will stop netlogon (dependent on it).

Login Base Image Script Framework (BIS-F) automates many image sealing tasks, including tasks for Workspace Environment Management. The script is configurable using Group Policy.

Monitoring

  1. In the WEM Administration Console, the Monitoring workspace (bottom left) lets you see Logon Time and Boot Time reports.
  2. Double-click a category to see more info.

  3. Configuration node (top left) lets you configure Work Days Filtering for Login/Boot Time Reports.
  4. When you make changes in the console, if agents are already installed, you can right-click the agent icon (by the clock), and Refresh.
  5. You can also go to the Administration workspace (bottom left) > Agents node (top left). In the right pane, right-click one or more Agents, and click the Refresh options.

WEM Actions Configuration

WEM Actions are similar to Group Policy Preferences.

The general process is as follows:

  • Create the Actions
  • Add AD user groups to the WEM Console.
  • Assign Actions to user groups. Use¬†Conditions and Rules to perform the Action for only a subset of machines or users in the user group.

Create Actions

  1. In the WEM Console, use the Actions workspace to map drives, map printers, create shortcuts (Applications), set registry keys, etc. Each Action type is a separate node.
  2. In the right pane, click the Add button to add actions. These Actions are self explanatory.
  3. Some Actions, on the Options tab, have a Self-Healing option. To optimize performance, WEM only applies an action once. The Self Healing option causes it reapply at every logon.
  4. Network Drives have no field for selecting a drive letter. Instead, you configure the drive letter later when assigning the action as detailed below.
  5. Applications (shortcuts)
    1. In the Actions pane, Applications have no option for placing a shortcut on the Desktop. Instead, you configure shortcut placement later when assigning the action as detailed below.
    2. WEM 4.6 and newer let you pull icons from a StoreFront store.

    3. Arjan Mensch at Powershell Module for Citrix WEM ‚Äď Part 3 ‚Äď EnvironmentalSettings and MicrosoftUsvSettings from GPO and much, much more¬†provides a PowerShell Module that can do several things to help setup WEM, including reading a bunch of shortcuts (e.g. from Start Menu), and converting them to an .xml file that can be imported into WEM. This simplifies Applications configuration.
    4. To prevent applications (shortcuts) from being created if the application isn’t installed, go to¬†Advanced Settings > Configuration > Agent Options, and check the box next to¬†Check Application Existence in the¬†Extra Features section.
    5. To clean up extra shortcuts, go to Advanced Settings > Configuration > Cleanup Actions, and check the boxes in the Shortcuts deletion at startup section. Also see James Kindon Citrix WEM, Modern Start Menus and Tiles.
    6. After you create Applications (Shortcuts), and assign them, on the agent, there’s a¬†Manage Applications tool that lets users control where shortcuts are created, including pinning to Taskbar and Start Menu.

    7. Applications can be placed in Maintenance Mode. Edit an Application, and find the Maintenance Mode setting on the Options tab.
    8. This causes the icon to change, and a maintenance message to be displayed to the user.

    9. The Applications node has a Start Menu View tab on the right.
  6. For the¬†Printers Action, in the ribbon, there’s a¬†Import Network Print Server button.

  7. For the Registry Entries Action, in the ribbon, there’s an¬†Import Registry File button.

    • If Registry Actions are not applying, delete¬†HKEY_CURRENT_USER\Software\VirtuAll Solutions\VirtuAll User Environment Manager\Agent\. (Source = Registry Entries not applied to users at Citrix Discussions)
  8. For File System Operations, each Action has an Options tab that lets you set the Type of Action.
  9. For File Associations, “Command” is just the parameters without the executable.
  10. James Kindon at File Type Association with WEM and SetUserFTA¬†explains how to use WEM to run¬†Christoph Kolbicz’s¬†SetUserFTA utility to reliably set file type associations on Windows 2012 and newer.

Create Conditions and Rules

  1. Once the Actions are created, you then need to decide under what conditions the Actions are performed. Go to the Filters workspace (bottom left).
  2. On the top left, switch to the Conditions node.
  3. In the right pane, create Conditions. One or more Conditions are later combined into a Rule.
  4. One of the interesting Conditions is User SBC Resource Type, which lets you run Actions for either Published Desktop or Published Application.

  5. James Kindon at WEM filter conditions on OU and IP Address at Citrix Discussions says that the Active Directory Path Match condition requires a * at the end of the path.
  6. Then switch to the Rules node (top left) and create Rules in the right pane.
  7. If you add (by clicking the right arrow)¬†multiple Conditions to a Rule, all (AND) Conditions must match. There doesn’t appear to be an OR option. The Rules are used later when assigning an Action to a user group.

Add AD Groups to WEM Console

  1. Go to the Active Directory Objects workspace (bottom left).
  2. With the Users node selected on the top left, in the right pane, add groups and/or users that will receive the Action assignments.

Assign Actions to User Groups

  1. Go to the Assignments workspace (bottom left) > Action Assignment node (top left).
  2. In the right pane, initially the bottom half is empty. Double-click a group to show the Actions that are available for assignment.
  3. Move an available Action from the left to the right. This assigns the Action to the user group.
  4. You will be prompted to select a Filter, which contains one or more Conditions.
  5. When you move a Network Drive to the right, you’re prompted to select a drive letter.

    • The list of drive letters is restricted based on the configuration at¬†Advanced Settings¬†workspace (bottom left) > Configuration¬†node (top left) > Console Settings¬†tab (right pane).
  6. Back in the Assignments workspace, on the right, some Actions have additional options that you can right-click. For example, you can create shortcuts on the desktop.

Modeling Wizard

  1. In the Assignments workspace, you can use the Modeling Wizard node (top left) to see what Actions apply to a particular user.

Client Side Tools

James Kindon describes the WEM Client Side Tools including: Log Parser, Resultant Actions Viewer, VUEMAppCMD, Manage Printers, Manage Applications, and Help Desk Tools.

Transformer

In WEM 4.1 and newer, you can enable Transformer, which puts the WEM Agent in Kiosk mode. Users can only launch icons (e.g. Citrix icons). Everything else is hidden. This is an alternative to Receiver Desktop Lock. The Transformer interface is customizable. Note: desktops currently will not auto-launch from Transformer.

  1. In the WEM Console, there’s a¬†Transformer Settings workspace (bottom left) with two nodes on the top left:¬†General and¬†Advanced.
  2. Enable Transformer, and point it to your StoreFront URL. Note, this applies to all users and all agents in this WEM configuration set. You should probably have a new Configuration Set just for Kiosk devices.
  3. Other settings on the General Settings tab let you customize the appearance, and specify an unlock password. You probably want to disable the Clock. The Navigation Buttons are browser navigation.
  4. Transformer can be unlocked by pressing Ctrl+Alt+U and entering the unlock password.
  5. On the Site Settings tab, you can add website URLs that can be launched from within Transformer.
  6. At the top of the Transformer window is a Sites icon that lets you go to the sites listed in the WEM Console.
  7. The Advanced node lets you configure Transformer to launch a process other than a browser.
  8. The Advanced & Administration Settings tab lets you hide features from Transformer.
  9. To prevent users from accessing the local system, consider checking Hide Taskbar & Start Button.
  10. You probably want Log Off Screen Redirection to redirect users to the logon page when StoreFront logs off.
  11. The Logon/Logoff & Power Settings tab lets you configure the WEM Agent to autologon as a specific account. Transformer then displays the StoreFront webpage where the user enters his or her credentials.

AppDisks

Last Modified: Sep 13, 2018 @ 7:09 am

Navigation

Planning

AppDisks are available in all editions of XenApp/XenDesktop 7.8 and newer. AppDNA is only available in Platinum Edition.

AppDisks can be created on vSphere (5.1 and newer) and XenServer only. No support for Hyper-V.

Delivery Groups used with AppDisks can contain machines from Pooled Random Machine Catalogs containing Server OS or Desktop OS machines. You cannot use AppDisks with machines from other catalog types, such as pooled static or dedicated (assigned).

In Provisioning Services environments, AppDisks are stored on hypervisor storage, not Provisioning Services storage. Also, additional data might be written to the write cache.

AppDisk must be on the same hosting resource as the linked clones it is attached to. If you have multiple hosting resources, then you’ll need to import the AppDisk to each hosting resource containing linked clones that you want to attach the AppDisk to.

According to the AppDisk FAQ, Citrix has tested up to 16 AppDisks attached to a single virtual machine. To minimize the number of AppDisks, you should combine multiple applications into a single AppDisk.

AppDisks are stored on a datastore with a GUID in the folder name, thus it’s difficult to know what’s in the .vmdk file. Use PowerShell commands (Get-AppLibAppDisk) to determine the AppDisk-to-.vmdk mapping. If you intend to backup and recover these files, periodically run the PowerShell commands and export to a file so you can know which disk is which. Or, when you import the AppDisk, Studio will tell you which applications are installed in the AppDisk and you can then rename the imported AppDisk.

Links:

vCenter Preparation

Citrix has instructions for creating a XenDesktop role in vCenter. AppDisks requires an additional permission: Virtual Machine > Configuration > Modify device Settings.

For AppDisks, the read only role must be applied to the vCenter level. See Mark New at discussions.citrix.com for details.  ?

AppDNA Preparation

  1. If you intend to use AppDNA to analyze your AppDisks, build a separate AppDNA server.
  2. In Studio, go to Configuration, right-click AppDNA, and click Create AppDNA connection before creating an AppDisk.
  3. The dialog box has an example for the Connection address. It should be in http://appdnaserver:8199/appdna format.
  4. Enter the AppDNA SQL server name and database name. Click Save.

Create AppDisk

  1. Antivirus will slow down the AppDisk creation process. Add CtxPvD.exe and CtxPvDSvc.exe to the exclusion list of your antivirus program. More details in Known Issues.
  2. According to¬†CTX211853¬†AppDisk Creation Task Stuck At “Creating…” In Studio,¬†Shadow Copy and Microsoft Software Shadow Copy Service Provider services must be enabled on the machines.
  3. You need a Machine Creation Services or Provisioning Services catalog of type Random. Make sure at least one machine in the catalog is not assigned to any Delivery Group.


  4. For Provisioning Services, the machine must boot from a Maintenance (Private Image) version. After the AppDisk is created, the Maintenance version can be discarded.
  5. In Studio, right-click AppDisks and click Create AppDisk.
  6. In the Getting started with AppDisks page, click Next.
  7. In the Create AppDisk page, select a size for the disk. These are thin provisioned so size probably doesn‚Äôt matter. Just make sure it’s big enough to hold the application.
  8. Note: If PvS, if the AppDisk is bigger than the cache disk, then PvS might try to put the cache on the AppDisk and will fail to server. See Formatted drive still goes to Server for cache with PVS 7.9 at Citrix Discussions.¬† ūüí°
  9. Click Next.
  10. In the Preparation Machine page, select an MCS or PVS random catalog that has an available machine not assigned to a Delivery Group. Click Next.
  11. In the Summary page, give the AppDisk a name. Include the datastore or hosting resource name since you need different AppDisks for each hosting resource. Click Finish.
  12. The new AppDisk is prepped. This takes a while.
  13. If you look in your hypervisor storage, you’ll see a new folder named AppDisk-VirtualID. It’s not obvious which AppDisk this .vmdk file belongs to. You can run a PowerShell command like get-applibappdisk | ? virtualdiskid -eq 0cac15d0-55db-4931-848e-de6ee79dddf8 to determine the AppDisk name.
  14. Once prep is done, Studio says Ready to install applications. If you look on the bottom it will show you which machine was used for AppDisk preparation.
  15. You can also right-click the AppDisk, click Install Applications, and it will tell you which machine should be used for application installation.

  16. Access the console of the prep machine and install the application(s).
  17. When done, go back to Studio, right-click the AppDisk, and click Seal AppDisk.
  18. Click Yes to seal it. This will cause the prep machine to reboot.
  19. Preparation will take some time. If it seems stuck, you might have to login to the prep machine so it continues the process.

  20. Windows Defender might interfere with the sealing process. In that case, turn off Defender’s Real-time protection.
  21. If you added AppDNA to Studio, then it will ask AppDNA to analyze the AppDisk.
  22. When done you can View report.
  23. Once the AppDisk is created and sealed, you can click the Applications tab in the bottom half of the window to see what the AppDisk contains.

Import AppDisk

AppDisks can only be attached to machines on the same hosting resource the AppDisk is located on. You can easily copy/import the AppDisk to multiple hosting resources (datastores).

Also, if you added AppDNA after creating AppDisks, then you can only analyze them by re-importing them.

To import an AppDisk:

  1. You will need an available prep machine in a MCS or PvS Random Catalog that is not assigned to any Delivery Group. The Catalog must be on the same Hosting Resource where the imported AppDisk will be placed.


  2. When you look at a datastore containing AppDisks, it’s not obvious which .vmdk goes with which AppDisk. Run the PowerShell command Get-AppLibAppDisk <AppDiskName> to see the VirtualDiskId.
  3. In vSphere Web Client, edit a non-linked clone virtual machine. Any non-MCS/PVS machine should work. This import machine is different than the linked clone machine that Studio will use to prepare the AppDisk.
  4. Make sure the import machine is currently powered off. If the machine is powered on, then vSphere might complain about the disk being currently in use.
  5. Add an Existing Hard Disk (AppDisk).

  6. When browsing the datastore with the existing AppDisk, select the folder name that matches the VirtualDiskId and then select the disk that’s in the folder.
  7. In Studio, right-click AppDisks and click Create AppDisk.
  8. In the Create AppDisk page, select Import existing AppDisk.
  9. Select a Hosting Resource where you want to copy the AppDisk to. Studio always copies the AppDisk, even if to the same datastore as the source.
  10. In the Import Disk page, browse to the virtual machine and click the arrow to expand it.
  11. Then select the attached AppDisk and click Next.
  12. In the Preparation machine page, select a random linked clone catalog with a machine that hasn’t been added to any Delivery Group and click Next.
  13. In the Summary page, give the AppDisk a name. Include the hosting resource (datastore) name. Click Finish.
  14. The AppDisk will be copied to the new datastore and analyzed if AppDNA is configured.
  15. You can then assign the imported AppDisk to Delivery Groups.
  16. Once the AppDisk is imported, click the Applications tab in the bottom half of the Windows to see what’s in the AppDisk.
  17. You can rename the AppDisk by right-clicking it and clicking Properties.

Assign to Delivery Group

AppDisks are assigned to Delivery Groups, not Catalogs.

  1. If you want to assign an AppDisk to an existing Delivery Group, right-click the Delivery Group and click Manage AppDisks.
  2. Or you can create a new Delivery Group.
  3. On the AppDisks page, click Add.
  4. Select one or more AppDisks and click OK. Notice that you can only select AppDisks on the same hosting resource as the Catalog.
  5. You can prioritize the AppDisks by using the arrow buttons on the right. Or click Auto Order to let AppDNA do it for you.
  6. If you are changing AppDisks assigned to an existing Delivery Group, choose a Rollout Strategy (reboot schedule). This is identical to Machine Creation Services Rollout Strategy. Then finish the wizard.
  7. If you chose Auto Order when assigning the AppDisks then AppDNA will need to do some analysis.
  8. If you highlight a Delivery Group, the AppDisks tab on the bottom shows the currently assigned AppDisks.

Update AppDisk

  1. In Studio, right-click an AppDisk and click Create New Version.
  2. Give the new version a name.
  3. Select a linked clone machine that is not currently in a Delivery Group.
  4. Click Create new version. This copies the AppDisk and links it to the prep virtual machine.
  5. Proceed through the normal Create AppDisk process. This includes installing applications and sealing the AppDisk.
  6. Then assign the new AppDisk to a Delivery Group. This process will include removing the old AppDisk and assigning the new AppDisk.

Virtual Delivery Agent (VDA) 7.8

Last Modified: Sep 2, 2018 @ 7:53 am

Navigation

ūüí° = Recently Updated

Hardware

  1. If vSphere 6, don‚Äôt use hardware version 11 unless you have NVIDIA GRID. VMware 2109650 ‚Äď Video playback performance issue with hardware version 11 VMs in 2D mode
  2. For virtual desktops, give the virtual machine: 2+ vCPU and 2+ GB of RAM
  3. For Windows 2008 R2 RDSH, give the virtual machine 4 vCPU and 12-24 GB of RAM
  4. For Windows 2012 R2 RDSH, give the virtual machine 8 vCPU, and 24-48 GB of RAM
  5. Remove the floppy drive
  6. Remove any serial or LPT ports
  7. If vSphere:
    1. To reduce disk space, reserve memory. Memory reservations reduce or eliminate the virtual machine .vswp file.
    2. The NIC should be VMXNET3.
  8. If this VDA will boot from Provisioning Services:
    1. Give the VDA extra RAM for caching.
    2. Do not enable Memory Hot Plug
    3. For vSphere, the NIC must be VMXNET3.
    4. For vSphere, configure the CD-ROM to boot from IDE instead of SATA. SATA comes with VM hardware version 10. SATA won’t work with PvS.
  9. Install the latest version of drivers (e.g. VMware Tools).
    1. If Windows 7 on vSphere, don’t install the VMware SVGA driver. For more details, see¬†CTX201804¬†Intermittent Connection Failures/Black Screen Issues When Connecting from Multi-Monitor Client Machines to Windows 7 VDA with VDA 7.x on vSphere/ESXi.

If vSphere, disable NIC Hotplug

  1. Users could use the systray icon to Eject the Ethernet Controller. Obviously this is bad.
  2. To disable this functionality, power off the virtual machine.
  3. Once powered off, right-click the virtual machine and click Edit Settings.
  4. On the VM Options tab, expand Advanced and then click Edit Configuration.
  5. Click Add Row.
  6. On the left, enter devices.hotplug. On the right, enter false.
  7. Then click OK a couple times to close the windows.
  8. The VM can then be powered on.

Windows Preparation

  1. If RDSH, disable IE Enhanced Security Config
  2. Optionally, go to Action Center (Windows 8.1 or 2012 R2) or Security and Maintenance (Windows 10) to disable User Account Control and enable SmartScreen .
  3. Run Windows Update.
  4. If Windows Firewall is enabled:
    1. Enable File Sharing so you can access the VDA remotely using SMB
    2. Enable COM+ Network Access and the three Remote Event Log rules so you can remotely manage the VDA.

  5. Add your Citrix Administrators group to the local Administrators group on the VDA.
  6. The Remote Desktop Services ‚ÄúPrompt for Password‚ÄĚ policy prevents Single Sign-on to the Virtual Delivery Agent. Check registry key HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows NT\Terminal Services. If fPromptForPassword = 1 then you need to fix group policy. The following GPO setting will prevent Single Sign-on from working.
    Computer Configuration Policies Administrative templates Windows Components Remotes Desktop Services Remote desktop Session Host Security Always prompt for password upon connection
    Or set the registry value HKEY_LOCAL_MACHINE\SOFTWARE\Citrix\PorticaAutoLogon (DWORD) = 0x10.
  7. For Windows 7 VDAs that will use Personal vDisk, install Microsoft hotfix 2614892 РA computer stops responding because of a deadlock situation in the Mountmgr.sys driver. This hotfix solved a Personal vDisk Image update issue detailed at Citrix Discussions.
  8. If this VDA is Windows Server 2008 R2, request and install the Windows hotfixes recommended by Citrix CTX129229. Scroll down to see the list of recommended Microsoft hotfixes for Windows Server 2008 R2. Ignore the XenApp 6.x portions of the article. Also see http://www.carlstalhood.com/windows-server-2008-r2-post-sp1-hotfixes/.
  9. To remove the built-in apps in Windows 10, see Robin Hobo How to remove built-in apps in Windows 10 Enterprise.
  10. For Remote Assistance in Citrix Director, configure the GPO setting Computer Configuration | Policies | Administrative Templates | System | Remote Assistance | Offer Remote Assistance. See Jason Samuel РHow to setup Citrix Director Shadowing with Remote Assistance using Group Policy for more details.
  11. If you intend to use Citrix’s SCOM Management Packs for XenApp/XenDesktop, make sure WinRM is enabled on the VDA by running¬†winrm quickconfig.

Install Virtual Delivery Agent 7.8

  1. For virtual desktops, make sure you are logged into the console. The VDA won’t install if you are connected using RDP.
  2. Make sure 8.3 file name generation is not disabled. If so, see CTX131995 User Cannot Launch Application in Seamless Mode to fix the AppInit_DLLs registry keys.
  3. Make sure .NET Framework 4.5.1 is installed.
  4. CTX212981¬†Error Upgrading VDA on Server 2012 R2 from 7.7 to 7.8¬†–¬†uninstall Microsoft hotfixes¬†KB3092630, KB3139923 & KB3075249. ¬†Also see Citrix VDA Upgrade issues by THOMAS K√ĖTZING
  5. Go to the downloaded XenDesktop 7.8 (XenDesktop Platinum, XenDesktop Enterprise, XenApp Platinum, or XenApp Enterprise) .iso file and run AutoSelect.exe. Alternatively, you can download the standalone VDA package and run that instead.
  6. Click Start next to either XenApp or XenDesktop. The only difference is the product name displayed in the installation wizard.
  7. Click Virtual Delivery Agent for Windows Desktop OS or Windows Server OS depending on which type of VDA you are building.
  8. In the Environment page, select Create a Master Image and click Next.
  9. For virtual desktops, in the HDX 3D Pro page, click Next.
  10. In the Core Components page, if you don’t need Citrix Receiver installed on your VDA then uncheck the box. Click Next.
  11. In the Delivery Controller page, select Do it manually. Enter the FQDN of each Controller. Click Test connection. And then make sure you click Add. Click Next when done.
  12. In the Features page, click Next. If this is a virtual desktop, you can leave Personal vDisk unchecked now and enable it later.
  13. In the Firewall page, click Next.
  14. In the Summary page, click Install.
  15. For RDSH, click Close when you are prompted to restart.
  16. After the machine reboots twice, login and installation will continue.
  17. Note: NT SERVICE\CitrixTelemetryService needs permission to login as a service.
  18. After installation, click Finish to restart the machine again.
  19. If 8.3 file name generation is disabled, see CTX131995 User Cannot Launch Application in Seamless Mode to fix the AppInit_DLLs registry keys.

Controller Registration Port

Some environments will not accept the default port 80 for Virtual Delivery Agent registration. To change the port, do the following on the Virtual Delivery Agent:

  1. Open Programs and Features.
  2. Find Citrix Virtual Delivery Agent and click Change.
  3. Click Customize Virtual Delivery Agent Settings.
  4. Edit the Delivery Controllers and click Next.
  5. On the Configure Delivery Controller page, change the port number and click Next.
  6. In the Features page, click Next.
  7. In the Summary page, click Reconfigure.
  8. In the Finish Reconfiguration page, click Finish.
  9. Verify that the registry values WCF_Port and¬†ControllerRegistrarPort were changed to the new port as detailed at unable to change VDA registration port in XD 7.8/VDA 7.8 at Citrix Discussions.¬† ūüí°
  10. You must also change the VDA registration port on the Controllers by running BrokerService.exe /VDAPort.

Controller Registration ‚Äď Verify

  1. If you restart the Virtual Delivery Agent machine or restart the Citrix Desktop Service
  2. In Windows Logs Application log, you should see an event 1012 from Citrix Desktop Service saying that it successfully registered with a controller. If you don’t see this then you’ll need to fix the ListOfDDCs¬†registry key.
  3. You can also¬†run Citrix’s Health Assistant on the VDA.

Call Home

VDA 7.8 has a new Telemetry Service to collect diagnostics info. You can run PowerShell commands to enable the service and schedule automatic uploads to Citrix Insight Services.

See Citrix Blog Post Citrix Call Home Technology Preview for details.

Profile Management 5.4.1

Warning: If you are upgrading and have existing Windows 2012 R2 profiles based on the !CTX_OSNAME! variable, see http://discussions.citrix.com/topic/374111-psa-upm-54-ctx-osname-server-2012-value-change/ for why your profiles might stop working.

  1. Go to the downloaded Profile Management 5.4.1 and run profilemgt_x64.msi.
  2. In the Welcome to the Citrix Profile Management Setup Wizard page, click Next.
  3. In the End-User License Agreement page, check the box next to I accept the terms in the License Agreement and click Next.
  4. In the Destination Folder page, click Next.
  5. In the Ready to install Citrix Profile Management page, click Install.
  6. If you see Files in Use, click OK.
  7. Click OK to continue the installation.
  8. In the Completed the Citrix Profile Management Setup Wizard page, click Finish.
  9. Click Yes when prompted to restart.
  10. UPM 5.4.1 breaks Logon Duration in Citrix Director. To fix it, run the following commands:
    C:\Windows\Microsoft.NET\Framework64\v4.0.30319\installutil.exe "C:\Program Files\Citrix\Virtual Desktop Agent\upmWmiMetrics.dll"
    
    C:\Windows\Microsoft.NET\Framework64\v4.0.30319\installutil.exe "C:\Program Files\Citrix\Virtual Desktop Agent\upmWmiAdmin.dll"


  11. See the Profile Management page for configuration instructions.

Upgrade to Receiver 4.4.2000

VDA 7.8 does not include this update.

If Receiver is installed on your VDA, upgrade it to version 4.4.2000¬† ūüí°

  1. Go to the downloaded Receiver 4.4.2000 and run CitrixReceiver.exe.
  2. In the Welcome to Citrix Receiver page, click Start.
  3. In the License Agreement page, check the box next to I accept the license agreement and click Next.
  4. If you see the Enable Single Sign-on page, check the box next to Enable Single Sign-on and click Next.
  5. In the Help make our products better page, make your selection and click Install.
  6. After installation, click Finish.
  7. See the Receiver page for configuration instructions.

HTML5 App Switcher 2.0.2

This tool is no longer needed for Receiver for HTML5 2.0 and newer.

  1. .NET Framework 4.0.3 or newer is required.
  2. Go to the downloaded Receiver for HTML5 App Switcher (Citrix_AppSwitcher_2.0.2) and run AppSwitcher.msi.
  3. Check the box next to I accept the terms and click Install.
  4. In the Completed the App Switcher Setup Wizard page, click Finish.

  5. In Programs and Features, it is shown as version 2.0.2.25.

Citrix PDF Printer 7.8.0

This tool is only used by Receiver for HTML5.

  1. Go to the downloaded Receiver for HTML5 Citrix PDF Printer 7.8.0 (under Additional Components) and run CitrixPDFPrinter64.msi.
  2. In the Please read the Citrix PDF printer License Agreement page, check the box next to I accept the terms and click Install.
  3. In the Completed the Citrix PDF Universal Driver Setup Wizard page, click Finish.
  4. In Programs and Features, it is shown as version 7.8.0.10.
  5. Configure a Citrix Policy to enable the PDF printer. The setting is called Auto-create PDF Universal Printer.

Framehawk Configuration

To enable Framehawk, see http://www.carlstalhood.com/citrix-policy-settings/#framehawkconfig

Remote Desktop Licensing Configuration

On 2012 R2 RDSH, the only way to configure Remote Desktop Licensing is using group policy (local or domain). This procedure also works for 2008 R2 RDSH. This procedure is not needed on virtual desktops.

  1. For local group policy, run gpedit.msc.
  2. Go to Computer Configuration > Administrative Templates > Windows Components > Remote Desktop Services > Remote Desktop Session Host > Licensing.
  3. Double-click Use the specified Remote Desktop license servers. Change it to Enabled and enter the names of the RDS Licensing Servers (typically installed on XenDesktop Controllers). Click OK.
  4. Double-click Set the Remote Desktop licensing mode. Change it to Enabled and select Per User. Click OK.
  5. In Server Manager, open the Tools menu, expand Terminal Services and click RD Licensing Diagnoser.
  6. The Diagnoser should find the license server and indicate the licensing mode. It’s OK if there are no licenses installed on the Remote Desktop License Server.

Several people in Citrix Discussions reported the following issue: If you see a message about RD Licensing Grace Period has expired even though RD Licensing is properly configured, see Eric Verdumen No remote Desktop Licence Server availible on RD Session Host server 2012. The solution was to delete the REG_BINARY in HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server\RCM\GracePeriod only leaving the default. You must take ownership and give admin users full control to be able to delete this value.

C: Drive Permissions

This section is more important for shared VDAs like Windows 2008 R2 and Windows 2012 R2.

The default permissions allow users to store files on the C: drive in places other than their profile.

  1. Open the Properties dialog box for C:.
  2. On the Security tab, click Advanced.
  3. Highlight the line containing Users and Create Folders and click Remove.
  4. Highlight the line containing Users and Special and click Remove. Click OK.
  5. Click Yes to confirm the permissions change.
  6. If you see any of these Error Applying Security windows, click Continue.
  7. Click OK to close the C: drive properties.

Pagefile

If this image will be converted to a Provisioning Services vDisk, then you must ensure the pagefile is smaller than the cache disk. For example, if you allocate 20 GB of RAM to your Remote Desktop Session Host, and if the cache disk is only 15 GB, then Windows will have a default pagefile size of 20 GB and Provisioning Services will be unable to move it to the cache disk. This causes Provisioning Services to cache to server instead of caching to your local cache disk (or RAM).

  1. Open System. In 2012 R2, you can right-click the Start button and click System.
  2. Click Advanced system settings.
  3. On the Advanced tab, click the top Settings button.
  4. On the Advanced tab, click Change.
  5. Either turn off the pagefile or set the pagefile to be smaller than the cache disk. Don’t leave it set to System managed size. Click OK several times.

Direct Access Users

When Citrix Virtual Delivery Agent is installed on a machine, non-administrators can no longer RDP to the machine. A new local group called Direct Access Users is created on each Virtual Delivery Agent. Add your non-administrator RDP users to this local group so they can RDP directly to the machine.

Windows Profiles v3/v4/v5

Roaming Profiles are compatible only between the following client and server operating system pairs. The profile version is also listed.

  • v5 = Windows 10 and Windows Server 2016
  • v4 = Windows 8.1 and Windows Server 2012 R2
  • v3 = Windows 8 and Windows Server 2012
  • v2 = Windows 7 and Windows Server 2008 R2
  • v2 = Windows Vista and Windows Server 2008

Windows 8.1 and 2012 R2 don’t properly set the profile version. To fix this, ensure update rollup 2887595 is installed. http://support.microsoft.com/kb/2890783.¬†After you apply this update, you must create a registry key before you restart the computer.

  1. Run regedit.
  2. Locate and then tap or click the following registry subkey:
    HKEY_LOCAL_MACHINE\System\CurrentControlset\Services\ProfSvc\Parameters
  3. On the Edit menu, point to New, and then tap or click DWORD Value.
  4. Type UseProfilePathExtensionVersion.
  5. Press and hold or right-click UseProfilePathExtensionVersion, and then tap or click Modify.
  6. In the Value data box, type 1, and then tap or click OK.
  7. Exit Registry Editor.

Then, Windows 8.1 creates a user profile and appends the suffix “.v4” to the profile folder name to differentiate it from version 2 of the profile in Windows 7 and version 3 of the profile in Windows 8.

Registry

HDX Flash

From Citrix Knowledgebase article CTX139939 –¬†Microsoft Internet Explorer 11 – Citrix Known Issues: The registry key value IEBrowserMaximumMajorVersion is queried by the HDX Flash service to check for maximum Internet Explorer version that HDX Flash supports. For Flash Redirection to work with Internet Explorer 11 set the registry key value IEBrowserMaximumMajorVersion to 11 on the machine where HDX flash service is running. In case of XenDesktop it would be the machine where VDA is installed.

  • Key = HKLM\SOFTWARE\Wow6432Node\Citrix\HdxMediaStreamForFlash\Server\PseudoServer
    • Value =¬†IEBrowserMaximumMajorVersion¬†(DWORD) = 00000011 (Decimal)

From Citrix Discussions: Add the DWORD ‘FlashPlayerVersionComparisonMask=0′ on the VDA under HKLM\Software\Wow6432Node\Citrix\HdxMediaStreamForFlash\Server\PseudoServer.¬† This disables the Flash major version checking between the VDA and Client Device.

Published Explorer

This section applies if you intend to publish apps from this VDA.

From Citrix Knoweldgebase article¬†CTX128009 –¬†Explorer.exe Fails to Launch:¬†When publishing the seamless explorer.exe application, the session initially begins to connect as expected. After the loading, the dialog box disappears and the explorer application fails to appear.¬†On the VDA,¬†use the following registry change to set the length of time a client session waits before disconnecting the session:

  • Key = HKLM\SYSTEM\CurrentControlSet\Control\Citrix\wfshell\TWI
    • Value = LogoffCheckerStartupDelayInSeconds (DWORD) = 10 (Hexadecimal)

Mfaphook ‚Äď 8.3 File Names

  1. Open a command prompt.
  2. Switch to C:\ by running cd /d C:\
  3. Run dir /x program*
  4. If you don’t see PROGRA~1 then 8.3 is disabled. This will break Citrix.
  5. If 8.3 is disabled, open regedit and go to HKLM\Software\Microsoft\Windows NT\CurrentVersion\Windows.
  6. On the right is AppInit_DLLs. Edit it and remove the path in front of MFAPHOOK64.DLL.


Logon Disclaimer Window Size

From Xenapp 7.8 РSession Launch Security/Warning Login Banner at Citrix Discussions: If your logon disclaimer window has scroll bars, set the following registry values:

HKLM\Software\Wow6432node\Citrix\CtxHook\AppInit_DLLS\Multiple Monitor Hook\LogonUIWidth = DWORD:300
HKLM\Software\Wow6432node\Citrix\CtxHook\AppInit_DLLS\Multiple Monitor Hook\LogonUIHeight = DWORD:200

Login Timeout

Citrix CTX203760 VDI Session Launches Then Disappears: XenDesktop, by default, only allows 180 seconds to complete a logon operation. The timeout can be increased by setting the following:

HKLM\SOFTWARE\Citrix\PortICA

Add a new DWORD AutoLogonTimeout and set the value to decimal 240 or higher (up to 3600).

Also see Citrix Discussions Machines in “Registered” State, but VM closes after “Welcome” screen.

Receiver for HTML5 Enhanced Clipboard

From About Citrix Receiver for Chrome 1.9 at docs.citrix.com: To enable enhanced clipboard support, set registry value HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Citrix\wfshell\Virtual Clipboard\Additional Formats\HTML Format\Name=”HTML Format”. Create any missing registry keys. This applies to both virtual desktops and Remote Desktop Session Hosts.

4K Monitors

Citrix CTX201696 – Citrix XenDesktop and XenApp ‚Äď Support for Monitors Including 4K Resolution and Multi-monitors: Up to eight 4K monitors are supported with the Std-VDA and RDS VDA irrespective of underlying GPU support, provided the required policies and/or registry keys are correctly configured. Currently the Std-VDA for XenDesktop and RDS-VDA for XenApp does not support resolutions higher than 4094 in any dimension.

Framehawk currently does not support 4K monitors. At the time of writing, the number of monitors supported is 1, the use of more monitors will cause the graphics mode to change from Framehawk to Thinwire to support multi-monitor.¬† The maximum resolution supported by Framehawk is currently 2048×2048.

From CTX200257 – Screen Issues Connecting to 4K Resolution Monitors: Symptom: A blank or corrupt screen is displayed when connecting to Windows 7 or 8.1 Standard XenDesktop Virtual Delivery Agents on a client which has one or more 4K resolution monitors.

  1. Calculate the video memory that is required for 4K monitor using the following formula:
    Sum of total monitors (Width * height * 4 * X) where width and height are resolution of the monitor.
    X = 2 if VDA is Windows 7 OR X = 3 if VDA is Windows 88.1
    Suppose a Windows 7 VDA is connecting to a client that has dual 4K monitors (3840×2160), then video buffer should be: (3840 x 2160 x 4 x 2) + (3840 x 2160 x 4 x 2) = ~132MB
  2. Open the registry (regedit) and navigate to: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\vd3v
  3. Increase the value of “MaxVideoMemoryBytes‚ÄĚ REG_DWORD value to the above calculated memory.
  4. Reboot the VDA.

When using Thinwire, Compatibility, Thinwire Plus or Legacy modes, the Display memory¬†Limit policy needs to be configured appropriately for Std-VDA, as per Graphics Policy Settings at docs.citrix.com. The Default value for¬†Display memory¬†Limit¬†is 65536KB and this is sufficient up to 2x4K monitors (2x32400KB). You can find more information on Graphics modes at Citrix Blogs –¬†Site Wide View of HDX Graphics Modes.

Legacy Client Drive Mapping

Citrix Knowledgebase article How to Enable Legacy Client Drive Mapping Format on XenApp: Citrix Client Drive Mapping no longer uses drive letters and instead they appear as local disks. This is similar to RDP drive mapping.

The old drive letter method can be enabled by setting the registry value:

  • Key = HKEY_LOCAL_MACHINE\SOFTWARE\Citrix\UncLinks (create the key)
    • Value = UNCEnabled (DWORD)¬†= 0

When you reconnect, the client drives will be mapped as drive letters (starts with V: and goes backwards).

COM/LPT Port Redirection

To signal Citrix’ intention to deprecate COM and LPT support in a future major release, policy settings for COM Port and LPT Port Redirection have moved from Studio to the registry, and are now located under HKLM\Software\Citrix\GroupPolicy\Defaults\Deprecated on either your Master VDA image or your physical VDA machines. The COM/LPT port registry values are detailed at docs.citrix.com.

Print Driver for Non-Windows Clients

This section applies to Windows 2012 R2, Windows 8.1, and Windows 10 VDAs.

From Mac Client Printer Mapping Fix for Windows 8/8.1 and Windows Server 2012/2012R2. By default, Non-Windows clients cannot map printers due to a missing print driver on the VDA machine.

  1. Requirements:
    • Internet Access
    • Windows Update service enabled
  2. Click Start and run Devices and Printers.
  3. In the Printers section, highlight a local printer (e.g. Microsoft XPS Document Writer). Then in the toolbar click Print server properties.
  4. Switch to the Drivers tab. Click Change Driver Settings.
  5. Then click Add.
  6. In the Welcome to the Add Printer Driver Wizard page, click Next.
  7. In the Processor Selection page, click Next.
  8. In the Printer Driver Selection page, click Windows Update. The driver we need won’t be in the list until you click this button. Internet access is required.
  9. Once Windows Update is complete, highlight HP on the left and then select HP Color LaserJet 2800 Series PS (Microsoft) on the right. Click Next.
  10. In the Completing the Add Printer Driver Wizard page, click Finish.
  11. Repeat these instructions to install the following additional drivers:
    • HP LaserJet Series II
    • HP Color LaserJet 4500 PCL 5

SSL for VDA

If you intend to use HTML5 Receiver internally, install certificates on the VDAs so the WebSockets (and ICA) connection will be encrypted. Internal HTML5 Receivers will not accept clear text WebSockets. External users don’t have this problem since they are SSL-proxied through NetScaler Gateway. Notes:

  • Each Virtual Delivery Agent needs a machine certificate that matches the machine name. This is feasible for a small number of persistent VDAs. For non-persistent VDAs, you‚Äôll need some automatic means for creating machine certificates every time they reboot.
  • As detailed in the following procedure, use PowerShell on the Controller to enable SSL for the Delivery Group. This forces SSL for every VDA in the Delivery Group, which means every VDA in the Delivery Group must have SSL certificates installed.

The Citrix blog post How To Secure ICA Connections in XenApp and XenDesktop 7.6 using SSL has a method for automatically provisioning certificates for pooled virtual desktops by enabling certificate auto-enrollment and setting up a task that runs after the certificate has been enrolled. Unfortunately this does not work for Remote Desktop Session Host.

The following instructions can be found at Configure SSL on a VDA using the PowerShell script at docs.citrix.com.

  1. On the VDA machine, run mmc.exe.
  2. Add the Certificates snap-in.
  3. Point it to Local Computer.
  4. Request a certificate from your internal Certificate Authority. You can use either the Computer template or the Web Server template.

    You can also use group policy to enable Certificate Auto-Enrollment for the VDA computers.
  5. Browse to the XenApp/XenDesktop 7.8 ISO. In the Support\Tools\SslSupport folder, shift+right-click the Enable-VdaSSL.ps1 script and click Copy as path.
  6. Run PowerShell as administrator (elevated).
  7. Run the command Set-ExecutionPolicy unrestricted. Enter Y to approve.
  8. In the PowerShell prompt, type in an ampersand (&), and a space.
  9. Right-click the PowerShell prompt to paste in the path copied earlier.
  10. At the end of the path, type in -Enable
  11. If there’s only one certificate on this machine, press Enter.
  12. If there are multiple certificates, you’ll need to specify the thumprint of the certificate you want to use. Open the Certificates snap-in, open the properties of the machine certificate you want to use, and copy the Thumbprint from the Details tab.

    In the PowerShell prompt, at the end of the command, enter ?CertificateThumbPrint, add a space, and type quotes (").
    Right-click the PowerShell prompt to paste the thumbprint.
    Type quotes (") at the end of the thumbprint. Then remove all spaces from the thumbprint. The thumbprint needs to be wrapped in quotes.
  13. If this VDA machine has a different service already listening on 443 (e.g. IIS), then the VDA needs to use a different port for SSL connections. At the end of the command in the PowerShell prompt, enter -SSLPort 444 or any other unused port.
  14. Press <Enter> to run the Enable-VdaSSL.ps1 script.
  15. Press <Y> twice to configure the ACLs and Firewall.
  16. You might have to reboot before the settings take effect.
  17. Login to a Controller and run PowerShell as Administrator (elevated).
  18. Run the command asnp Citrix.*
  19. Enter the command:
    Get-BrokerAccessPolicyRule -DesktopGroupName '<delivery-group-name>' | Set-BrokerAccessPolicyRule ?HdxSslEnabled $true

    where <delivery-group-name> is the name of the Delivery Group containing the VDAs.

  20. You can run Get-BrokerAccessPolicyRule -DesktopGroupName '<delivery-group-name>' to verify that HDX SSL is enabled.
  21. Also run the following command:
    Set-BrokerSite ‚ÄďDnsResolutionEnabled $true

You should now be able to connect to the VDA using the HTML5 Receiver from internal machines.

Anonymous Accounts

If you intend to publish apps anonymously then follow this section.

  1. Anonymous accounts are created locally on the VDAs. When XenDesktop creates Anon accounts it gives them an idle time as specified at HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Citrix\AnonymousUserIdleTime. The default is 10 minutes. Adjust as desired.
  2. You can pre-create the Anon accounts on the VDA by running “C:\Program Files\Citrix\ICAConfigTool\CreateAnonymousUsersApp.exe”. If you don‚Äôt run this tool then Virtual Delivery Agent will create them automatically when users log in.
  3. You can see the local Anon accounts by opening Computer Management, expanding System Tools, expand Local Users and Groups and clicking Users.
  4. If you open one of the accounts, on the Sessions tab, notice that idle timeout defaults to 10 minutes. Feel free to change it.

Group Policy for Anonymous Users

Since Anonymous users are local accounts on each Virtual Delivery Agent, domain-based GPOs will not apply. To work around this limitation, you’ll need to edit the local group policy on each Virtual Delivery Agent.

  1. On the Virtual Delivery Agent, run gpedit.exe.
  2. Open the File menu and click Add/Remove Snap-in.
  3. Highlight Group Policy Object Editor and click Add to move it to the right.
  4. In the Welcome to the Group Policy Wizard page, click Browse.
  5. On the Users tab, select Non-Administrators.
  6. Click Finish.
  7. Now you can configure group policy to lockdown sessions for anonymous users. Since this is a local group policy, you’ll need to repeat the group policy configuration on every Virtual Delivery Agent image. Also, Group Policy Preferences is not available in local group policy.

Antivirus

Install antivirus using your normal procedure. Instructions vary for each Antivirus product.

Microsoft’s virus scanning recommendations (e.g. exclude group policy files) Рhttp://support.microsoft.com/kb/822158.

Citrix’s Recommended Antivirus Exclusions

Citrix CTX127030 Citrix Guidelines for Antivirus Software Configuration: Based on Citrix Consulting’s field experience, organizations might wish to consider configuring antivirus software on session hosts with the settings below.

  • Scan on write events or only when files are modified. It should be noted that this configuration is typically regarded as a high security risk by most antivirus vendors. In high-security environments, organizations should consider scanning on both read and write events to protect against threats that target memory, such as Conficker variants.
  • Scan local drives or disable network scanning. This assumes all remote locations, which might include file servers that host user profiles and redirected folders, are being monitored by antivirus and data integrity solutions.
  • Exclude the pagefile(s) from being scanned.
  • Exclude the Print Spooler directory from being scanned.
  • Remove any unnecessary antivirus related entries from the Run key (HKLM\Software\Microsoft\Windows\Current Version\Run).
  • If using the streamed user profile feature of Citrix Profile management, ensure the antivirus solution is configured to be aware of Hierarchical Storage Manager (HSM) drivers. For more information, refer to Profile Streaming and Enterprise Antivirus Products.

Symantec

Symantec links:

Non-persistent session hosts:

After you have installed the Symantec Endpoint Protection client and disabled Tamper Protection, open the registry editor on the base image.

  1. Navigate to HKEY_LOCAL_MACHINE\SOFTWARE\Symantec\Symantec Endpoint Protection\SMC.
  2. Create a new key named Virtualization.
  3. Under Virtualization, create a key of type DWORD named IsNPVDIClient and set it to a value of 1.

To configure the purge interval for offline non-persistent session host clients:

  1. In the Symantec Endpoint Protection Manager console, on the Admin page, click Domains.
  2. In the Domains tree, click the desired domain.
  3. Under Tasks, click Edit Domain Properties.
  4. On the Edit Domain Properties > General tab, check the Delete non-persistent VDI clients that have not connected for specified time checkbox and change the days value to the desired number. The Delete clients that have not connected for specified time option must be checked to access the option for offline non-persistent VDI clients.
  5. Click OK.

Make the following changes to the Communications Settings policy:

  1. Configure clients to download policies and content in Pull mode
  2. Disable the option to Learn applications that run on the client computers
  3. Set the Heartbeat Interval to no less than one hour
  4. Enable Download Randomization, set the Randomization window for 4 hours

Make the following changes to the Virus and Spyware Protection policy:

  1. Disable all scheduled scans
  2. Disable the option to “Allow startup scans to run when users log on” (This is disabled by default)
  3. Disable the option to “Run an ActiveScan when new definitions Arrive”

Avoid using features like application learning which send information to the SEPM and rely on client state to optimize traffic flow

Linked clones:

To configure Symantec Endpoint Protection to use Virtual Image Exception to bypass the scanning of base image files

  1. On the console, open the appropriate Virus and Spyware Protection policy.
  2. Under Advanced Options, click Miscellaneous.
  3. On the Virtual Images tab, check the options that you want to enable.
  4. Click OK

 

Trend Micro

Citrix¬†CTX136680 –¬†Slow Server Performance After Trend Micro Installation. Citrix session hosts experience slow response and performance more noticeable while users try to log in to the servers. At some point the performance of the servers is affected, resulting in issues with users logging on and requiring the server to be restarted. This issue is more noticeable on mid to large session host infrastructures.

Trend Micro has provided a registry fix for this type of issue. Create the following registry on all the affected servers. Add new DWORD Value as:

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\TmFilterParameters] “DisableCtProcCheck”=dword:00000001

Trend Micro Links:

Optimize Performance

VDA Optimizer

Installation of the VDA might have already done this but there’s no harm in doing it again. This tool is only available if you installed VDA in Master Image mode.

  1. On the master VDA, go to C:\Program Files\Citrix\PvsVm\TargetOSOptimizer and run TargetOSOptimizer.exe.
  2. Then click OK. Notice that it disables Windows Update.

RDSH

Citrix CTX131577 XenApp 6.x (Windows 2008 R2) РOptimization Guide is a document with several registry modifications that are supposed to improve server performance. Ignore the XenApp 6 content and instead focus on the Windows content.

Citrix CTX131995 User Cannot Launch Application in Seamless Mode in a Provisioning Services Server when XenApp Optimization Best Practices are Applied. Do not enable NtfsDisable8dot3NameCreation

Norskale has Windows 2008 R2 Remote Desktop and XenApp 6 Tuning Tips Update.

Windows 7

Microsoft has compiled a list of links to various optimization guides.

It’s a common practice to optimize a Windows 7 virtual machine (VM) template (or image) specifically for VDI use. Usually such customizations include the following.

  • Minimize the footprint, e.g. disable some features and services that are not required¬†when the OS is used in¬†‚Äústateless‚ÄĚ or ‚Äúnon-persistent‚ÄĚ fashion. This is especially true for disk-intensive workloads since disk I/O is a common bottleneck for VDI deployment. (Especially if there are multiple VMs with the same I/O patterns that are timely aligned).
  • Lock down user interface (e.g. optimize for specific task workers).

With that said the certain practices are quite debatable and vary between actual real-world deployments. Exact choices whether to disable this or that particular component¬†depend on customer requirements and VDI usage patterns. E.g. in personalized virtual desktop scenario there’s much less things to disable since the machine is not completely ‚Äústateless‚ÄĚ. Some customers rely heavily on particular UI functions and other can relatively easily trade them off for the sake of performance or standardization (thus¬†enhance supportability and potentially¬†security). This is one of the primary reasons why Microsoft doesn’t publish any ‚ÄúVDI Tuning‚ÄĚ guide officially.

Though there are a number of such papers and even tools published either by the community or third parties. This Wiki page is aimed to serve as a consolidated and comprehensive list of such resources.

Daniel Ruiz XenDesktop Windows 7 Optimization and GPO’s Settings

Microsoft Whitepaper Performance Optimization Guidelines for Windows 7 Desktop Virtualization

Windows 10 / Windows 8.1 / Windows 2012 R2

Optimization Notes:

  • If this machine is provisioned using Provisioning Services, do not disable the Shadow Copy services.
  • Windows 8 detects VDI and automatically disables SuperFetch. No need to disable it yourself.
  • Windows 8 automatically disables RSS and TaskOffload if not supported by the NIC.

Seal and Shut Down

If this session host will be a master image in a Machine Creation Services or Provisioning Services catalog, after the master is fully prepared (including applications), do the following:

  1. Go to the properties of the C: drive and run Disk Cleanup.
  2. On the Tools tab, click Optimize to defrag the drive.
    `
  3. Run slmgr.vbs /dlv and make sure it is licensed with KMS and has at least one rearm remaining. It is no longer necessary to manually rearm licensing. XenDesktop will do it automatically.
  4. Run Delprof2 to clean up local profiles. Get it from http://helgeklein.com/download/.
  5. Machine Creation Services and Provisioning Services require DHCP.

Session hosts commonly have DHCP reservations.

  • Shut down the master image. You can now use Studio or Provisioning Services to create a catalog of linked clones.

Troubleshooting – Graphics

If Windows 7 on vSphere, don’t install the VMware SVGA driver. For more details, see¬†CTX201804¬†Intermittent Connection Failures/Black Screen Issues When Connecting from Multi-Monitor Client Machines to Windows 7 VDA with VDA 7.x on vSphere/ESXi.

For an explanation of Citrix’s graphics policy settings, see A graphical deep dive into XenDesktop 7 and What’s new with HDX display in XenDesktop & XenApp 7.x?

Citrix Knowledgebase article CTX200370 – How to Determine HDX Display Mode: Use wmic or HDX Monitor as described in the article to determine which of the following display mode options is being used:

  • DCR (Desktop Composition Redirection)
  • H.264 / H.264 Compatibility Mode
  • Legacy Graphics Mode

Citrix Blog Post ‚Äď Site Wide View of HDX Graphics Modes; PowerShell script to display graphics mode of currently connected sessions.

Citrix Blog post – Optimising the performance of HDX 3D Pro ‚Äď Lessons from the field

From Citrix Tips ‚Äď Black Screen Issues with 7.x VDA: Users would make a successful ICA connection but the screen would stay totally black.

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\vbdenum]

  • “Start”=dword:00000001
  • “MaxVideoMemoryBytes”=dword:06000000
  • “Group”= “EMS”

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\vd3d]

  • “MaxVideoMemoryBytes”=dword:00000000

From Citrix Knowledgebase article CTX200257 –¬†Screen Issues Connecting to 4K Resolution Monitors in DCR Mode:

  1. Calculate the video memory that is required for 4K monitor using the following formula:
    Sum of total monitors (Width * height * 4 * X) where width and height are resolution of the monitor.
    X = 2 if VDA is Windows 7 OR X = 3 if VDA is Windows 88.110
    Example:¬†Suppose a Windows 7 VDA is connecting to a client that has dual 4K monitors (3840×2160), then video buffer should be:¬†(3840×160 x 4 x 2) + (3840 x 2160 x 4 x 2) = ~115MB
  2. Open the registry (regedit) and navigate to:
    HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\vd3d
  3. Increase the value of “MaxVideoMemoryBytes‚ÄĚ REG_DWORD value to the above calculated memory.
  4. Reboot the VDA

From Citrix Discussions: To exclude applications from Citrix 3D rendering, create a REG_DWORD registry value ‚Äúapp.exe‚ÄĚ with value 0 or a registry value ‚Äú*‚ÄĚ with value 0.

  • XD 7.1 and XD 7.5:
    • x86: reg add hklm\software\citrix\vd3d\compatibility /v * /t REG_DWORD /f /d 0
    • x64: reg add hklm\software\Wow6432Node\citrix\vd3d\compatibility /v * /t REG_DWORD /f /d 0
  • XD 7.6/7.7/7.8 both x86 and x64:
    • reg add hklm\software\citrix\vd3d\compatibility /v * /t REG_DWORD /f /d 0

Wildcards are not supported. The asterisk * here has a special meaning ‚Äúall apps‚ÄĚ but is not a traditional wildcard. To blacklist multiple apps e.g. both appa.exe and appb.exe must be done by creating a registry value for each app individually.

This is most problematic in Remote PC since most physical PCs have GPUs. I recently had to blacklist Internet Explorer to prevent lockup issues when switching back to physical.

Uninstall VDA

Uninstall the VDA from Programs and Features.

Then see CTX209255 VDA Cleanup Utility.

Related Pages

Director 7.8

Last Modified: Sep 2, 2018 @ 7:53 am

Navigation

Director on Standalone Server

If you are installing Director 7.8 on a standalone server, see Citrix CTX142260 Installing or Upgrading to Citrix Director 7.6.200

  1. If you intend to install Director on a standalone server, start with running AutoSelect.exe from the XenApp/XenDesktop 7.8 media.
  2. On the right, click Citrix Director.
  3. It will ask you for the location of one Controller in the farm. Then finish the installation wizard.
  4. In IIS Manager, go to Default Web Site > Director > Application Settings, find Service.AutoDiscoveryAddresses and make sure it points to a Controller and not to localhost.

  5. If you built multiple Director servers, then use NetScaler to load balance them.

Director Grooming

If XenDesktop is not Platinum Edition then all historical Director data is groomed at 7 days.

For XenDesktop/XenApp Platinum Edition, by default, most of the historical Director data is groomed at 90 days. This can be adjusted up to 367 days by running a PowerShell cmdlet.

  1. On a XenDesktop Delivery Controller, run PowerShell and run asnp Citrix.*

  2. Run Get-MonitorConfiguration to see the current grooming settings.
  3. Run Set-MonitorConfiguration to change the grooming settings.

Director Single Sign-on

You can configure Director 7.8 to support Integrated Windows Authentication (Single Sign-on). Note: there seem to be issues when not connecting from the local machine or when connecting through a load balancer.

  1. Run IIS Manager. You can launch it from Server Manager (Tools menu) or from the Start Menu or by running inetmgr.
  2. On the left, expand Sites, expand Default Web Site, and click Director.
  3. In the middle, double-click Authentication in the IIS section. 
  4. Right-click Windows Authentication and Enable it.
  5. Right-click Anonymous Authentication and Disable it.
  6. Pass-through auth won’t work from another computer until you set the http SPN for the Director server. See¬†Director 7.7 Windows Authentication not working with NS LB at discussions.citrix.com.
  7. If Director is not installed on a Controller then you’ll need to configure Kerberos delegation.
  8. If you are load balancing Director then additional config is required. See Director 7.7 Windows Authentication not working with NS LB at discussions.citrix.com for more info.
    1. Create an AD service account that will be used as the Director’s ApplicationPoolIdentity.
    2. Create SPN and link it to the service account.
      setspn -S http/loadbalanced_URL domain\user
    3. Trust the user account for delegation to any service (Kerberos only) (trust the Director servers for delegation is not necessary in this case). You have to create the SPN before you can do this step.
    4. In IIS manager, on the Application Pools (Director), specify the Identity as user we have created in step 1.
    5. In IIS manager, select Default Web Site and open the Configuration Editor.
    6. Use the drop-down to navigate to the following section:

      system.webServer/security/authentication/windowsAuthentication
    7. Set useAppPoolCredentials = True and useKernelMode = False. Click Apply on the top right.

  9. When you connect to Director you will be automatically logged in. You can change the login account by first logging off.
  10. Then change the drop-down to User credentials.

Director – Multiple XenDesktop Sites

  1. Run IIS Manager. You can launch it from Server Manager (Tools menu) or from the Start Menu or by running inetmgr.
  2. On the left, expand Sites, expand Default Web Site, and click Director.
  3. In the middle pane, double-click Application Settings.
  4. Find the entry for Service.AutoDiscoveryAddresses and double-click it.
  5. If Director is installed on a Controller, localhost should already be entered.
  6. Add a comma and the NetBIOS name of one of the controllers in the 2nd XenDesktop Site (farm). Only enter one Controller name. If you have multiple Director servers, you can point each Director server to a different Controller in the 2nd XenDesktop Site (farm).
  7. According to Citrix CTX200543 Desktop Director Access Fails After XenDesktop 7.5 is Upgraded to 7.6, the addresses should be NetBIOS names, not FQDN. Click OK.

Director Alerts and Notifications

Director 7.8 supports alert conditions and email notifications. This feature requires XenApp/XenDesktop to be licensed with Platinum Edition. See Citrix Blog Post Configuring & Managing Alerts and Notifications Using Director for more information.

  1. While logged into Director, at the top of the page click the Alerts button.
  2. Switch to the Email Server Configuration tab.
  3. Enter your SMTP information and click Send Test Message. Then click Save.

  4. Switch to the Citrix Alerts Policy tab.
  5. There are three high-level categories of alerts: Site Policy, Delivery Group Policy, and Server OS Policy. Click whichever one you want to configure.
  6. Then click Create.
  7. Give the alert a name.
  8. On the bottom left, select a condition and enter thresholds.
  9. On the bottom right, in the Notifications preferences section, click Add.
  10. Enter an email address and click Add.
  11. Click Save when done. Feel free to create more alerts and notifications.
  12. Citrix has an experimental Desktop Notification Tool. See Citrix Blog Post¬†Desktop Notification Tool For Citrix XenDesktop.¬†ūüí°
    ablogpic2

Director – SCOM Integration

Director 7.8 can display alerts from System Center Operations Manager 2012 R2. This feature requires XenApp/XenDesktop Platinum Edition.

  1. See Configure SCOM integration at docs.citrix.com for detailed configuration instructions. Also see Marius Sandbu Integrating Citrix XenDesktop 7.7 and System Center Operations Manager.
  2. If Director server or System Center Operations Manager server is 2008 R2, then login to the 2008 R2 server, open PowerShell and run Enable-PSRemoting. Yes to everything. This is not needed on Windows Server 2012 R2 servers.
  3. On Director 7.8 server, run C:\inetpub\wwwroot\Director\tools\DirectorConfig.exe /configscom
  4. FYI, the DirectorConfig.exe /configscom command enables the following features on the Director server: /FeatureName:IIS-NetFxExtensibility45 /FeatureName:IIS-ASPNET45 /FeatureName:WCF-HTTP-Activation45
  5. FYI, the System Center Operations Manager server is listed in IIS Manager at Default Web Site > Director > Application Settings (middle pane) > Connector.SCOM.ManagementServer.
  6. On the System Center Operations Manager server, edit Remote Management Users local group and add Citrix Admins and other Director users.
  7. In System Center Operations Manager Console, go to Administration > User Roles and edit Operations Manager Operators. Add the Citrix Admins and other Director users.
  8. See Citrix Blog Post SCOM Alerts in Citrix Director for information on how to view System Center Operations Manager alerts in Director.

Director Tweaks

Prepopulate the domain field

From http://www.xenblog.dk/?p=33:¬†On the Controllers having the Director role installed, locate and edit the ‚ÄėLogOn.aspx‚Äô file. By default you can find it at ‚ÄúC:\inetpub\wwwroot\Director\Logon.aspx‚ÄĚ

In line 450¬†you will have the following. To find the line, search for¬†ID=”Domain”. Note:¬†onblur and¬†onfocus¬†attributes were added in newer versions of Director.

<asp:TextBox ID="Domain" runat="server" CssClass="text-box" onfocus="showIndicator(this);" onblur="hideIndicator(this);"></asp:TextBox>

In the ID=”Domain” element, insert a Text¬†attribute and set it to your domain name. Don’t change or add any other attributes. Save the file.

<asp:TextBox ID="Domain" runat="server" Text="Corp" CssClass="text-box" onfocus="showIndicator(this);" onblur="hideIndicator(this);"></asp:TextBox>

This will prepopulate the domain field text box with your domain name and still allow the user to change it, if that should be required. Note: this only seems to work if Single Sign-on is disabled.

Session timeout

By default the idle time session limit of the Director is 245 min. If you wish to change the timeout, here is how to do it.

  1. Log on to the Director Server as an administrator
  2. Open the ‚ÄėIIS Manager‚Äô
  3. Browse to ‚ÄėSitesDefault Web SiteDirector‚Äô in the left hand pane.
  4. Open ‚ÄėSession State‚Äô in the right hand pane
  5. Change the ‚ÄėTime-out (in minutes)‚Äô value under ‚ÄėCookie Settings‚Äô
  6. Click ‚ÄėApply‚Äô in the Actions list

SSL Check

From http://euc.consulting/blog/citrix-desktop-director-2-1: If you are not securing Director with an SSL certificate you will get this error at the logon screen.

To stop this:

  1. Log on to the Director Server as an administrator
  2. Open the ‚ÄėIIS Manager‚Äô
  3. Browse to ‚ÄėSitesDefault Web SiteDirector‚Äô in the left hand pane.
  4. Open ‚ÄėApplication Settings‚Äô in the right hand pane
  5. Set EnableSslCheck to false.

Disable Activity Manager

From Disable the visibility of running applications in the Activity Manager in Advanced Configuration at¬†docs.citrix.com: By default, the Activity Manager in Director displays a list of all the running applications and the Windows description in the title bars of any open applications for the user’s session. This information can be viewed by all administrators that have access to the Activity Manager feature in Director. For Delegated Administrator roles, this includes Full administrator, Delivery Group administrator, and Help Desk Administrator.

To protect the privacy of users and the applications they are running, you can disable the Applications tab from listing running applications.

  • On the VDA, modify the registry key located at¬†HKLM\Software\Citrix\Director\TaskManagerDataDisplayed. By default, the key is set to 1. Change the value to 0, which means the information will not be displayed in the Activity Manager.
  • On the server with Director installed, modify the setting that controls the visibility of running applications. By default, the value is true, which allows visibility of running applications in the¬†Applications Change the value to false, which disables visibility. This option affects only the Activity Manager in Director, not the VDA.¬†Modify the value of the following setting:
    UI.TaskManager.EnableApplications = false

Large Active Directory

From CTX133013 Desktop Director User Account Search Process is Slow or Fails: By default, all the Global Catalogs for the Active Directory Forest are searched using Lightweight Directory Access Protocol (LDAP). In a large Active Directory environment, this query can take some time or even time out.

  1. In Information Server (IIS) Management, under the Desktop Director site, select Application Settings and add a new value called ActiveDirectory.ForestSearch. Set it to False. This disables searching any domain except the user’s domain and the server’s domain.
  2. To search more domains, add the searchable domain or domains in the ActiveDirectory.Domains field.

Site Groups

From Citrix Blog Post Citrix Director 7.6 Deep-Dive Part 4: Troubleshooting Machines:

If there are a large number of machines, the Director administrator can now configure site groups to perform machine search so that they can narrow down searching for the machine inside a site group. The site groups can be created on the Director server by running the configuration tool via command line by running the command:

C:\inetpub\wwwroot\Director\tools\DirectorConfig.exe /createsitegroups

Then provide a site group name and IP address of the delivery controller of the site to create the site group.

Director – Saved Filters

From Scott Osborne and Jarian Gibson at Citrix Discussions: In Director, you can create a filter and save it.

The saved filter is then accessible from the Filters menu structure.

The saved filters are stored on each Director server at C:\Inetpub\wwwroot\Director\UserData. Observations:

  • Each user has their own saved filters.
  • The saved filters are not replicated across Director servers. You can schedule a robocopy script to do this automatically.
  • When upgrading Director, the saved filters are deleted?

Director – Custom Reports

The Monitoring database contains more data than is exposed in Director. To view this data, the Monitoring service has an OData Data Feed that can be queried.

Go to Citrix Blog Post Obtain XenDesktop Custom report through Citrix Director and download the tool. Once installed, in Director, go to Trends > CustomReport to construct an oData query.


Delivery Controller 7.8

Last Modified: Sep 2, 2018 @ 7:53 am

Navigation

Preparation

Citrix Licensing РIf you are going to use an existing Citrix Licensing Server, upgrade it to 11.13.1.2 build 16002.

SQL Databases

  • Citrix blog post Database Sizing Tool for XenDesktop 7¬†and¬†Bugfix for Database Sizing Tool
  • Citrix article¬†CTX114501 –¬†Supported Databases for Citrix Products
  • There are typically three databases: one for the Site (aka farm), one for Logging (audit log) and one for Monitoring (Director).
    • The monitoring¬†database name must not have any spaces in it. See¬†CTX200325 Database Naming Limitation when Citrix Director Accesses Monitoring Data Using OData APIs
    • If you want Citrix Studio to create the SQL databases automatically, then the person running Studio must be a sysadmin on the SQL instances. No lesser role¬†will work.
    • As an alternative, you can use Citrix Studio to create SQL scripts and then run those scripts on the SQL server. In that case you only need the dbcreator and securityadmin roles.
    • It is possible to create the databases in advance. However, you must use the non-default¬†Latin1_General_100_CI_AS_KS collation. Then use Citrix Studio to configure the database tables.
  • Citrix recommends SQL Mirroring because it has the fastest failover.
    • SQL Mirroring requires two SQL Standard Edition servers and one SQL Express for the witness server.
    • You can setup SQL Mirroring either before installing XenDesktop or after installing XenDesktop. If after, then see Citrix¬†CTX140319 to manually change XenDesktop’s database connection strings How to Migrate XenDesktop Database to New SQL Server.
    • To setup SQL Mirroring, see Rob Cartwright: Configure SQL Mirroring For Use With XenDesktop, XenApp, and PVS Databases.
    • If you try to stretch the mirror across datacenters, the SQL witness must be placed in a third datacenter that has connectivity to the other two datacenters. However, stretching a single XenApp/XenDesktop site/farm and corresponding SQL mirror across datacenters is not recommended.
  • AlwaysOn Availability Groups and SQL Clustering are also supported. However, these features require the much more expensive SQL Enterprise Edition.

Windows Features

  • Installing¬†Group Policy Management on the Delivery Controller lets you edit GPOs and have access to the Citrix Policies node in the GPO Editor. Or you can install Studio on a different machine that has GPMC installed.
  • vSphere Web Client – if you will connect to vSphere Web Client from the Controller¬†machine, Flash Player is only available for IE if you install the Desktop Experience feature. Or you can use Google Chrome.

vSphere

  • Create a role in vSphere Client. Assign a service account to the role at the Datacenter or higher level.

Delivery Controller Install

  1. A typical size for the Controller VMs is 2-4 vCPU and 8 GB of RAM.
  2. Make sure the User Right Log on as a service includes NT SERVICE\ALL SERVICES or add NT SERVICE\CitrixTelemetryService to the User Right.
  3. On two Delivery Controllers, install the Delivery Controller software from the XenApp/XenDesktop 7.8 media. Download it from XenApp Enterprise, XenApp Platinum, XenDesktop Enterprise, or XenDesktop Platinum, depending on your license. Go to the downloaded XenDesktop 7.8 ISO and run AutoSelect.exe.
  4. Click Start next to either XenApp or XenDesktop. The only difference is the product name displayed in the installation wizard.
  5. On the left, click Delivery Controller.
  6. You can install all components on one server or on separate servers. Splitting them out is only necessary in large environments or if you want to share the components (e.g. Licensing, StoreFront, Director) across multiple farms.
  7. In the Features page, uncheck the box next to Install Microsoft SQL Server 2012 SP1 Express and click Next.
  8. In the Summary page, click Install.
  9. In the Installation Successful page, click Finish. Studio will automatically launch.
  10. Ensure the two Controller VMs do not run on the same hypervisor host. Create an anti-affinity rule.

Create Site

There are several methods of creating the databases for XenApp/XenDesktop:

  • If you have sysadmin permissions to SQL, let Citrix Studio create the databases automatically.
  • If you don‚Äôt have sysadmin permissions to SQL then use Citrix Studio to generate SQL scripts and send them to a DBA.

Database Mirroring

If you are not using database mirroring then skip to the next section.

You can setup SQL Mirroring either before configuring XenDesktop or after configuring XenDesktop.

  • If before, then the empty databases (Site, Logging, Monitoring) must use¬†the Latin1_General_100_CI_AS_KS collation, which is not the default.
  • If SQL Mirroring is already setup then XenDesktop will detect it and set the database connection strings accordingly.¬†Or you can manually change the database connection strings later as detailed at Citrix CTX140319 How to Migrate XenDesktop Database to New SQL Server.
  • If you use Citrix Studio to create SQL scripts that¬†populate the databases, then there will be separate SQL scripts for the Primary and Partner.

To verify mirroring after the XenDesktop configuration has completed, run the PowerShell cmdlet get-configdbconnection and ensure that the Failover Partner has been set in the connection string to the mirror.

Use Studio to Create Database Scripts

  1. Launch Citrix Studio. After it loads, click Deliver applications and desktops to your users.
  2. In the Introduction page, select An empty, unconfigured site. This reduces the number of pages in this Setup wizard. The other pages will be configured later.
  3. Enter a Site Name (aka farm name) and click Next. Only administrators see the farm name.
  4. In the Databases page, change the selection to Generate scripts to manually set up databases on the database server.
  5. Change the database names if desired.
  6. If you are building two Controllers, click Select near the bottom of the same page.
  7. Click Add.
  8. Enter the FQDN of the second Controller and click OK. Note: the Delivery Controller software must already be installed on that machine.
  9. Then click Save.
  10. If you hover your mouse over 2 selected, it will show both Controllers. Click Next.
  11. In the Additional Features page, click Next.
  12. In the Summary page, click Generate scripts.
  13. A folder will open with six scripts. Edit each of the scripts.
  14. Near the top of each script are two lines to create the database. Uncomment both lines (including the go line). Then save and close the file.

  15. Once all of the scripts are edited you can send them to your DBA.
  16. On the Principal SQL Server, open the file Site_Principal.sql.

  17. Open the Query menu and click SQLCMD Mode.
  18. Then execute the script.
  19. If SQLCMD mode was enabled properly then the output should look something like this:
  20. If you have a mirrored database, run the second script on the mirror SQL instance. Make sure SQLCMD mode is enabled.


  21. Repeat for the Logging_Pricipal.sql script.
  22. You’ll have to enable SQLCMD Mode for each script you open.


  23. Repeat for the Monitoring_Principal.sql script.
  24. Once again enable SQLCMD Mode.


  25. The person running Citrix Studio must be added to the SQL Server as a SQL Login and granted the public server role.

  26. Back in Citrix Studio, click the Continue database configuration and Site setup button.
  27. In the Database page, enter the SQL server name and instance name and click Next.

  28. On the Licensing page, enter the name of the Citrix License Server and click Connect. . If you installed Licensing with your Delivery Controller, then simply enter localhost.
  29. XenApp/XenDesktop 7.8 requires the newest Licensing Server. If your server isn’t compatible, leave it set to localhost and fix it later.
  30. If the Certificate Authentication appears, select Connect me and click Confirm.
  31. Then select your license and click Next.
  32. In the Additional Features page, click Next.
  33. In the Summary page, make your selection for Customer Experience Improvement Program and click Finish.
  34. It will take some time for the site to be created.

Verify Database Mirroring

If your database is mirrored, when you run get-brokerdbconnection, you’ll see the Failover Partner in the database connection string.

Second Controller

When building the first Delivery Controller the scripts might have already included the second Delivery Controller. Thus no special SQL permissions are needed. If the second Delivery Controller has not already been added to the SQL databases then there are several methods of adding a second Controller to the databases for XenApp/XenDesktop:

  • If you have sysadmin permissions to SQL, let Citrix Studio modify the databases automatically.
  • If you don‚Äôt have sysadmin permissions to SQL then do use Citrix Studio to generate SQL scripts and send them to a DBA.

To use Citrix Studio to create the SQL Scripts:

  1. On the first Delivery Controller, if StoreFront is installed, delete the default StoreFront store (/Citrix/Store) and recreate it with your desired Store name (e.g. /Citrix/CompanyStore).
  2. On the 2nd Delivery Controller, install XenDesktop as detailed earlier.
  3. After running Studio, click Connect this Delivery Controller to an existing Site.
  4. Enter the name of the first Delivery Controller and click OK.
  5. If you don’t have elevated SQL permissions, click No when asked if you want to update the database automatically.
  6. Click Generate scripts.
  7. A folder will open with six scripts. If not mirroring, then the top three scripts need to be sent to a DBA. If mirroring, send all six.
  8. On the SQL Server, open open one of the .sql files.

  9. Open the Query menu and click SQLCMD Mode.
  10. Then execute the XenDesktop script.
  11. If SQLCMD mode was enabled properly then the output should look something like this:
  12. Back in Citrix Studio, click OK.
  13. In the Studio, under Configuration > Controllers, you should see both controllers.
  14. You can also test the site again if desired.

Studio ‚Äď Slow Launch

From B.J.M. Groenhout at Citrix Discussions: The following adjustments can be made if Desktop Studio (and other Citrix management Consoles) will start slowly:

  • Within Internet Explorer, go to Tools ‚Äď Internet Options ‚Äď Tab Advanced ‚Äď Section Security and uncheck the option Check for publisher‚Äôs certificate revocation

After adjustment Desktop Studio (MMC) will be started immediately. Without adjustment it may take some time before Desktop Studio (MMC) is started.

Registry setting (can be deployed using Group Policy Preferences):

  • HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\WinTrust\Trust Providers\Software Publishing
    • State“=dword:00023e00

Database Maintenance

View Logging Database

To view the contents of the Logging Database, in Studio, click the Logging node. On the right is Create Custom Report. See Citrix article CTX138132 Viewing Configuration Logging Data Not Shown for more info.

Enable Read-Committed Snapshot

The XenDesktop Database can become heavily utilized under load in a large environment. Therefore Citrix recommends enabling the Read_Committed_Snapshot option on the XenDesktop databases to remove contention on the database from read queries. This can improve the interactivity of Studio and Director. It should be noted that this option may increase the load on the tempdb files. See Citrix article CTX137161 How to Enable Read-Committed Snapshot in XenDesktop for configuration instructions.

Change Database Connection Strings

Sometimes the database connection strings need to be modified:

  • When moving the SQL databases to a different SQL server
  • When enabling mirroring after the databases have already been configured in Studio.

CTX140319 How to Migrate XenDesktop Database to New SQL Server has the correctly ordered list of PowerShell commands to change the database connection strings. Make sure PowerShell is running as administrator before running these commands.

XenApp/XenDesktop 7.8 adds set-applibdbconnection¬†so make sure the commands include setting that DB connection too.¬† ūüí°

Step 5 assumes Site, Monitoring, and Logging are one database so you’ll need to adjust the commands if those databases are split. In particular, change $cs in¬†Set-LogDBConnection -DataStore Logging -DBConnection $cs to the Logging database. And change $cs in¬†Set-MonitorDBConnection -DataStore Monitor -DBConnection $cs to the Monitoring database. The other commands don’t need to be changed.

Director Grooming

If XenDesktop is not Platinum Edition then all historical Director data is groomed at 7 days.

For XenDesktop/XenApp Platinum Edition, by default, most of the historical Director data is groomed at 90 days. This can be adjusted up to 367 days by running a PowerShell cmdlet.

  1. On a Delivery Controller, run PowerShell and run asnp Citrix.*

  2. Run Get-MonitorConfiguration to see the current grooming settings.
  3. Run Set-MonitorConfiguration to change the grooming settings.

Studio Administrators

Full Administrators

  1. In the Studio, under Configuration, click the Administrators node. The first time you access the node you’ll see a Welcome page. Feel free to check the box and then click Close.
  2. On the Administrators tab, right-click and click Create Administrator.
  3. In the Administrator and Scope page, specify a group (e.g. Citrix Admins or Help Desk) that will have permissions to Studio and Director. Click Next.
  4. On the Role page, select a role and then click Next. For example:
    • Full Administrator for the Citrix Admins group
    • Help Desk Administrator for the Help Desk group
    • Machine Catalog Administrator for the desktop team
  5. In the Summary page, click Finish.

Help Desk

  1. In the Studio, under Configuration, click the Administrators node. On the Administrators tab, right-click and click Create Administrator.
  2. In the Administrator and Scope page, specify a Help Desk group that will have permissions to Studio and Director. Click Next.
  3. On the Role page, select the Help Desk Administrator role and then click Next.
  4. In the Summary page, click Finish.
  5. When administrators in the Help Desk role log into Director, all they see is this.

    To jazz it up a little, add the Help Desk group to the read-only role.
  6. Right-click the Help Desk Administrator and click Edit Administrator.
  7. Click Add.
  8. In the Scope page, select a scope and click Next.
  9. In the Role page, select Read Only Administrator and click Next.
  10. In the Summary page, click Finish.
  11. Then click OK. Now Director will display the dashboard.

Provisioning Services w/Personal vDisk

From Considerations: Provisioning Services at Configure and manage Personal vDisk at docs.citrix.com: The Provisioning Services Soap Service account must be added to the Administrator node of Studio and must have the Machine Administrator or higher role. This ensures that the PvD desktops are put into the Preparing state when the Provisioning Services (PVS) vDisk is promoted to production.

vCenter Connection

XenDesktop uses an Active Directory service account to log into vCenter. This account needs specific permissions in vCenter. To facilitate assigning these permissions, create a new vCenter role and assign it to the XenDesktop service account. The permissions should be applied at the datacenter or higher level.¬†CTX214389¬†How to Define VMware vSphere User Privileges for XenApp and XenDesktop defines the minimum permissions needed for various activities in XenDesktop: MCS, PvS, Power Management, and AppDisks.¬† ūüí°

AppDisks requires an additional permission: Virtual Machine > Configuration > Modify Device Settings.

For AppDisks, the read only role must be applied to the vCenter level. See Mark New at discussions.citrix.com for details.  ?

Hosting Resources

A Hosting Resource = vCenter + Cluster (Resource Pool) + Storage + Network. When you create a machine catalog, you select a previously defined Hosting Resource, and the Cluster, Storage, and Network defined in the Hosting Resource object are automatically selected. If you need some desktops on a different Cluster+Storage+Network then you’ll need to define more Hosting Resources in Studio.

  1. In Studio, expand Configuration and click Hosting. Right-click it and click Add Connection and Resources.
  2. In the Connection page, select VMware vSphere as the Connection type.
  3. Enter https://vcenter01.corp.local/sdk as the vCenter URL. The URL must contain the FQDN of the vCenter server. Ensure the entered URL has /sdk on the end.
  4. Enter credentials of a service account that can log into vCenter.
  5. In the Connection name field, give the connection a name. Typically, this matches the name of the vCenter server.
  6. If you are not using Machine Creation Services and instead only need the vCenter connection for machine power management, change the Create virtual machines using selection to Other Tools.
  7. Click Next.
  8. If you see a message about the vCenter certificate, check the box next to Trust certificate and click OK.
  9. Enter a name for the hosting resource. Since each hosting resource is a combination of vCenter, Cluster, Network, and Datastore, include those names in this field (e.g. vCenter01-Cluster01-Network01-Datastore01).
  10. In the Cluster page, click Browse and select a cluster or resource pool.
  11. Select a network and click Next.
  12. On the Storage page, select a datastore for the virtual machines. Maximum flexibility is achievable if you only select one datastore per hosting resource. Create additional hosting resources for each datastore.
  13. If desired, change the selection for personal vDisk to use a different storage. Click Next.
  14. In the Summary page, click Finish.

Citrix Licensing Server

Upgrade

Upgrade Citrix Licensing to 11.13.1.2. ūüí°

  1. Go to the downloaded Citrix Licensing 11.13.1.2 build 16002 and run CitrixLicensing.exe.
  2. Click Upgrade.
  3. Click Finish.
  4. If you go to Programs and Features, it should now show version 11.1.0.16002.
  5. If you login to the license server web console, on the Administration tab, it shows it as version 11.13.1 build 16002.
  6. You can also view the version in the registry at HKLM\Software\Wow6432Node\Citrix\LicenseServer\Install.

Licensing Server HA using GSLB

From Dane Young ‚Äď Creating a Bulletproof Citrix Licensing Server Infrastructure using NetScaler Global Server Load Balancing (GSLB) and CtxLicChk.ps1 PowerShell Scripts. Here is a summary of the configuration steps. See the blog post for detailed configuration instructions.

  1. Build two License Servers in each datacenter with identical server names. Since server names are identical, they can’t be domain-joined.
  2. Install identical licenses on all License Servers.
  3. Set the DisableStrictNameChecking registry key on all Citrix Licensing servers.
  4. Synchronize the certificate files located at C:\Program Files (x86)\Citrix\Licensing\WebServicesForLicensing\Apache\conf. They must be identical on all Licensing Servers.
  5. Download CtxLicChk.exe from http://support.citrix.com/article/CTX123935 and place on all Licensing Servers.
  6. Schedule the PowerShell script CtxLicChk.ps1 on all Licensing Servers. Get this script from the blog post linked above.
  7. Configure NetScaler:
    1. Configure GSLB ADNS services.
    2. Add wildcard Load Balancing service for each Citrix Licensing Server.
    3. Configure service TCP monitoring for ports 27000, 7279, 8082, and 8083.
    4. Create Load Balancing Virtual Server for each Licensing Server.
    5. Set one Load Balancing Virtual Server as backup for the other.
    6. Repeat in second datacenter.
    7. Configure GSLB Services and GSLB Monitoring.
    8. Configure GSLB Virtual Servers. Set one GSLB Virtual Server as backup for the other.
  8. Delegate the Citrix Licensing DNS name to the ADNS services on the NetScaler appliances.
  9. Configure Citrix Studio to point to the GSLB-enabled DNS name for Citrix Licensing.

Citrix License Server Monitoring

Citrix Licensing 11.13.1 and newer has historical usage reporting:¬† ūüí°

  1. Run Citrix Licensing Manager from the Start Menu. Or use a browser to connect to https://MyLicenseServer:8083
  2. Use the drop-down menus to select a license type, select dates, and export to a .csv file.
  3. On the top right is a gear icon where you can set the historical retention period.

http://www.jonathanmedd.net/2011/01/monitor-citrix-license-usage-with-powershell.html.

Lal Mohan РCitrix License Usage Monitoring Using Powershell

Jaroslaw Sobel ‚Äď Monitoring Citrix Licenses usage ‚Äď Graphs using WMI, Powershell and RRDtool. This script generates a graph similar to the following:

CtxLicUsage-1d_

Remote Desktop Licensing Server

Install Remote Desktop Licensing Server

Do the following on your XenDesktop Controllers:

  1. In Server Manager, open the Manage menu and click Add Roles and Features.
  2. Click Next until you get to the Server Roles page. Check the box next to Remote Desktop Services and click Next.
  3. Click Next until you get to the Role Services page. Check the box next to Remote Desktop Licensing and click Next.
  4. Click Add Features if prompted.
  5. Then finish the wizard to install the role service.

Activate Remote Desktop Licensing

  1. After RD Licensing is installed, in Server Manager, open the Tool menu, expand Terminal Services and click Remote Desktop Licensing Manager.
  2. The tool should find the local server. If it does not, right-click All servers, click Connect and type in the name of the local server. Once the local server can be seen in the list, right-click the server and click Activate Server.
  3. In the Welcome to the Activate Server Wizard page, click Next.
  4. In the Connection Method page, click Next.
  5. In the Company Information page, enter the required information and click Next.
  6. All of the fields on the Company Information page are optional so you do not have to enter anything. Click Next.
  7. In the Completing the Activate Server Wizard page, uncheck the box next to Start Install Licenses Wizard now and click Finish. Since the session hosts will be configured to pull Per User licenses, there is no need to install licenses on the RD Licensing Server.
  8. In RD Licensing Manager, right-click the server and click Review Configuration.
  9. Ensure you have green check marks. If the person installing Remote Desktop Licensing does not have permissions to add the server to the Terminal Server License Servers group in Active Directory, ask a domain admin to do it manually. If you have the proper permissions, click Add to Group.
  10. Click Continue when prompted that you must have Domain Admins privileges.
  11. Click OK when prompted that the computer account has been added.
  12. Click OK to close the window.

Health Check

Andrew Morgan – New Free Tool: Citrix Director Notification Service: The Citrix Director Notification service sits on an edge server as a service (or local to the delivery controller) and periodically checks the health of:

  • Citrix Licensing.
  • Database Connections.
  • Broker Service.
  • Core Services.
  • Hypervisor Connections.

And if any of these items fall out of bounds, an SMTP alert is sent to the mailbox of your choice for action. The tool will also send ‚ÄúAll Clear‚ÄĚ emails when these items are resolved, ensuring you are aware when the service has resumed a healthy state.

Related Pages

Citrix AppDNA 7.18

Last Modified: Sep 2, 2018 @ 7:53 am

Navigation

This article applies to all versions, including 7.18, and 7.15

Change Log

Planning

Your Citrix License Server must have XenApp or XenDesktop Platinum Edition licenses. If you don’t have Platinum Edition licenses, then work with a Citrix Partner to perform AppDNA analysis.

AppDNA server should have the following:

  • 12 GB of RAM
  • 80 GB free disk space for up to 200 applications. 150 GB if more applications.
  • Cannot be installed on a Delivery Controller. Must be a separate machine.

SQL Server:

  • SQL 2008 R2, 2012, 2014, or 2016. SQL Express is not supported.
  • AppDNA generates load on SQL during install (duration = few hours) and during import and analysis.
  • See Optimize AppDNA > Optimize SQL Server at Citrix Docs.
  • Disk space could easily be 20+ GB.

AppDNA can directly import and analyze .msi installers. For non-.msi installers, you’ll need a machine to capture the install process. The machine(s) should be the same operating system as what you are migrating from. The machine can either be directly accessible through a hypervisor, which means AppDNA can automate the capture process. Or it can be any machine where a user can perform Self Provisioning.

Server Prerequisites

  1. On the AppDNA Server, open Computer Management. Edit the Administrators group, and add the service account.
  2. In Server Manager, start the Add Roles and Features Wizard.
  3. In the Select features page, select .NET Framework 3.5. Click Next.
  4. In the Confirm installation selections page, click Specify an alternate source path.
  5. Browse to the sources folder on the Windows Server 2012 R2 or newer DVD, and click OK.
  6. Click Install.

Server Installation/Upgrade

The same installation process is used for both new installs and upgrades.

  1. On the AppDNA server, run the downloaded AppDNA 7.18 (Citrix-AppDNA.msi).

  2. It takes a few minutes to launch.
  3. In the Welcome to the Installation Wizard for Citrix AppDNA 7.18 page, click Next.
  4. In the License agreement page, select I accept the terms, and click Next.
  5. In the Citrix AppDNA Installation Type page, select Complete, and click Next.
  6. In the Citrix AppDNA installation locations page, click Next.
  7. In the Ready to install Citrix AppDNA page, click Install.
  8. In the Installation Wizard Completed page, click Finish.

SQL Database

Instructions from CTP Eric Haavarstein Configure Citrix AppDNA 7.11 in Minutes instead of Hours:

  1. If you are upgrading an existing installation, then skip to the Configuration Wizard.
  2. If this is a new installation, on the AppDNA server, go to C:\Program Files (x86)\Citrix\AppDNA\Server\Bin, and extract the AppDNA.bz2 file.
  3. Rename the extracted file with a .bak extension.
  4. Copy the file to the backup folder on the SQL server.
  5. In SQL Studio, right-click Databases, and click Restore Database.
  6. Change the Source to Device, and click the ellipsis.
  7. Click Add.
  8. Select the AppDNA.bak file, and click OK twice.
  9. Change the destination database name as desired, and click OK to begin the restore.

  10. Add a service account to SQL logins.
  11. On the Server Roles page, add the service account to the bulkadmin role.
  12. Give the service account db_owner permission to the AppDNA database.

Configuration Wizard

  1. The Configuration wizard launches. Or you can launch Configure AppDNA from the Start Menu.
  2. In the Prerequisites page, click Enable.
  3. In the Configure AppDNA page, if you are upgrading, select the Upgrade installation option, and click Next. The remaining wizard screens will be different but similar.

    1. Or leave it set to Configure new installation, and click Next.
  4. If you are upgrading, on the Choose database page, after selecting your database and clicking Next, if you see a message about Subscription Advantage expiration, click OK, and go back a couple pages.

    1. Back on the Configure AppDNA page, change the selection to Licensing, and click Next.
    2. In the License management page, leave the selection set to Activate, and click Next.
    3. In the Choose database page, click Next.
    4. In the License database page, enter your license server name, and click Next.
    5. In the System check page, click Activate.
    6. In the Progress page, click Close, which closes the wizard.
    7. Relaunch the Configure AppDNA wizard and attempt the upgrade again.
  5. If this is a new installation, in the Create database page, enter the SQL server name, enter the database name, and click Next. Note: in order for the Configure AppDNA wizard to create the database, the person running the wizard must have sysadmin permissions on the SQL Server.
  6. In the Connect to database page, enter the credentials of your service account, and click Next. AppDNA will use this service account to connect to the database.
  7. If this is a new installation, in the License database page, enter the address of a Citrix License server that has XenApp/XenDesktop Platinum Licenses, and click Next.
  8. In the CEIP page, make a selection, and click Next.
  9. In the Firewall page, click Next.
  10. In the System check page, click Fix next to any errors it finds. Then click Next, Configure, or Upgrade.

  11. It will take several minutes to update the database.
  12. Click Close when done.
  13. See Optimize AppDNA > Optimize IIS at Citrix Docs.

Note: Database and License Configuration can also be run from the command line:¬†“C:\Program Files (x86)\Citrix\AppDNA\Server\Bin\AppDNAConfig.exe

Logging

CTX219766 Understanding Logging in AppDNA explains how to enable the various logs, and where to find the logs.

  • Verbose logs
    • On the client
    • On the server, including Configuration Wizard
  • QueueProcessor Verbose logs
  • Event logs
  • Application Import logs
  • Other miscellaneous logs

SSL/TLS

See Citrix CTX222781 Configuring AppDNA for SSL/TLS:

  1. "%windir%\system32\inetsrv\appcmd.exe" set config -section:system.webServer/serverRuntime /uploadReadAheadSize:"104857600" /commit:apphost
  2. Import a certificate, and in IIS, bind it to the Default Web Site.
  3. Edit the file C:\Program Files\Citrix\AppDNA\Server\web.config. Adjust ReportBaseUrl to https and port 443.
  4. Configure the AppDNA Client to connect using https.

 Launch and Login

  1. Launch AppDNA from the Start Menu.
  2. Login as administrator and apps3cur3.

Configure Modules Wizard

  1. In the Welcome page, click Next.
  2. This wizard lets you select which modules to enable. The more modules you enable, the longer it takes to analyze an application. Go through each page and make your selections.
  3. AppDNA 7.11 and newer support analysis of Windows Server 2016.


  4. Then click Configure.
  5. And click Close.
  6. AppDNA 7.9 adds a new Compliance Manager module. The module was enhanced in AppDNA 7.14 to check for FIPS compliance, NTLM, and Credential Guard.

  7. You can use the Module Manager (Configure > Modules > Management) to see what each module is checking for.
  8. Click Groups next to one of the modules.
  9. Notice that not every analysis rule is enabled.

Customer Experience Improvement Program

Do the following to disable CEIP:

  1. Open the Edit menu, and click Settings.
  2. On the CEIP page, uncheck both boxes next to Continue participating. Click Save. Google Analytics was added in AppDNA 7.16.
  3. See http://www.carlstalhood.com/delivery-controller-7-16-and-licensing/#ceip for additional places where CEIP is enabled.

Users

  1. Open the Administration menu, expand User Management, and click Users.
  2. In the toolbar, click Add from AD.
  3. Select your Citrix Admins group, and click OK.
  4. On the right, notice that Administrators role is selected by default.
  5. Open the File menu and click Exit.
  6. Launch AppDNA again.
  7. On the login page, click Options.
  8. You can check the box next to Integrated Login and click Log On.
  9. Note: if you enable Auto Login and want to disable it, edit the registry.
  10. Go back to Administration > User Management > Users.
  11. Edit the administrator account.
  12. And change its password.
  13. Then click Save.

Direct Import

  1. Switch to the Import workspace.
  2. On the left, under Import, click Applications.
  3. On the right, switch to the Direct Import tab.
  4. Click Browse in the toolbar. Then browse to an .MSI file.
  5. The .msi files are shown in the list. Select one or more, right-click, and click Import to begin analysis.
  6. You can select one or more modules for analysis. Note: it might take a few seconds for the list to appear. Click Import.
  7. The Server Queue is displayed. If needed, you can cancel a task in the Server Queue.
  8. If you close the Server Queue, you can reopen it by clicking the View Server Queue link on the bottom right.
  9. Analysis is performed against the modules you selected.
  10. After analysis is complete, switch to the Reports: Applications workspace.
  11. On the left, select a report you want to view.
  12. You might be prompted to select applications. If you want to change this selection later, there’s a Change Selection button on the toolbar.

  13. The report displays a list of applications with color coding. Click the colored boxes to view more details.

Install Capture

Install Capture lets you import application installers that are not available as MSI files. AppDNA uses a hypervisor connection to automate the Install Capture process. Alternatively, you can do a manual capture using the Self Provisioning process.

Prepare Install Capture Machine

  1. Create a share on the AppDNA machine. The captured data is stored in this share.


  2. The operating system of the Install Capture machine should match the operating system version you are migrating from.
  3. On the Install Capture machine, make sure Remote Desktop is enabled.
  4. On the Install Capture machine, browse to the AppDNA server in the \\AppDNAServer\C$\Program Files\Citrix\AppDNA\Tools folder, and run Citrix AppDNA VM Configuration.msi.
  5. In the Welcome to the Installation Wizard for Citrix AppDNA VM Configuration page, click Next.
  6. In the License Agreement page, select I accept the terms and click Next.
  7. In the Ready to Install the Program page, click Install.
  8. In the Installation Wizard Completed page, click Finish.
  9. Click Yes when prompted to reboot.
  10. Citrix Blog Post How to Speed Up AppDNA Install Capture by Using a Pre-captured Before Snapshot details how to take an Install Capture Snapshot manually, store it in the Install Capture machine, and then configure the Install Capture profile to skip taking an Install Capture snapshot. This Install Capture snapshot process is separate from hypervisor snapshot.
    "C:\Program Files\Citrix\AppDNA\VM Configuration\ossnapshot.exe" -cfg:"C:\Program Files\Citrix\AppDNA\VM Configuration\cfg.xml" -out:"c:\windows\temp\before.snap" -diff
  11. You can either take a snapshot now, or AppDNA will do it for you.

Configure AppDNA for Install Capture

  1. In the AppDNA Console, open the Edit menu and click Settings.
  2. On the left, switch to the Install Capture page.
  3. On the right, click New.
  4. In the Virtual Machine Configuration Wizard page, click Next.
  5. In the Virtual machine details page, give the configuration a name.
  6. Select vSphere and click Next.
  7. In the vSphere Host Details page, in the Single Sign-on Server field, enter the Platform Services Controller hostname
  8. In the Port field, enter 7443.
  9. In the vCenter Server field, enter the hostname of the vCenter server.
  10. Enter credentials that can snapshot and perform power operations on the Install Capture machine. Click Test and then click Next.
  11. In the vSphere Virtual Machine page, in the list of machines, select the Install Capture machine and click Next.
  12. In the vSphere Snapshot selection page, if there are no snapshots, click Take Snapshot.

  13. Click Test. At least confirm that the machine can be reverted to snapshot. Don’t worry if the console doesn’t open. Click Next.
  14. In the Virtual machine connection page, enter the hostname of the Install Capture machine, and click Test. Note: the RemoteAdmin.exe process only runs while somebody is logged into the machine. Click Next.
  15. In the Capture output location page, enter the UNC path to the file share on the AppDNA server, and click Test. Then click Next.
  16. In the Virtual machine state page, make a selection, and click Next.
  17. In the Virtual machine configuration summary page, click Finish.
  18. Citrix Blog Post How to Speed Up AppDNA Install Capture by Using a Pre-captured Before Snapshot details how to take an Install Capture Snapshot manually, store it in the Install Capture machine, and then configure the Install Capture profile to skip taking an Install Capture snapshot. This Install Capture snapshot process is separate from hypervisor snapshot.
  19. Click Save to close the Settings window.

Perform Install Capture

  1. Switch to the Import workspace.
  2. On the left, under Import, click Applications.
  3. On the right, switch to the Install Capture tab. Click Browse and find an installer you want to import using Install Capture.
  4. If you have more than one Install Capture machine, use the drop-down to select the one you want to use.
  5. Select the apps. Then right-click, and click Import.

  6. Select the modules for analysis. Then click Import.
  7. The Install Capture VM will be started.
  8. Eventually you’ll be prompted to RDP to the Install Capture machine.
  9. The capture process begins with a snapshot of the Install Capture machine.
  10. Then the application is installed. This should happen automatically.
  11. Then a differencing snapshot is taken and uploaded to AppDNA Server.
  12. Analysis is performed against the modules you selected.
  13. After analysis is complete, switch to the Reports: Applications workspace.
  14. On the left, select a report you want to view.

Self Provisioning

Self Provisioning is very similar to Install Capture except there’s no need for direct connectivity between AppDNA server and the hypervisor that hosts the Self Provisioning machine. Once the process is started in the AppDNA console, a different user can complete the snapshot process on the Self Provisioning machine.

Prepare Self Provisioning Machine

  1. Make sure AppDNA VM Configuration is installed first.
  2. On the Self Provisioning machine, browse to the AppDNA server in the C$\Program Files\Citrix\AppDNA\Tools folder, and run Citrix AppDNA Self Provisioning Client.msi.
  3. In the Welcome to the Installation Wizard for Citrix AppDNA Self Provisioning Client page, click Next.
  4. If you see the Pre-Requisites Check page, stop the installer, install the AppDNA VM Configuration Client and then restart this installer.
  5. In the License Agreement page, select I accept the terms, and click Next.
  6. In the Destination Folder page, click Next.
  7. In the Ready to Install the Program page, click Install.
  8. In the Installation Wizard Completed page, click Finish.
  9. Take a snapshot of the Self Provisioning machine.

Perform Self Provisioning Capture

  1. In the AppDNA Console, switch to the Import workspace.
  2. On the left, click Applications.
  3. On the right switch to the Self Provisioning tab.
  4. Then click the Configuration icon in the toolbar.
  5. In the Self Provisioning page, enter the UNC path to a share that both machines (AppDNA server and Self Provisioning machine) can access.
  6. In the toolbar click Browse and browse to the application installer.
  7. Click Publish to push the files to the file share.

  8. Click in the PublishedFile column to access the full path and copy it to the clipboard.
  9. On the Self Provisioning machine, run the Self Provisioning Client from the Start Menu.
  10. Paste in the path and click Start.
  11. After the snapshot is taken, click the Start button and install the application.
  12. Once the install is complete, another snapshot will be taken and the results will be uploaded to the share. Click Close.
  13. Back in the AppDNA console, click Refresh Status and make sure the status changes to Complete.
  14. Make sure the application is selected and then on the right side of the toolbar click Move to Import.
  15. This moves the application to the Direct Import tab where you can select the application and click Import & queue for analysis button to begin analysis.

Solutions

CitrixTV XenApp Upgrades with AppDNA demonstrates the Solutions feature of AppDNA 7.6 including: XenApp upgrades, operating system image upgrades, and application interoperability.

Other links on Solutions:

Here are generic instructions for adding a Solution:

  1. For some of the solutions it is helpful to import operating system images of the machines you are moving from and the machines you are moving to..
  2. In the Import workspace, on the left click Operating Systems.
  3. On the right, click Download Snapshot Manager. Run this on a operating system image that you want to import.
  4. Then click Import from MSI to import the MSI file generated by the Snapshot Manager.
  5. Switch to the Solutions workspace.
  6. On the top left click Add solution.
  7. In the Solutions Templates page, select a solution and click Next.
  8. In the Solution name page, give the solution a name and click Next.
  9. In the Platform name page, choose the platform you are migrating from and click Next.
  10. In the Applications page, select the applications you want to analyze and click Next.
  11. In the Solution platforms page you can change the Target platforms or add more platforms.
  12. Click Build.