Tuesday, February 19, 2013

MMS 2013

Just arranged tickets and everything else for trip to MMS 2013 in Las Vegas.
I've been there a couple of times already and still think it is worth the time and the money.

SCCM and App-V 5.0 integration

App-V 5.0 is getting more and more popular, but we are still suffering from lack of documentation regarding various aspects of its implementation. This was by the way one of the points everybody agreed on during the European App-V User Group 2013 event.
I've spent some time figuring out how App-V 5.0 integrates with Microsoft System Center Configuration Manager.

Because i've dedicated some time on it i'd like to share (some of) me findings to fill the information gap hoping that it'll save valuable time of people who've already spent their time reading this post ;)


Some general information about App-V 5.0 implementation scenarios can be found in this MS article. According to that article we've got 5 common implementation scenarios:
  1. App-V v5 Full Infrastructure
  2. App-V v5 & Configuration Manager 2012 SP1 Integration
  3. Deploy through a ESD using Windows Installer (.MSI) or Windows Powershell
  4. App-V v5 Standalone Client Domain
  5. App-V v5 Standalone Client Workgroup

When you've got an older SCCM version or any other Electronic Software Distribution System (others call them PC Life-cycle Management system etc) like Altiris, Landesk, KACE, Tivoli and anything else you can easily deploy your App-V 5 sequences using generated MSI or throug Powershell cmdlets.

If you want to fully integrate App-V 5 into your SCCM infrastructure you can do it only when using SCCM 2012 SP1 and higher.

 


Microsoft has recently published white-paper  Managing_AppV5_with_Configuration_Manager_2012SP1.pdf . This white-paper is  must read if you are going to implement the integrated infrastructure and it covers almost all aspects of integrating App-V 5.0 with SCCM 2012 SP1.
So, what's so interesting about App-V 5 and SCCM 2012 SP1 integration, we'd like to spend our time to? To be honest, if you've got proper understanding of App-V 5 and SCCM 2012 and if you've carefully read Planning for App-V Integration with Configuration Manager in addition to the white-paper mentioned above then you are good to go...

But what about App-V 5 full infra and SCCM 2012 SP1 integration coexistence?

 

According to Migrating from an App-V Infrastructure to a Configuration Manager and App-V Infrastructure:
"Configuration Manager begins to manage virtual applications on a client after the first deployment of a virtual application. After this, all App-V applications on the computer must be managed by Configuration Manager." This is exactly the same as when integrating SCCM 2012 and App-V 4.6. One of the statements that i could find here and there is that there is no hybrid model possible, SCCM client will take control over App-V client.

Let's take a look at what will really happen ;)

we've got four applications published through App-V server:



7zip and Foxit Reader are configured for BUILTIN\Users (all AD users) and Firefox and Wordviewer have no users or groups configured in AD Access yet.

our test system has App-V 5.0 and SCCM 2012 SP1 clients installed.
one publishing server is set through GPO using ADMX from here, another publishing server is set using Add-AppvPublishingServer.
Get-AppvPublishingServer shows both publishing server.





the registry looks as expected:


There is one management server defined in the App-V client registry and PackageURI's are pointing to UNC path containing package sources

when we'll look in App-V client GUI



We'll see exactly what we would expect...

we've got Firefox deployed to users through SCCM 2012 SP1


Let's roll .........

After installing Firefox from Application Catalog we'll see the following...


App-V 5.0 client registry


as we can see there is one more package added and PackageURI of the new package points to ConfigMgr DP, and the previously existed packages are unchanged.
There are no more publishing servers defined in Publishing\Servers, SCCM client has removed it from the App-V client registry!
but if we use powershell cmdlet to get the list of publishing servers ...



we still have publishing server configured through GPO

The App-V 5.0 client shows three apps:



and we can start each of those apps and see that they are working




Now let's take a look at what will happen when we configure AD Access on App-V server for WordViewer...
after some patient waiting it simply appears in App-V client GUI :O



We've received WordViewer which was published through App-V 5.0 full infra, after we've deployed an App-V 5.0 application throug SCCM 2012 SP1

And yes, we still can run them all!!!




Now lets remove publishing server from GPO and see what will happen when we'll import a new application into App-V management server and try to publish it.



publishing server is gone...
Update button in App-V client is grayed out...
and we can wait for ages, but no new application will be added.

But...
as soon as we put back the GPO that configures publishing server, we've got the newly added application ready to use in addition to all the apps we've already had available.



A side note with findings from the VirtualApp.log
When an application is started that wasn't deployed through SCCM we can see messages like this:
GetContentLocation() is called for the AppV package 4B489FAC-9879-4D57-97A7-86E745939BE2 version GUID 4AD8A1ED-37EB-48CD-B2E5-F953EA29EE8E
The AppV package 4B489FAC-9879-4D57-97A7-86E745939BE2 version GUID 4AD8A1ED-37EB-48CD-B2E5-F953EA29EE8E is not deployed by ConfigMgr V5 yet. We will not set streaming DP for it. Ignore this request
These are only informational messages, there are no errors or warnings regarding settings configured through GPO (think about what messing with GPO settings for WSUS will do with your updates deployment through SCCM :D)


Wel, what can we conclude from this quite long story?

Running App-V 5.0 full infrastructure and SCCM 2012 SP1 with App-V 5.0 integration side-by-side / hybrid (or whatever you can call it) is possible.

There are currently no official Microsoft statements regarding support for such configurations.

Whether or not you can or should use it depends completely on your environment.