Using PowerShell DSC on Windows


52 students completed the lab in ~48m

Total available time: 1h:20m

14 students rated this lab!

Lab Overview

Using PowerShell DSC on WindowsPowerShell Desired State Configuration (DSC) allows you to declare the desired state of a node's configuration and PowerShell DSC will make it so. You don't have to specify the steps required to arrive at the desired state. Resources automatically do all the heavy lifting to take the node to the desired state. Using PowerShell DSC on Windows, you will configure two Windows servers:

  1. A PowerShell DSC web pull server hosting configuration files
  2. A PowerShell DSC node that pulls its configuration from the pull server

Lab Objectives

Upon completion of this Lab you will be able to:

  • Understand key PowerShell DSC concepts
  • Configure Windows systems using PowerShell DSC
  • Set up a PowerShell DSC pull server
  • Write PowerShell DSC configurations
  • Set up a pull mode PowerShell DSC node

Lab Prerequisites

You should be familiar with:

  • Microsoft Windows operating system basics
  • PowerShell basics are beneficial, but not required

Lab Environment

Before completing the Lab instructions, the environment will look as follows:


After completing the Lab instructions, the environment should look similar to:

Follow these steps to learn by building helpful cloud resources

Logging into the Microsoft Azure portal

Begin the Lab by logging into the Microsoft Azure portal

Connecting to the Virtual Machine (RDP)

Connect to the Windows virtual machine using Remote Desktop Protocol (RDP) software

Reviewing PowerShell DSC Concepts

Review the pillars of PowerShell DSC: configurations, resources, and the Local Configuration Manager

Setting Up a PowerShell DSC Pull Server

Configure a DSC pull server to make configurations available to DSC nodes

Serving Configurations on the DSC Pull Server

Serve a configuration on the DSC pull server that will be used to configure a DSC node

Setting Up a DSC Node to Pull Its Configuration

Instruct the node's Local Configuration Manager to get its configuration from the pull server