Configure pre-cache content for task sequences
Applies to: Configuration Manager (current branch)
The pre-cache feature for available deployments of task sequences lets clients download relevant content before a user installs the task sequence. The client can pre-cache content for task sequences that upgrade an OS or install an OS image.
In version 1910, Configuration Manager enables this feature by default. In version 1906 or earlier, Configuration Manager doesn't enable this optional feature by default. You must enable this feature before using it. For more information, see Enable optional features from updates.
For example, you only want a single in-place upgrade task sequence for all users, and have many architectures and languages. In previous versions, the content starts to download when the user installs an available task sequence deployment from Software Center. This delay adds additional time before the installation is ready to start. All content referenced in the task sequence is downloaded. This content includes the OS upgrade package for all languages and architectures. If each upgrade package is roughly 3 GB in size, the total content is very large.
Pre-cache content gives you the option for the client to only download the applicable content and all other referenced content as soon as it receives the deployment. When the user clicks Install in Software Center, the content is ready. The installation starts quickly because the content is on the local hard drive.
In Configuration Manager version 1902 and earlier, this behavior only applies to the OS upgrade package. That package is the only content on which you specify the matching architecture or language. For example, if the task sequence also references multiple driver packages, the client downloads them all. The task sequence engine evaluates the conditions on the steps when the task sequence runs, not in advance. The client uses the tags on the package properties to determine which content to pre-cache.
Starting in version 1906, you can use pre-caching to reduce bandwidth consumption of the following content types:
- OS upgrade packages
- OS images
- Driver packages
There are three steps to configure the pre-cache feature:
- Create and configure the packages
- Create a task sequence with conditional steps
- Deploy the task sequence and enable pre-caching
1. Create and configure the packages
The client evaluates attributes of the packages to determine which content it downloads during pre-caching.
OS upgrade package
Create OS upgrade packages for specific architectures and languages. Specify the Architecture and Language on the Data Source tab of its properties.
Create OS images for specific architectures and languages. Specify the Architecture and Language on the Data Source tab of its properties.
Create driver packages for specific hardware models. Specify the Model on the General tab of its properties.
To determine which driver package it downloads during pre-caching, the client evaluates the model against the Name property of the Win32_ComputerSystemProduct WMI class.
The actual query uses a
LIKE statement with wildcards:
select * from win32_computersystemproduct where name like "%yourstring%". For example, if you specify
Surface as the model, the query matches all models that include that string.
Create packages for specific architectures and languages. Specify the Architecture and Language on the General tab of its properties.
2. Create a task sequence
Create a task sequence with conditional steps for the different languages and architectures, or different hardware models for driver packages.
|OS upgrade package||Upgrade OS|
|OS image||Apply OS Image|
|Driver package||Apply Driver Package|
For example, the following Upgrade OS step uses the English version:
The following WMI query is recommended for the English (United States) OS and 64-bit architecture:
SELECT * FROM Win32_OperatingSystem WHERE OSArchitecture LIKE '%64%' AND OSLanguage='1033'
First add the language by selecting the Operating System Language condition. Then edit the WMI query to include the architecture clause.
3. Deploy the task sequence
Deploy the task sequence. For the pre-cache feature, configure the following settings:
On the General tab, select Pre-download content for this task sequence.
On the Deployment settings tab, configure the task sequence as Available.
On the Scheduling tab, choose the currently selected time for the setting, Schedule when this deployment will be available. The client starts pre-caching content at the deployment's available time. When a targeted client receives this policy, the available time is in the past, thus pre-cache download starts right away. If the client receives this policy but the available time is in the future, the client doesn't start pre-caching content until the available time occurs.
On the Distribution Points tab, configure the Deployment options settings. If the content isn't pre-cached before a user starts the installation, the client uses these settings.
For a task sequence that installs an OS image, don't use the deployment option to Download content locally when needed by the running task sequence. When the task sequence wipes the disk before it applies the OS image, it removes the client cache. Since the content is gone, the task sequence fails. These deployment options are dynamic based on other options you select for the deployment. For more information, see Deploy a task sequence.
When the client receives the deployment policy, it starts to pre-cache the content after the deployment's available time. This content includes all referenced packages, but only the OS upgrade package that matches the architecture and language attributes on the package.
When the client makes the deployment available to users, a notification displays to inform users about the new deployment. Now the task sequence is visible in Software Center. The user can go to Software Center and click Install to start the installation.
If the client hasn't fully pre-cached the content when the user installs the task sequence, then the client uses the settings that you specify on the Deployment Option tab of the deployment.