- Published: Tuesday, 28 May 2013
In 2012 Microsoft released App-V 5, which is actually a complete new version of the App-V product. Although there were already some reviews published and the product is on the market for some time now I think it’s still valuable to write down my view on this new release.
Just like the previous version the product exists of three main parts: a server part, a client and the sequencer (for creating the packages). Let’s start the server part.
App-V 5 Server
Logical you start with the installation of the server part. The component requires Visual C++ 2010 runtime, in my download you needed to download this separate (so it’s was not included or automatically installed). After the license agreement you need to select the components you would like to install. The server part exists of several components, which can installed on once machine or on separate servers, dependent of the size of the infrastructure and requirements.
- Management Server
Provides the overall management functionality, requires a database (locally or SQL)
- Publishing Server
Provides the streaming functionality of the virtual applications to the client
- Reporting Server
Provides the reporting possibilities within App-V. Also Reporting services requires a databases, which can be installed locally or used from a remote SQL server.
All three components require ISS (Web Server Role) and ASP.NET 4.5, which needs to be installed in advance (the App-V installation does not arrange that). After selecting the components you would like to install you need to specify the target directory, followed by the question about the databases. Logically this part differs dependent if you selected to prepare for the database or not. If you select for the pre-deployment, you should arrange your selves that a SQL server is available; this is not installed out of the App-V 5 setup. Don’t forget that you have to run the DB preparations out of the App-V setup (which can be problem in some companies). After the database questions you need to define which group or account is allowed to administer and provide port bindings for the services (management, publishing and reporting). This should be a unique port numbers per component, you are free to define which port numbers, but those should not conflict with other port numbers.
After the server installation the set-up process is mentioning the next step (starting up the management console) in the last window, really like pointing you to the right direction out of the installation steps.
Microsoft set-up a good website at Microsoft Technet, where all the possible scenarios are described including step by step guides and the possibility to create a script of the installation steps.
To open that management console you need to have Silverlight installed on the machine where you open the console from. After that you can start the console with a browser, connecting to the earlier defined management port via http://<servername>:portnumber/Console.html.As PowerShell became very important also the Management Console of the App-V Management is just offering the basic functionalities. Within the Management Website start with an overview in which there is explained what the sequencer does, while the other tiles are pointers to the other components in the console. The second option out the left “menu” provides access to the package and connection groups. Add the packages part you can add or upgrade packages. After you added an application you can edit the properties of the application via the right mouse button. You can assign permissions, change the default configuration and/or transfer the configuration from a previous package. The default configuration exists of the following components:
- Enable/Disable the application
- Enable/Add/Edit/Remove Shortcuts
- Enable/Add/Edit/Remove FTAs (File Type Associations)
Remember that the package is not published by default, so you need to publish the package before clients can use that. Logical choice, it gives you the possibility to change the configuration before it’s available for the end-users.
Within the same menu you can also add and/or edit Connection Groups. Connection Groups group one or more App-V packages to enable member applications in these packages to interact with one another while maintaining isolation from the rest of the system. This gives sequencing engineers the flexibility to maintain packages independently and removes the redundancy of adding the same application several times onto a machine. If you are familiar with App-V 4 it is comparable with the Dynamic Suite Composition (DSC), however the technique is different (because App-V 5 is built differently). It’s good to see that combining packages is now more build in the product and can be configured via a GUI (instead of editing the OSD files manually as in the previous version) and also can be assigned access to those Connection Groups. The exact configuration is already described in a lot of article on the Internet for example on TechNet with more detailed technical information.
The last two options are servers, where you can see which servers are parts of the App-V 5 infrastructure and can remove or add (register) servers to your infrastructure and the administrator part where you can add/remove administrators the App-V infrastructure (still all or nothing principle, so no delegation available).
App-V 5 Sequencer
You should ensure that before starting the installation .Net Framework 4 and PowerShell 3.0 are installed. Also the sequencer can be installed on Windows 7 SP1 or higher. The installation of the sequencer is really straight forwarded, by accepting the license agreement of provide if you would like to join the Customer Experience Improvement program. As the installation is a piece of cake you should be taken the sequence best practices into an account. Although those are written for App-V 4.x. The biggest change is that App-V does not use a separate drive anymore (by default the Q drive) so that does not apply anymore.
If you have already sequenced with App-V 4.6 SP1 or higher the sequencer is almost the same. The Package Accelerator option is still there (you can download a package where the installation steps are predefined by the supplier or the community) and also the sequence steps are similar. The biggest change is the removal of the App-V drive, which automatically means that part is not available in the sequencer anymore. This is replaced by the Primary Virtual Application Directory. The sequencer is expecting that you install the application into that directory.
Just as in the App-V 4.6 sequencer you can choose to save the package already directly after the sequence process or open the package within the Package Editor. Also this Package Editor is not changed; all the steps and possibilities are the same. The way to manage shortcuts and FTA is improved in comparison with previous versions of the Package Editor style of the sequencer.
App-V 5 (RDS) Client
In this article I will use the App-V client for an RDS/XenApp server; there is also a desktop operating system client installer available. The installation steps are really comparable with each other. As every installer the wizard starts with agreeing of the license agreement. The wizard also asks if you would like to use Microsoft Updates and if you would like to join the experience improvement program and then the actual installation already starts. The App-V client requires PowerShell 3, .Net Framework 4, Visual C++ 2010 and Visual C++ 2005SP1. These are by default only available on a Windows 2012 server, which I use for this article. This is also the case if you use Windows 8. For Windows 7 SP1 and Windows 2008R2 you should arrange that these are installed (except the Visual C++ which can be installed out the App-V client installation). You also need to have a specific Windows Updates, see the exact details here.
In the previous version you could configure the client settings using the App-V client GUI. With App-V 5 there is actually no configuration GUI available anymore. All settings should be configured using PowerShell. The first step is to import the appvclient module, followed by configuring the App-V Publishing Server and an initial sync.
After this basic configuration you can use the App-V Client Console to perform the most basic options and also provides a basic overview. Out of the client you can update the App-V Client, Download the App-V packing (caching the applications for offline use) and enable offline usage of the App-V Client (after downloading the packages). The console also provided an overview of the available packages. At this tab you can download the packages separately or repair them (which will revert the package to his default state). Also the connection groups are shown in the console. The GUI is actually built around the PowerShell scripts. You can show the PowerShell commands the console is executing by the Show PowerShell Commands, so you can learn to use the PowerShell commands. It’s definite advisable to get familiar with the PowerShell commands, a good starting point is this article.
Happily App-V also provided an ADMX template which accomplishes that you can centrally configure the App-V 5 Client settings.
From an end-user perspective nothing much has changed. Shortcuts are still located in the Start Menu (even within Windows 8/Windows Server 2012) or the Desktop. Starting the application shows a similar progress bar (but more fancy) before the application is actually started. After that the user experience is similar as previous versions of App-V.
With the App-V 5 release Microsoft drastically changed the product from a technical perspective. PowerShell is the standard and just for the most basic settings and configuration a (limited) console is available. The connection groups are different, but looks this is definite a successor for the Dynamic Suite Composition. I did not test the sequencer upgrade possibilities to migrate a package form 4.x to the App-V 5 format, but I hear different stories about the success rate. With this article I provided a basic overview of the new App-V 5 product, expect more articles in the feature with more in-depth information.