PowerShell DSC Resource for configuring Pull Server environment

PowerShell Team

UPDATE 2/6/2018 – The latest information regarding DSC Pull Service can be found in the DSC documentation using the link – https://docs.microsoft.com/en-us/powershell/dsc/pullserver


DSC is a PowerShell extension that is part of Windows Server 2012 R2 and Windows 8.1. DSC enables deploying and managing configuration data for software services and managing the environment in which these services run.

A DSC Pull Server is a web-based endpoint, with an OData interface. This server allows nodes to “Pull” Configuration such as providers on a periodic basis. This functionality is useful in environments where there are a large number of target nodes to configure, and where the target nodes need the right configuration as they come online, and to check periodically for configuration updates.

The “Pull” mechanism is a highly scalable mechanism to deploy specific environments on machines.

Image 6445 image001

This blog is about the process of setting up a Pull Server using a DSC configuration.

DSC Configuration and Resource:

The following configuration enables to setup a Pull/Compliance Server at a specified IIS endpoint (Port/Web-Site Name). There is capability to setup HTTP/HTTPS based endpoints.

Image 0537 image002

MOF for the DSC Resource:

Image 3733 image003

Module that implements the DSC *-TargetResource cmdlets:

Image 4466 image004

Module for setting up a Management OData (PSWS) IIS Endpoint – Required for Pull Server:


Here is a walkthrough of setting up a Pull Server on a Windows Server machine.

1)Unzip DSCPullServerConfiguration.zip to $env:systemdrive

2)Deploy DSC Resources (module that implements DSC *-TargetResource cmdlets, MOF etc) to Program Files

Image 7848 image006

3)Run the configuration to setup Pull and Compliance Server OData-IIS endpoints

(Note: This sample generates a self-signed cert –using makecert.exe for the HTTPS endpoint)

Image 7450 image007

Image 8741 image008

4)Navigate to the Pull Server OData IIS endpoint

Image 1348 image009

That’s it! Your Pull Server is ready for use.

Updated on 12/27/2013: Removing the older version of resource. For most recent version, go here

Thanks, Raghu Shantha [MSFT]

PowerShell Team


Discussion is closed.

Feedback usabilla icon