End-User Dashboard: Enabling Users Diagnose Virtual Desktop Slowness in No Time!

User Experience a Key for Virtual Desktop Success

Great user experience is a key to the success of any virtual desktop deployment. If users believe that the performance of virtual desktops is slower or less reliable than that of physical desktops, they will want their physical desktops back.

The performance of virtual desktops depend on many factors – the connection broker that manages user sessions, the virtualization platform on which the desktops are hosted, the storage tier supporting the virtual desktops, the provisioning servers that stream the desktop operating system, the enterprise applications being accessed by users, the virtual desktops themselves and the user’s terminals and their connections to the data center where the virtual desktops are hosted. Virtual desktop administrators have complete control over the connection brokers, virtualization platform, provisioning servers, and storage, but they do not often have visibility into or control over the network connectivity from a user’s terminal to the virtual desktop or the applications running inside the virtual desktop.

Virtual Desktop Performance is Not Always Controlled by the VDI Administrator

The below two factors can have a significant impact on user experience and user confidence in the virtual desktop service.

  • Impact of poor network connectivity on virtual desktop performance: Many virtual desktop deployment scenarios involve users being in remote locations than the virtual desktops they access. For instance, many companies outsource key business processes offshore. virtual-desktopIn such cases, knowledge workers in countries like India and Philippines connect to virtual desktops over wide area networks. Congested WAN links can result in virtual desktop slowness being perceived by users. Even in flexwork situations, users working from home can be connecting over low bandwidth lines to their virtual desktops. In such situations, virtual desktop administrators cannot be held responsible for poor virtual desktop performance
  • Impact of virtual desktop applications on the user experience: Applications run by the user on a virtual desktop can also cause slowness. Many a times, the user is not even aware of such a situation. For instance, one of the applications launched on the desktop could have a memory leak, causing the desktop to become slower and slower over time. Another common occurrence is when users access non-corporate web sites from their browser. These web sites can trigger the execution of client-side scripts on the browser, taking up key CPU resources on the desktop.

Unfortunately, irrespective of whether the slowness is caused by the virtual desktop, the network tier, or within the virtual desktop infrastructure, the user complaint is that “the virtual desktop service is slow”.  In such situations, administrators end up spending a lot of time and effort troubleshooting performance issues that are not within their control. Long problem diagnosis cycles also result in frustrated users.

eG’s End-User Performance Dashboard: Performance Visibility for End Users

eG Enterprise’s end-user performance dashboard provides end-users with key insights into the performance of their virtual desktops. From the dashboard, users can see the performance of the network connecting their terminal to the virtual desktop. They can also see the resource utilization within the virtual desktop and see what applications executing in the desktop are taking up resources.

eG End user dashboard showing key performance metrics, their detailed diagnosis and historical values for analysis
eG End user dashboard showing key performance metrics, their detailed diagnosis and historical values for analysis

The key benefit of the end user dashboard is that it empowers end-users to quickly diagnose if a performance problem is being caused in areas of the infrastructure that are within their control. If a performance problem is in the interconnecting network or in one of the applications the user has launched, the user can initiate corrective action (e.g., kill the offending process, contact the local network team, etc.) to alleviate the issue. This results in fewer complaints and trouble calls to the virtual desktop helpdesk and administrators. As a result, support costs are lower, users less frustrated and they have more confidence in the virtual desktop technology.

User can notice the higher utilization of a key resource (e.g., CPU) and can dig deeper for detailed diagnosis. In this figure, the user can clearly identify that Windows Media Player is consuming excessive CPU inside the virtual desktop and could be affecting the performance of other applications.

Some of the key questions that users can answer with the end-user dashboard and the corresponding actions they can take are indicated in the table below:

Questions a User can Answer with the End-User Virtual Desktop Dashboard

Action the User can Initiate

Is the network connectivity from the user’s terminal to the virtual desktop the cause of virtual desktop slowness? Raise a complaint with the user’s local network team to resolve the issue.  Try connecting from an alternative network if that is possible.
Is any application consuming excessive resources on the desktop (high CPU, high memory, lot of disk I/O) and thereby slowing performance for other applications? Kill the offending application process or stop the application
Is there a memory/handle leak in one of the applications running in the desktop that could be causing slowness of the desktop? Kill the offending application process or stop the application
Is there excessive traffic from the desktop – printer, audio, video, USB – that could be causing slowness during remote desktop access? Stop all bandwidth-intensive operations (eg. Audio/video players) on the desktop.

With eG’s end-user dashboard, users do not have to have login access to the performance management system. Administrators can publish the dashboard for access to virtual desktop users. By entering his/her domain user name, a user can get to see the performance of his / her virtual desktop session. Historical performance can also be observed for all key metrics.

