The Importance of Citrix Performance Monitoring
Citrix digital workspaces are one of the most performance sensitive technologies being deployed in enterprise networks today. This is due to several reasons:
- Most of the processing happens on the data center end – either on the virtual app server or on the virtual desktops.
- Users mainly use thin clients or similar less powerful endpoint devices.
- All keystrokes, mouse movements, and other user interactions are sent from the endpoints to the data center and processed there.
- Citrix access is session oriented. A user session must be established before users can access their desktops and applications.
All of this means that if there is a slight glitch in the network, in the Citrix servers, or the applications being accessed, it can result in poor performance for users.
In this blog, we review some of the most common myths about Citrix performance monitoring that we have encountered.
Monitoring Citrix is about monitoring resources
Several years ago, the primary monitoring tool in the Citrix stack was called “Citrix Resource Manager”. At that time, most Citrix admins used to be focused on monitoring resources – CPU, memory, disk, etc. on their servers. While it is important to monitor resources, Citrix admins are no longer measured by resource utilization on their servers. Just because your server has only 10% CPU utilization means nothing to your managers! You (and your managers) are measured by how happy your users are.
If logon time is more than 30 seconds, or screen latency is more than 220 ms, your users will not be satisfied. Hence, do not focus on just monitoring resources, try to get a handle on user experience.
User experience for a Citrix workspace environment is not about one metric alone. Logon time is important when you start your session. Application launch time is important whenever you start a new application (e.g., you start Microsoft Outlook). Keystroke latency and screen refresh time are important when you do work on an application (e.g., you are typing an email in Microsoft Outlook). From a monitoring standpoint, you need to keep track of all of the different facets of Citrix user experience.
There are several Citrix monitoring tools available
There are many who have suggested that there are numerous monitoring tools for Citrix. Rachel Berry remarked several years ago that there were an enormous number of monitoring tools for Citrix.
Brian Madden and Kevin Goodman once used the phrase “yet another monitor” (YAM) to refer to any new monitoring tool for Citrix. So, there is a belief that organizations have numerous choices when deciding what monitoring tools to use for their Citrix infrastructures.
There are several key questions to ask when deciding on a monitoring tool for your Citrix infrastructure: What level of visibility do you want? What do you expect the tool to do for you? Do you want to receive alerts about problems, or do you expect the tool to provide you with the insights to help you troubleshoot problems quickly?
- If your intention is to monitor the resource usage of your servers only, there are any number of choices. System monitoring tools can perform this task.
- If you are looking to be alerted to issues, synthetic monitoring tools will suffice. Many of the monitoring solutions in the market support synthetic monitoring for web applications, but these HTML-based approaches do not work for Citrix and VDI environments. You will need to look for synthetic monitoring tools with support for optical character recognition technologies (screen capture and replay capabilities).
- If you need insights to help you troubleshoot problems quickly, your monitoring tool needs to be Citrix-aware. It must know what metrics to capture to track user experience, what are the typical failure modes for user sessions and so what metrics to collect to alert you to different types of failures. This is where many system monitoring tools fall short.
- ICA channel usage and performance
- User logon time and breakdowns
- EDT performance
- Web sites accessed in a user session
- Application launch time
- Active / idle time per user
- Performance of every Citrix tier
- Synthetic monitoring of user sessions
Monitoring Citrix tiers is sufficient for great user experience
The Citrix stack today involves a number of different technologies. There is Citrix NetScaler for security, compression, load balancing, etc., Citrix StoreFront for web accesses, the Citrix Delivery Controller for session brokering and management, Citrix Provisioning services for streaming operating systems, Citrix license server for license management and so on. To ensure peak Citrix performance, every one of these tiers must be functioning well. A problem in any of these tiers can manifest as poor user experience.
Many believe in a silo-based approach to monitoring. Therefore, to ensure that your Citrix services are performing well, it is sufficient to monitor all your Citrix tiers. In practice, this is not the case. There are many non-Citrix tiers that affect Citrix user experience. Here are a few examples:
- The network connectivity at the user end is often a key problem. A user could connect through a spotty wireless network and could complain that Citrix is slow!
- User profiles are often stored on remote profile servers and a profile is loaded when a user logs in and is unloaded when a user logs out. If disk accesses on the profile server are slow, this will manifest as slow Citrix logon time.
- When a user logs in, he/she must be authenticated. Citrix logon involves authentication with Active Directory. Slowness in Active Directory authentication could also result in slow logons.
Common reasons for Citrix Performance Issues
In fact, results of a Citrix performance survey conducted in 2016 by eG Innovations and DABCC revealed that problems elsewhere (network, infra services, storage, etc.) outranked problems in the Citrix tiers as the cause of Citrix performance issues.
Built-in Citrix monitoring tools give you sufficient insights
Interestingly, Citrix does not have a solution that provides a single pane of glass to monitor the different Citrix tiers in the infrastructure. There is Citrix Director, Citrix XenCenter, Citrix Application Delivery Management (ADM), Citrix Analytics and then there are administration tools for all the other tiers.
Of these, Citrix Director is the most widely used. It provides insights into session activities. Helpdesk personnel can use the tool to monitor a user’s session and to perform control actions – shadow a session, disconnect a user etc. It can also be used to generate alerts on connection failures and can track system resources also.
But Citrix Director does not monitor all the Citrix tiers – you cannot track StoreFronts, NetScalers, WEM, AppDisk, ShareFile and other Citrix tiers. It also does not provide much visibility into the other tiers supporting the digital workspace service. Citrix Director also lacks the in-depth reporting capabilities that the erstwhile Citrix EdgeSight product had. Although a number of organizations use Citrix Director because it is available at no cost when limited number of days of data is stored, they are unable to effectively diagnose Citrix performance issues using Citrix Director alone.
Monitoring is mainly needed for diagnosing problems
Monitoring tools can provide you a lot of insights that you can use for optimizing, right-sizing and tuning your Citrix infrastructure. Questions you can answer using these tools include:
- Is the workload balanced across your Citrix servers?
- Are your VMs right sized or do they have too much memory allocated to them?
- Which are the most resource intensive applications used by users? Are these corporate applications?
- Which URLs are users surfing on their virtual desktops?
- Are there applications running on the virtual desktops that are not required for the business?
- Are there many disconnected sessions running on your servers and desktops that are taking up valuable resources?
The right monitoring tools will help you improve efficiency and performance without investing in additional hardware, software and personnel resources.
You can also get insights that are invaluable for planning future upgrades and provisioning: for example, should you add more CPU or memory to your servers to accommodate more users, and where?
Finally, when you have a majority of employees working from home, executives want to see user activity reports telling them when an employee logged in, how long they remained logged in for, when they were active and when they were idle and what applications they accessed. Monitoring data collected can be used to generate such user activity reports.
I can over-provision my environment and don’t need monitoring
Some administrators believe that if they provide sufficient CPU and memory resources on their servers, they will not face performance issues. This is far from the truth. Consider a scenario where the group policy loaded when a user logs in to Citrix accesses a remote share drive. When the remote share is unavailable, users will see logon slowness. Adding CPU and memory to the Citrix server or desktop will not help overcome the problem.
You may have run into situations where there are memory leaks in one or more of the applications accessed via Citrix leading to session slowness. Adding more memory to the server or desktop will alleviate the problem for a short while, but if the root-cause of the problem is not detected and fixed, no matter how much memory you add, the problem will never go away.
Problems can also occur due to hardware failures. A faulty disk drive or a failed storage device can slow performance. Monitoring is required to guard against such eventualities.
Finally, as organizations focus on getting more out of their current investments, Citrix admins getting budget for additional hardware can be difficult. By highlighting where the real bottlenecks are – hardware, software, applications, etc., Citrix monitoring issues can help you get your digital workspace working well without additional investment.
I have to deploy agents on every client in order to understand Citrix user experience
There are many ways to monitor a Citrix service. One of the common ways of monitoring Citrix environments is by deploying agents on end points to track the real experience of users. By snooping on traffic to and from the endpoints, these monitoring tools can provide insights into user experience.
Deploying agents on every endpoint may be a challenge. Endpoints may not even have the resources to run additional agents. Furthermore, deploying and maintaining agents takes up effort.
For Citrix environments, another consideration is how much of visibility can be gleaned from endpoint agents? Citrix and other digital workspace technologies do most of the processing on the datacenter end. Logons are processed there, applications are launched there, even keystrokes and mouse movements have to be sent from endpoints to the data center. Agents deployed on the endpoints will not have insights into the various steps performed during Citrix logons. They will not be able to highlight if Active Directory is slow, whether GPO processing is taking time, whether a user’s profile is large, etc.
One of the typical reasons for deploying endpoint agents is to capture overall user latency and network-level latency. Enhancements made in the Citrix 7.x architecture make it possible for tools like eG Enterprise to provide insights into Citrix connection quality, access speed, bandwidth used, screen refresh latency and latency to the user terminal without needing any agents on the endpoints.
Therefore, it is indeed a myth that you need agents on user end points to monitor Citrix user experience.
Busting the Citrix Monitoring Myths
Citrix digital workspaces make computing from anywhere, at any time, simple and effective, but managing them can be a headache. Citrix performance monitoring is therefore essential for ensuring that the Citrix digital workspace allows your end users to be fully productive with minimal latency or desktop disconnections.
In this blog, we have highlighted 7 truths about Citrix performance monitoring:
- Monitoring Citrix performance is NOT just about resources anymore.
- Citrix admins need detailed insights into Citrix workspace availability, usage and performance. Conventional system monitoring tools are not sufficient for such requirements. The ideal Citrix monitoring tool must be purpose built for Citrix workspaces, considering the unique technologies involved.
- Often when the Citrix workspace is slow, the problem is not in one of the Citrix tiers. Therefore, tools that monitor the Citrix stack alone are not sufficient.
- Citrix built-in tools lack the integration, breadth of coverage or the level of insights needed by Citrix admins to effectively manage workspace delivery.
- Monitoring tools can offer value well beyond diagnosis of problems. They can help with rightsizing, tuning and capacity forecasting.
- Overprovisioning the infrastructure is never the answer to solving performance issues. In today’s economic environment, it is even more the case.
- Citrix monitoring need not be deployed on all digital endpoints. Advances in Citrix technologies have made it possible to effectively monitor Citrix infrastructures without needing agents on all endpoints.