Distributing software with Content Distrubution and Configuration Manager

Content Distribution (CD) integrates with the Configuration Manager (CM) client content download process. When CD is installed, it registers with the Configuration Manager client as an Alternate Content Provider (ACP), which means the CM client will use Nomad as an alternative to BITS when it requires content if Nomad is enabled for the requested content object. Nomad can be enabled on individual packages (including Driver Packages, Operating System Images, Operating System Upgrade Packages and Boot Images) and Task Sequences.

For Applications and Software Updates, Nomad is enabled on each client for all Applications and Software Updates through Default Client Settings. When the CM client requires Nomad-enabled content, it passes a request to Nomad, which in turn downloads the content, places it in the CM client cache and passes back to the CM client for execution. The 1E Client (with Nomad client module enabled) must be installed on all CM client machines and on all Distribution Points (DP).As well as enabling Nomad on the CM content objects as described above, additional options can be configured in the same manner. For example, you can set the priority for package downloads, interrupting less urgent downloads and then carrying on from where they left off. You can also configure Nomad to send status messages to CM that show the progress for package download.

Refer to Deploying software with Configuration Manager for example scenarios about deploying Applications and Packages where Nomad is integrated with Configuration Manager and how you can monitor those deployments using the Content Distribution app.

Supported Configuration Manager content sources

Nomad is able to download content deployed through Configuration Manager (CM) from the following sources:

  • Distribution Points - using either HTTP (default) or HTTPS (requires Nomad client configuration).

  • Cloud Distribution Points - using HTTPS (requires client configuration).

  • Cloud Management Gateway (CMG) - configured to function as a Cloud DP.

  • Microsoft Update - where the Software Update deployment has been configured to download from Microsoft Update when the content is not available on a DP.

When the CM client instructs Nomad to download content, it provides a list of sources from which the requested content is available. The list of sources is prioritized as follows:

  1. On-premises DP - based on Boundary Group configuration.

  2. Microsoft Update - exclusively for Software Updates when this option is enabled in the Software Update Deployment.

  3. Internet-facing DP.

  4. Cloud DP or CMG - configured to function as a Cloud DP.

The Nomad elected master attempts to connect to each content source in the prioritized list in turn and will download the content from the first available source in this list. The elected master then shares this content with other peers on the network as described in the Download once to branch feature.

Nomad and Configuration Manager

Nomad can be set as a content provider for individual instances of the following types of Configuration Manager (CM) content. In the Configuration Manager Console, navigate to Software Library → Overview and then to one of the following:

CM Console node

Sub-node

Action

Application Management

Packages

Select a package.

Operating Systems

Driver Packages

Select a driver package.

Operating System Images

Select an operating system image.

 

Operating System Upgrade Packages

Select an operating system upgrade package.

 

Boot Images

Select a boot image.

 

Task Sequences

Select a task sequence.

 

Right-click and select Propertiesor click onCreate to start a New Wizard. Nomad properties is then accessible on the Nomad tab.

Nomad can be set as a content provider for Applications and Software Updates. You must configure settings for all Applications and all Software Updates using Client settings, as described below in Enabling Nomad for Applications and Software Updates, and not individual instances.

Nomad includes a number of custom task sequence steps that can be used to integrate with OS deployments, refer to Custom task sequence steps for details.

Nomad tab

You can set the following options on the Nomad tab:

Option

Description

Enable Nomad

Enables Nomad to be used as a data transfer service for the selected package. The other controls on this page are only active if this is enabled.

On the Nomad tab for a task sequence, this option is labeled Enable Nomad – Modifies currently associated reference packages. This is to emphasize the fact that, for task sequences, enabling Nomad at the task sequence level modifies the Nomad settings for all the packages referenced by that task sequence.

Cache Priority

defines the priority of this specific content in the Nomad cache to manage purging when new content requires cache space.

Values are from 1-9; the lower the value, the more likely the content will be purged by other content that requires the space. Refer to Cache management for details.

Work Rate

