ra2 studio - Fotolia

Evaluate Weigh the pros and cons of technologies, products and projects you are considering.

The definitive application virtualization capacity plan

Application virtualization capacity planning comes down to four main points of emphasis, including knowing user needs and understanding hardware requirements.

Application virtualization requires careful planning to ensure that an organization's compute, network and storage resources can handle the anticipated workloads and that IT avoids overprovisioning.

Before implementing application virtualization, IT professionals should test their configurations as thoroughly as possible to get a sense of what to expect. They might also consider a phased rollout so they can adjust the deployment to reflect more accurate capacity projections based on what they learn in their initial implementations.

Unreliable application delivery leaves users frustrated and much less productive, which could result in a failed project. The more accurate the capacity predictions, the more effective the deployments and the happier everyone will be. To give themselves the best shot at success, IT pros must follow this app virtualization capacity plan to know their end users' needs, identify the application requirements, evaluate their deployment and plan the physical resources.

Know end users' needs

A good app virtualization capacity plan starts with IT understanding how many users it currently supports and will support into the future. It should focus on users who work with virtual applications but also be aware of other users because they can factor into system capacities. For example, users who transfer large files across the network throughout the day can affect capacity, whether they use virtual apps or not.

Still, IT pros must drill deepest into the usage and workflow patterns of virtual application users. They must understand when and where users work and how many users access what applications concurrently. IT should also get a sense of how the numbers might change over time to account for factors such as seasonal disruptions.

IT should also understand how its users are distributed across offices and geographic regions, as well as whether they access applications directly over the corporate network, across a WAN, over the internet or a combination of the three. In addition, IT should determine whether users will access the applications from physical desktops, virtual desktops or devices, such as tablets or thin clients. IT should also keep an eye on details such as the types of files users work with and how much they collaborate.

Identify application requirements

Understanding app requirements is critical for any app virtualization capacity plan, and that starts with knowing what applications to support -- now and in the future -- and how usage might fluctuate. For example, an organization might use an application only during the holiday season or might bring on more users during a specific time of year.

In some cases, such as with line-of-business (LOB) applications, it might be challenging to project what IT must implement or when. One way to get an idea of the projections is to run capacity tests using similar apps to the LOB apps.

For each application, IT pros must estimate how the app will consume system resources, including the ways users work with the application. IT should determine how much memory and processing power each application requires, as well as the storage requirements for the app and its related data. Some apps require databases or configuration files or store personal user settings.

IT should determine the acceptable levels of service on a per-application basis, accounting for factors such as response times and availability. It's also good to know what happens to productivity if an application is suddenly unavailable. Some users can't work at all without certain apps.

Determining application requirements is inextricably tied to understanding user needs.

Determining application requirements is inextricably tied to understanding user needs. If users are globally distributed, for example, IT must distribute the applications across multiple data centers or office locations, while accounting for which users are working with which applications. Such distribution can also require a certain level of redundancy and affect network loads.

Evaluate the deployment

Whether IT pros already use a product that includes application virtualization or plan to bring in something new, they should decide which of the product's features to implement and determine the system requirements to support those features. Some products, such as Microsoft Application Virtualization, provide reporting capabilities, for example, which require additional resources to support the reporting server and database, as well as the data collection process.

IT pros must study resources, such as product documentation and case studies, to get a complete picture of compute, network and storage requirements. The way in which a product manages and delivers applications can affect capacity requirements across the entire infrastructure.

It gets tricky if IT already runs a virtualization product for other purposes. For example, IT might use VMware Horizon to support VDI and now wants to use VMware ThinApp to deliver virtual applications. Estimating the additional capacity requirements can be tough because the systems and services are so interconnected. As a result, IT pros must rely heavily on VMware and third-party resources to understand the implications of enabling application virtualization.

Regardless of the product, IT should end up with a comprehensive understanding of the types of servers it needs, where those servers should be, specific database requirements and anything else relevant to deploying the product.

Be sure to evaluate the available compute, network and storage capacities to determine what loads each currently handles and will handle. IT's network map should show the available bandwidth, connection paths, WAN link speeds and other relevant information. IT pros don't want to implement application virtualization at the expense of their current operations. At the same time, they might discover they have room to incorporate at least some of the application load.

In addition, IT pros should consider whether the virtualization product will integrate with systems such as Active Directory or management software. Also, they should account for the resources necessary to perform backups, support failover clusters or implement other disaster recovery mechanisms.

Plan the physical resources

For compute resources, IT should determine the server configurations it needs to host the components that make up the virtualization product, paying specific attention to CPU and memory requirements.

As part of this, IT should calculate the resources it requires to host and deliver applications. Don't assume the resources for running an application on a physical desktop translate directly to virtualization. IT pros might find that their applications require more CPU or memory resources. The applications might also affect other operations, such as virtual desktops or Remote Desktop Services sessions.

When assessing network capacity requirements, IT should account for all the resources it needs to deliver the applications and facilitate communications between the components that make up the product. IT must also account for any effect app virtualization might have on other systems, as well as the resources necessary to communicate with those systems.

Another network-related consideration is the change in users' daily workflows. If users currently access files in the data center from their desktops through locally installed applications, the operations represent a specific network usage pattern. If the file transfers between the applications and servers occur entirely within the data center, however, IT has a very different usage pattern.

Finally, storage includes the resources necessary to store all data related to hosting and delivering applications. This includes the applications themselves, any related data and personal user data, as well as the virtualization product and its associated files. Be sure to account for any databases, analytics data, configuration files and other components that require storage resources.

IT also has to account for factors such as disk I/O, latency levels and caching. It must also consider the potential effect on other systems using those resources. For example, if IT supports VDI, it has to consider the potential effect on random I/O patterns and low latency tolerances.

Next Steps

How to plan for virtual desktop capacity requirements

Pop quiz on planning a VDI deployment

Complete guide to planning a VDI project

Dig Deeper on Application virtualization and streaming