Roll Out New Configuration Manager Distribution Point with PowerShell

Here is a quick example how to install new Configuration Manager Distribution Point with PowerShell. As you see we have many options to expand this script. We can install Windows Server features, reboot it remotely, install additional software etc. It all depends how you wanna install and configure it.

#Import the Module
Import-Module $env:SMS_ADMIN_UI_PATH.Replace("\bin\i386","\bin\configurationmanager.psd1")
$SiteCode = Get-PSDrive -PSProvider CMSITE

#Change the connection context
Set-Location "$($SiteCode.Name):\"

#New DP Information
$DistributionPoint = ‘’
$SiteCode = ‘PS1’

# Test the connection to server
        -ComputerName $DistributionPoint

# OPTIONAL - Install Windows Server Roles and Features

        -Name Web-ISAPI-Ext,Web-Windows-Auth,Web-Metabase,Web-WMI,RDC
        -ComputerName $DistributionPoint

# OPTIONAL - Restart the Server

        -ComputerName $DistributionPoint

        -For PowerShell

# Add new Site System Server

        -ServerName $DistributionPoint
        -SiteCode $SiteCode

# Add a Distribution Point

        -SiteSystemServerName $DistributionPoint
        -SiteCode $SiteCode

        -ClientConnectionType Intranet
        -MinimumFreeSpaceMB 50

        -PrimaryContentLibraryLocation Automatic
        -SecondaryContentLibraryLocation Automatic

        -PrimaryPackageShareLocation Automatic

        -SecondaryPackageShareLocation Automatic
        -CertificateExpirationTimeUtc ((Get-Date).AddYears(100))

# Modify the DP

        -SiteSystemServerName $DistributionPoint
        -SiteCode $SiteCode

        -ClientCommunicationType HTTP

#Additional steps here
    #Monitor DP Intallation

    #Distribute Content


Merry Christmas Smile

About the Author:

Kaido Järvemets
Configuration Manager MVP


  1. S. D'Souza December 10, 2015 at 15:54 - Reply

    Another suggestion would be to assign the boundary group to the DP.

  2. Kaido Järvemets
    Kaido Järvemets December 11, 2015 at 7:44 - Reply

    Yep. If I didnt miss anything, then currently we dont have a cmdlet for that. here is the example that you are looking for –


  3. rafal Doloto December 11, 2015 at 15:07 - Reply

    If you make a function parameter for boundary group you can pass it as parameter
    Set-CMDistributionPoint -SiteSystemServerName $NewServerName -SiteCode $NewServerSite -AddBoundaryGroupName $BoundaryGroupName -AllowFallbackForContent $false -EnableValidateContent $true -EnableBranchCache $true

  4. MicrosoftTouch December 13, 2015 at 14:02 - Reply

    […] Pour accéder au script et avoir plus d'informations: […]

Leave A Comment