End-users want to get their jobs done quickly and efficiently. To do that, they need applications to help them complete tasks faster than they could with analog tools, like pen and paper. Our job in IT is to deliver the productivity-enhancing applications and the technology these applications depend on consistently and efficiently so that, ideally, the end-user can work as fast and efficiently as they desire and never know that IT is there – keeping it all running smoothly. Virtual desktops (VDI) should make managing endpoints and applications easier, but there is still some work required. Managing a Citrix or VMware environment that end-users love to use starts long before the end-user shows up. Consider the following:
Managing a VDI Environment that is Fast, Responsive & Consistent
- Separate the environment infrastructure virtual machines (VMs) from your virtual desktops and applications so that infrastructure VMs are not randomly robbing resources, like CPU, from your virtual desktops and applications when these infrastructure VMs are under heavy use. End-users expect their computers to perform the same every day. Mixing workloads on your desktop virtualization hosts introduces another set of systems fighting for the same resources your end-users rely on to do their jobs.
- Desktop Virtualization environments, or any IT environment where uptime is critical, should be built with at least one extra host server than you need, or what we call N+1. Your desktop virtualization environment should be built with enough resiliency to accept some system and host-level failures without significantly disrupting end-users trying to get their jobs done. Ideally, a VM or whole host could be rebooted during the day or taken down for maintenance without impacting the end-user population.
- Develop a robust patch management process. Change is a constant in any IT environment with new application versions, required monthly patches, and zero-day security patches, coming up consistently. Staying on top of patching releases can introduce new wrinkles. But more often than not, it will help keep technical debt low and the user experience more stable. Once you have a good patch management process in place, testing any change before pushing it into the production environment is an excellent process to incorporate.
- Track and manage VDI environment changes with a solid change management system. Eventually, a patch, upgrade, or enhancement introduced into your environment will break something. Having a solid change management system allows you to quickly answer the first question always asked at the beginning of an issue, “What changed?” Often the most prolonged phase of problem resolution is diagnosing the problem and figuring out what went wrong. A substantial change management system is invaluable in the time savings it can provide by enabling IT teams to see what is typically the most common source of the problem and get it fixed so end-users can be productive again.
- Maintain a test environment and a set of end-users to test a new feature, application upgrade, patch, or release to confirm everything is working as expected before pushing them into production to avoid disrupting large numbers of users with unexpected bugs. At Whitehat, we test every Microsoft Server and Microsoft Windows version release, every major-brand hypervisor release. We test every Citrix Virtual Apps and Desktops release, every VMware Horizon release, cataloging the best and most stable versions and the problematic releases that should be avoided for our clients to help maintain consistency in speed and performance.
- Measure and track metrics that are important to the end-user or are visible to the end-user and how they measure their own end-user experience, like login times.
Get Visibility into the End User Experience
- The essential tools provided by Citrix and VMware are not sufficient if you want to avoid having a potential watermelon on your hands and genuinely want to understand the experience end-users are having from their perspective. It’s easy to go way out in the weeds on this one, so be careful with what you choose to deploy. Whitehat tests all of the significant products in this area and develops our own tooling to strike the right balance between cost and needed visibility.
- Measure the success of your VDI environment by the most critical metric – end-user experience. If the end-user experience is a good one, then (for the most part) all of the quality and performance metrics surrounding each system are far less important and only become genuinely relevant again in the diagnosis phase after the end-user experience has slipped.
- Visibility is an integral part of the end-user experience, but we also need complete visibility into all systems that can impact the VDI end-user experience. Without complete visibility, it’s difficult to determine which of the thirteen basic systems that support VDI are at the root cause of any given issue, which extends diagnostic time in trying to determine what is wrong and eliminates your ability to spot problems early and take action.
- Build in tooling to identify symptoms and repair problems before end users notice. As with any system or product, there will be issues. To maintain a good, consistent, and stable end-user experience, we want to spot symptoms of problems and leverage automation where possible to identify and repair issues before end-users are even aware there is an issue. A good target to aim for is to resolve 50 percent of issues before the end-user notices.
- Being proactive can mean doing something as simple as booting up enough virtual desktops before your morning or shift-change boot storm, so end-users have a fast experience logging in to their desktop and starting to work.
Have a Fast Reactive Response
- Handle issues fast and efficiently. We know there will be issues, so we need to prepare a sound ticketing system and process to identify issues and resolve them quickly. Ideally, we don’t want anything to break and disrupt an end-user, but when something does go wrong, how you respond is critical to minimizing downtime and keeping the end-user informed and as happy as possible.
- Develop vendor contacts that can provide access to private releases, patches, updates.
- Establish some code tracing capability to find flaws in application code to help your application vendors identify and provide support for your issues more quickly.
- Process Improvement. Every support call, ticket, or engagement is an opportunity to evaluate, refine and improve your processes. Set aside time to refine your support process continually. We use a weekly cadence to review support operations. Track your top 10 tickets by user/device/app and put teams searching for the root cause.
- The fastest way to improve VDI support is to identify the people, equipment, or applications that create the most issues and spend time analyzing data for patterns after issues are resolved. Training may be needed for team members that repeatedly have the same issue or problem equipment may be costing more to support than it would cost to replace.
- Work to identify the root cause of high-volume issues and any identifiable predictive behaviors
- that might be remediated through automation or self-service.
- Catalog all optimizations and performance improvements learned and apply them to the environment to continually enhance performance.
- Knowledge share from other environments. Between peers at other organizations, with Citrix or VMware, or partners like Whitehat, an immense amount of knowledge has been captured formally and informally about issues, ways to avoid them, optimizations, and tips on what is working and what is not.
Managing virtual applications or virtual desktops requires some skill outside of traditional client-server environments, supporting stacks of PCs, Macs, or other endpoints. There are, however, teams, tools, and talent available to simplify the management of the most diverse and complex environments. The guidance presented here* comes from lessons learned managing production VDI environments and the maturity and development of our processes over the years, managing thousands of end-users of virtual environments located around the world 24/7, 365. Some of this guidance is very easy to implement, some of it is far more challenging to master. The point is to begin the journey and learn how to manage Citrix and VMware environments that end-users love to use.
We hope you find this helpful in your journey!NOTE: This guide assumes you are beginning with a solid, stable virtual application or virtual desktop environment to deliver a consistently good experience. If you are struggling with delivering a VDI environment with consistent performance, follow this link to some other document