Real-World Experience:  User self-service lowers Virtual Desktop Support Costs

Our customers have observed that with basic training, end users are able to learn how to do a first level triage to see if the problem is in their network or in their virtual desktop. They can contact the virtual desktop team only if the problem is neither in their network nor in their virtual desktop. This way, the end user dashboard allows enterprises deploying virtual desktops to:

  • Reduce the volume of helpdesk calls;
  • Have their key VDI experts spend time troubleshooting issues that lie in domains that they control;
  • Resolve virtual desktop performance issues at the earliest (since problems are directed to the right domains);
  • Build confidence in the user community about the technology.

Related Articles

Why performance management of Virtual Desktops is not the same as management of Virtual Machines
VDI Success ‒ The Role of Performance Assurance in VDI Deployments
User Experience and Performance Assurance Continue to Take Center Stage in Virtualized Environments

SSL Certificates – Not Just for Web Applications

When a client and server communicate, secure socket layer (SSL) ensures that the communication is private and secure by providing authentication, encryption, and integrity checks. A general assumption is that SSL handshake and SSL data transfer only happens between a Web Browser and a Web Server, so SSL Certificates are only required for Web Servers in the overall IT Infrastructure. In reality SSL Certificates can be used for many key applications in an IT infrastructure – Web servers, Java application servers, databases (Oracle, SQL), Microsoft Active Directory servers and mail servers like Microsoft Exchange can all use SSL.



Isn’t it Enough to Just Protect the Web Servers using SSL?

Application environments have become complex. Many infrastructure tiers are involved in supporting the service and the different tiers communicate with each other to support the service.  The servers involved could be in different geographic locations. With the increasing use of cloud computing, some of the servers involved may even be hosted on public clouds.

SSL secures all communications between any two servers. If servers are unprotected, hackers could actively eavesdrop all the communications and maybe able to inject new ones. The more security critical the application, the more important it is to protect it with SSL. This is the reason why some of the core IT servers – Web Servers, Java application servers, Database Servers, messaging servers,  Active Directory servers, and Microsoft Exchange – are often configured with SSL certificates.


Why protect these services with SSL?

Services Why SSL? Without SSL
Web Servers
SSL ensures secure communication between a browser and a Web Server Hackers can easily steal confidential information – credit card, PIN, Social Security numbers and other personal information of a customer.
Application Servers
SSL protects access to business logic and secures data access service from application server to other systems and database Unauthorized personal can modify critical data by accessing the database and other systems.
Microsoft Exchange
SSL enables emails exchanged between mail client and exchange server to be encrypted and secured Attackers can steal important emails and passwords of key executives.
Microsoft Active Directory
SSL secures access to user accounts, administrative groups, server accounts and resource accounts stored in Active Directory Active Directory can be compromised and the damage might be a substantial monetary loss or even a serious blow to the reputation of the organization.
SSL secures data transfer across the network between instances of databases and other systems of that application environment Hackers can steal critical data stored in the database.


Monitoring SSL Certificates

SSL certificates often have a validity period and if ever an SSL certificate becomes invalid, the application that uses it will stop working. So monitoring of SSL certificates is important. The key requirements for SSL certificate monitoring include:

  • The ability to proactively monitor the validity of all the SSL certificates used by an organization;
  • Multi-modal alerting capability to alert administrators about impending certificate expiry or validity issues with certificates;
  • Capability to track and alert about changes to SSL certificates;
  • The ability to check the legitimacy of a SSL certificate by verifying certificate fingerprint;

The eG Enterprise performance management system can check SSL certificates used by different applications – Active Directory, Exchange Server, Web Servers (Apache, IIS, etc.) and application servers – Tomcat, WebSphere, WebLogic and GlassFish, and databases – Oracle, SQL Server, MySQL and others. For more information on how eG Enterprise can ensure the validity and legitimacy of your SSL certificates please read the white paper SSL Certificate Expiry Monitoring and Management


Monitoring Anything Citrix

The Citrix Journey – From Access to Mobility 

eG Innovations has been a Citrix partner since 2003. Those were the days when Citrix’s messaging was around “access”. Thin client computing and then server-based computing were the hot topics. Discussions around the efficiency of RDP and ICA ruled and Citrix Resource Manager was the best way to monitor a Citrix server. What was then Citrix MetaFrame soon became Citrix Presentation Server and is now Citrix XenApp.

Citrix in the early days
Citrix in the early days

