Written by Newton Cunningham at Cireson.

There are 3 interesting concepts that need some discussion in regards to the Application Model in Configuration Manager 2012, and they are the following:

  • Maintenance Windows
  • Distribute on Demand
  • Roaming clients

In no way are these three items necessities when setting up the application model, but they are new and old items that need to be discussed. The following are explanation, points of view and troubleshooting local client log tips.

Maintenance Windows are very necessary and most might remember them being a part of the collections section. They still very much are a part of Collections, but there is something to take into consideration. Maximum allowed run time is really only important when maintenance windows are in place; if maximum allowed run time is longer than the maintenance window then the deployment will fail out. Verification can be done through checking the CITaskMgr.log. If the following is present within the log then act accordingly:

  • Not enough admin defined service window available – shown if Maintenance Windows are not existent, but will be in the eventual future.
  • No Service Window defined to accommodate execution – shown if maximum allowed run time is longer than maintenance window.

Distribute On Demand is a new and very good feature that can be useful for keeping large content off of Distribution Points (DP), yet clients can still receive the content. The “Allow fallback source location for content” check box must not be checked (both on the DP and the Distribution Type), and the client must be part of a boundary. The deployment must be made available to the client. In the Software Center, the end-user must trigger the application once, but it will fail. Even though the install failed, the DP now knows it needs this content and begins downloading the content to the DP. The end-user can click Retry and it should begin installation (may need to do a few times according to source size). The Appenforce.log will describe the sequence of events of the application install such as the following:

  • Download content into cache
  • Execute command
  • Verifies exit code for successful install
  • Verifies detection of installation

A Roaming Client is definitely new, but is still worth reviewing. The purpose of roaming clients is for the client to be able to go from Site to Site/ Boundary to Boundary and still be able to communicate with Configuration Manager and receive content. The ContentTransferManager.log gives info on retrieval and download of content from which DP the client is using; this can be very handy with troubleshooting. The following scenarios are great examples of what a roaming client is:

  • Client exist in one of the boundaries within the hierarchy – When the client switches to another boundary under another site (whether Primary or Secondary) then there will be a new Resident Management Point (Proxy Management Point only appears when in another Primary site’s boundaries) assigned; and the content will pull from the new sites DP as shown in log.
  • Client does not exist in one of the boundaries within the hierarchy – “Allow fallback source location for content” must be checked on Deployment Type of application and one of the DPs in order for the client to communicate with Configuration Manager and receive content.

This should help explain different aspects of the application model. If you have any questions in regards to this then send me a message on my Twitter (https://twitter.com/JNewtonC) and follow https://twitter.com/teamcireson. Hope this helps everyone out there and makes life a little easier for you.