Though I do enjoy working with Unidesk when deploying virtual desktops, its inevitable that at some point, I’ll deploy applications to virtual desktops using VMware App Volumes.  To that end, I attended a 2 part webinar which went over some of the basics of the technology so as to gain some familiarity and insight into VMware’s application layering strategy.

App Volumes differs from Unidesk somewhat in that VMware recommends that multiple applications be grouped into “like” AppStacks.  For example, you may have:

  • An AppStack that contains the core or global applications required by all users
  • An AppStack that contains applications needed by a specific group/department
  • One-off AppStacks that contain applications those applications which may not be global or departmental, but needed for special use cases

The idea is to keep the number of AppStacks to a minimum.  Why?  My understanding is this…VMware App Volumes assigned AppStacks to Active Directory user groups, thus the application AppStacks cannot be added to a virtual machine until a user logs in.  At this point the Cloud Volumes agent will attach any AppStacks to which the user has permissions to the virtual desktop; thus,  the more AppStacks you assign to a user, the longer it could take for the logon process to complete and so it’s best practice to keep the number of AppStacks assigned to a given user around 10 if at all possible.

In Unidesk, there’s nothing stopping you from grouping applications together like this, but personally, I install each application into its own layer….I find this allows for greater flexibility or even creativity when building and deploying virtual desktops.  As opposed to App Volumes, Unidesk assigns applications to virtual machines and so the virtual machine is ready to go when the user logs in….no need to wait for additional layers after the user logs in.

So it appears to me, that more thought will go into designing App Volumes and to assist us, VMware has developed a 5-step design methodology:

1. Assessment

  • Which groups use which applications today?
  • How are applications delivered to the end user?
  • Are there existing application delivery mechanisms like SCCM, GPOs, ThinApp, or App-V?
  • Identify unsuitable applications, like Anti-Virus or any application that must be running even when no user is currently logged in.  This will help you to determine which applications must be loaded into the “master” or base image.
  • Determine what types of devices/OS’s App Volumes will be delivered to

2. Discovery

  • In the Assessment phase, you’ll determine the if an application packaging and deployment strategy exists – does the organization like it?  Is the existing strategy reliable?
  • If no application deployment mechanism exists, find the source media/installers and your license keys.  Does a KMS server exist?
  • Begin to consider application groupings
  • Who will maintain the AppStacks?  Will the desktop support team maintain them all or just the global AppStack?  Will each department have a point person in charge of maintaining the departmental AppStacks?

3. Plan and Design

  • Determine and create if necessary, required Active Directory user groups and their AppStack assignments
  • Determine which applications will be installing into the master image and which will be installed into AppStacks
  • Assign AppStacks to their appropriate Active Directory group
  • Who gets writable volumes?
  • Document AppStack update procedures
  • Determine pilot users

4. Build and Test

  • Determine success criteria and develop a test plan that accurately measures them
  • Deploy the solution to the pilot group and measure user acceptance for performance, manageability, and security against the success criteria
  • Create a punch-list detailing any deviations from the success criteria

5. Optimization

  • Review the punch-list and make any necessary changes.
  • Did App Volumes perform as expected?  If not, how can the overall process be improved?
    • Was the any effect on logon times?
    • Any confusion regarding the update process?
    • Are the “mixtures” of applications in each AppStack optimal or should the groupings be changed?
  • Test with pilot group after changes have been made and fine tune design based on UAT

As is the case with all technologies, a successful design methodology has a tremendous impact on the overall success on the deployment of that technology and VMware App Volumes is no different.  If you will be deploying VMware App Volumes, don’t rush through it and keep in mind the design methodology described above to increase your chances of success when rolling it out to your virtual desktops and end users.