Citrix and the industry have come a long way since then. No longer is Citrix a single product company. We have hosted virtual desktops provisioned through Citrix XenDesktop. Citrix StoreFront provides a customizable web front-end to access applications. Rather than dealing with individual server instances, one can now rely on Citrix Provisioning Services to stream the operating system. Licensing is now centrally handled by a Citrix License server. And virtualization has become the norm with Citrix XenServer being one of the hypervisor choices. To optimize remote access, Citrix Netscaler now plays a key role. All security, load balancing, tunneling and other networking features are centralized in Netscaler.

To provide access through mobile devices, Citrix XenMobile Mobile Device Manager (MDM) plays an important role. Enterprise storage can now be managed using Citrix Sharefile, with the data being stored entirely in the cloud, or on premise on storage zones. And with the latest release Citrix XenApp 7.5, customers can even spin up XenApp instances in the cloud, on demand. The Citrix CloudPlatform allows customers to provision applications and desktops in the cloud.

Use cases of Citrix solutions
Use cases of Citrix solutions

The use cases of Citrix technologies are also many. Bring your own device (BYOD), Flexwork, remote partner access to sensitive data in a secure manner, call center transformation to lower costs, corporate access from anywhere at any time, desktop replacement initiatives, etc., are some of the popular initiatives where organizations are using Citrix technologies.

Performance Management a Key to Citrix Success

For these initiatives, performance is the key success factor. Users of virtual desktops or virtual applications expect the same performance as they had with physical desktops or applications. As you had seen earlier, the Citrix part of the IT infrastructure itself has many many components, not to mention the other third party dependencies (e.g., profile management, Active Directory, storage, etc.). For Citrix deployment success, every piece of the infrastructure has to work fine. This is where the need for a total Citrix performance management solution comes in.

eG Enterprise monitors anything Citrix
eG Enterprise monitors anything Citrix

The eG Enterprise performance monitoring, diagnosis and reporting solution from eG Innovations has the broadest coverage in the industry for Citrix technologies. From a web browser, you can monitor and manage every tier of the Citrix infrastructure from a single dashboard. To learn more, please visit our web site – http://www.eginnovations.com.

If you are going to be at Citrix Synergy in a couple of weeks’ time, please visit us at Booth 412. At the show, we will be demonstrating our technologies for monitoring anything Citrix!

Monitoring Citrix Provisioning Services

Why Citrix Provisioning Services?

Citrix Provisioning Services (PVS) is an important component of a Citrix architecture. For Citrix XenDesktop, PVS is used to manage and stream virtual desktop images. In a Citrix XenApp deployment, PVS is used to stream server images for the Citrix XenApp instances.

PVS provides several benefits. With PVS, administrators can maintain one (or few) gold images of a virtual desktop or a XenApp server. Administrators no longer need to patch individual desktops or XenApp instances separately. With PVS in place, they can be sure that the latest copy of the gold image with all the latest fixes and patches is being used for each virtual desktop and XenApp server. PVS also reduces the storage required for your Citrix XenDesktop and XenApp environments considerably since a single image is used to stream to many target devices.

Why Monitor Citrix Provisioning Services?

Monitoring of PVS is very important because it is an integral part of a XenDesktop or XenApp infrastructure. If PVS is slow or has insufficient system resources, this can impact the user experience severely. Here are some of the common problem conditions administrators have to look out for in provisioned Citrix environments:

  • Is the PVS server available and responding well? If a PVS server goes down, new devices will not be able to boot from the PVS server (unless the PVS farm is configured with multiple servers). Also users accessing all active target devices – i.e., devices that are connected to the PVS server – will stop responding (a popup will be shown indicating that the system is paused until the connection has been reestablished).
  • If a PVS server is slow, it may take a long time for the vDisk to be streamed to the target device. This can result in longer boot times for the target devices.
  • If the PVS server’s memory is not sized sufficiently, the PVS server will not be able to cache all the vDisks in memory and stream them from memory. Insufficient PVS memory can result in a lot of read/write operations from the PVS server’s physical disk. Since physical disk accesses are slower than accesses to memory, a PVS server with an insufficient cache will be slow.
  • The size of the PVS write cache is also very important. If the write cache is on a target device’s RAM (also known as RAM cache) and the cache becomes full, users of the target device (i.e., the virtual desktop or XenApp server) will see a ‘Blue Screen of Death’ showing a system failure. Hence, it is important to monitor and detect situations when the write cache utilization is high.
  • A PVS server relies on a database for storing configuration data. An active connection to this database is required for normal operation of PVS. In case the database server goes down, active target devices will continue to function, but new targets cannot be booted and active targets will not be able to fail over to another server. (If PVS is configured with ‘Offline Database Support’, database server failures are not as catastrophic).