Work Rate (%) – determines the percentage of available bandwidth to use for the download. The default value is 80%. If you have set intra-work rates, (the lower of these two values is used unless you enable the Override Intra-Day Work Rate option. Please refer to MaxWorkRates for details about intra-day work rates.

Override Intra-Day Work Rate

Overrides the intra-day work rate for the duration of the download.

If Intra-day work rates have been defined on the client and this option is selected, the value defined in the Work Rate property will take precedence over the Intra-day work rate for the current day and time.

Additional Settings

Enables you to define arguments for the download command-line. The arguments are listed in the Additional Settings table.

Additional Settings

Arguments

Default value

Range

Description

++pr

Configuration Manager defines the following default values:

  • For Packages and Task Sequences the default is 3

  • For Applications the default is 0

  • For Software Updates the default is 1

Nomad will use the default values defined by CM unless the ++pr argument is specified.

As these defaults are defined by Microsoft, they may change in the future.

0 – Foreground (the highest priority)

1 – High

2 – Normal

3 – Low

4 – Background (the lowest priority)

Sets the priority for the package download. Packages with a higher priority will be downloaded before lower priority packages.

Be careful not to confuse package priority(++pr) a setting related to Configuration Manager package downloads with cache priority, a setting on the Nomad properties page related to the Nomad cache.

If a content download request with a higher priority comes along while content with a lower priority is downloading, the current download will be suspended and the higher priority content will be downloaded. When the higher priority content has finished downloading the previously suspended download will be continued from where it left off.

This caters to the situation where a large image package is being downloaded and a critical patch needs to be sent. Setting the critical patch to have a higher priority will enable it to download first and then allow the image package to continue downloading.

If you modify the priority values for packages associated with a task sequence, you must set all the priorities for all the packages to the same value.

++sm

 

1 to 99

Sets the frequency of the Nomad download status message. These messages are useful for monitoring the status of large package downloads taking place over a long period of time. The messages appear in Configuration Manager under the downloading package's status. The messages are also logged locally in the Nomad log file on the client machine.

The value for this argument sets the percentage of the download at which a status message is sent. So, ++sm=10 sets Nomad to send a message each time ten percent of the download has been transferred.

The messages sent are subject to an overall default limit of one message per hour per client. This is to prevent Configuration Manager from being overwhelmed by a status message coming from many thousands of clients.

--debug

9

1 – minimal logging

9 – default and recommended logging level

25 – detailed logging. If you use this, we recommend you increase the size of your log file to more than 1MB.

Sets the level for debug logging. Changing this value will result in a persistent change on the client.

Configuring deployments with Nomad

Packages and task sequences make use of deployments for distribution.

Package deployments intended for use with Nomad must be set to Download content from distribution point and run locally for clients using a distribution point from both a current boundary group and from a neighbor boundary group or the default site boundary group.

Using Nomad, you can also safely allow clients to use distribution points from the default site boundary group.

For task sequence deployments, select the Download content locally when needed by the running task sequence option on the Distribution Points screen in the Deploy Software Wizard.

Using Nomad You can safely allow clients to use distribution points from the neighbor boundary group and allow clients to use distribution points from the default site boundary group if this is appropriate based on your Boundary Group configuration.

Enabling Nomad for Applications and Software Updates

Set Nomad as a download provider for applications and software updates in Configuration Manager Client Settings.

To do this:

  • Open the Configuration Manager console.

  • Under Administration, choose Client Settings.

On Default Client Settings, choose Nomad Properties from the context menu.

In the Nomad Settings dialog, unique settings can be stored for both Application Management and Software Updates.

Custom device settings

In addition to configuring the Default Client Settings, you can also enable Nomad for Applications and Software Updates in within a custom client settings group.

You must configure Default Client Settings so that clients have default settings to fall back to if they move out of scope of the custom settings.

  • When creating new or modifying existing Custom Device Settings to enable Nomad, ensure the Software Deployment custom setting is selected (to enable Nomad for Applications) and Software Updates custom setting is selected to enable Nomad for Software Updates.

  • When the Custom Settings have been created or modified to include these options, right-click the custom client settings (by Name) in the Client Settings list in the console, select 1E Nomad → Nomad Properties and enable and configure Nomad for Application Management and Software Updates as indicated in the screenshot above.

  • When using Nomad in an OS Deployment Task Sequence that includes Applications or Software Updates, it is necessary for Nomad to be enabled (for Application Management and Software Updates respectively) in the Default Client Settings.

  • When a Task Sequence is executing and the ConfigMgr client is initially installed, it uses only settings from the Default Client Settings and will not apply any custom settings.