When the write cache on RAM is fully utilized, the target device will crash with a blue screen of death. Users will experience a service outage in this case.

Monitoring Citrix Provisioning Services with eG Enterprise

eG Enterprise provides comprehensive monitoring of all aspects of Citrix PVS performance. For each server, the following key metrics are tracked in real-time:

  • Availability of key provisioning server Windows services
  • Provisioning server’s log files for errors
  • Event logs on the provisioning servers for errors and warnings
  • Status of each of the vDisks
  • Whether any vDisk is locked
  • Target device write cache utilization
  • Monitoring IO generated by stream service
  • Cache hits from the server’s system cache
  • Monitoring any retry activity on the target device
  • Provisioning server’s database and license server status
  • Monitoring active device connections in the PVS farm
  • Monitoring inactive devices
  • Target device activity on vDisks and device collections
  • CPU, memory, disk and network utilization and activity
eG Enterprise’s in-depth performance model of a Citrix Provisioning server

For more information on how eG Enterprise can help monitor, diagnose and report on the performance of Citrix Provisioning Services, please visit – http://www.eginnovations.com/web/citrix-provisioning-services.htm

Microsoft SQL Server Monitoring: SQL Server Sprawl and Heterogeneous Versions Cause Monitoring Headaches

Microsoft SQL is Widely Deployed in Enterprises

According to the Microsoft SQL Server team on TechNet , SQL Server is world’s most widely deployed database. In its October 2013 magic quadrant, Gartner identified Microsoft as a leader, second only to Oracle.

Magic Quadrant for Operational Database Management Systems

Database Gartner Magic Quadrant1Source: Gartner (October 2013) – http://gtnr.it/IKDu9G

SQL Server’s success is attributed to multiple factors:

  • It is simple to install and easy to maintain.
  • Several third party applications and development tools support SQL server.
  • It has a wide array of functionalities and with the scalability enhancements in its latest releases, it represents a good option for enterprises.
  • Microsoft also provides lower cost, service-provider friendly licensing that makes deployment of SQL easy.

SQL Server Proliferation Results in Sprawl

The very success of SQL server has contributed to a high degree of proliferation, leading to SQL server sprawl.  Almost all applications today use a database server for data storage. Because of its licensing and ease of use, many packaged applications and in-house applications use SQL server as the backend. To minimize conflict between applications, many a times, a separate SQL server or SQL instance is used for each application.

Since it is simple to deploy, application owners themselves often deploy and use SQL server, instead of depending on a database administration team. Over a period, this uncoordinated deployment has resulted in a proliferation of SQL server instances, leading to SQL sprawl.

Yet another artifact of this evolution is that an enterprise often has multiple versions of SQL server running in parallel.  A recent survey conducted by Paul S. Randal shows that enterprises are still running several older versions of SQL server. In fact, as the table below reveals 45% of enterprises still have SQL Server 2000 deployed!

What’s the oldest version of SQL Server that you have in production?

Oldest version of SQLSource: SQLSkills.com – http://bit.ly/1dnRpvj

What makes the problem worse is the fact that often, when an application is decommissioned, the database server it uses has to be manually decommissioned. This also results in SQL server instances being left running but not used.

From a resource usage perspective, for optimal performance, SQL server has been designed to use up all of the memory available on the servers (or VMs) that it is hosted on. If there are unused instances of  SQL server running, these will unnecessarily take up a lot of the memory resources. In environments where SQL server is deployed on virtual machines, the bloated memory usage of unused SQL instances could even impact the performance of applications hosted on other virtual machines.

The Need for Unified Monitoring of Microsoft SQL Server

To manage SQL server in an enterprise, the IT team needs to be able to:

  • Automatically discover all the systems where SQL server is running;
  • Be able to monitor all the SQL instances, to determine ones that are least used or rarely used;
  • For the ones that are in use, determine if the resources allocated for each instance are optimal or not.
  • Measure the performance of each SQL server instance to determine the availability and responsiveness of each instance.
  • Have a consistent way to monitor different versions of SQL server, so administrators do not have to learn different tools for each version.

eG Enterprise provides IT administrators a single, integrated monitoring solution using which they can monitor, diagnose and report on the performance of SQL Server across all of the commonly deployed versions and in a consistent manner. SQL versions 7.0, 2000, 2005, 2008, and 2012 are supported.  Monitoring of named and port-based SQL instances is supported and SQL clusters can also be monitored from the same console.  IT administrators also have the option of monitoring SQL Server in an agent based or agentless manner. For more information on the eG SQL monitor, see http://www.eginnovations.com/web/sqlmonitor.htm