Introduzione a DSC (Desired State Configuration) per Windows

Questo articolo illustra come iniziare a usare PowerShell Desired State Configuration (DSC) per Windows. Per informazioni generali su DSC, vedere Introduzione a Windows PowerShell DSC (Desired State Configuration).

Versioni supportate del sistema operativo Windows

Sono supportate le versioni seguenti:

  • Windows Server 2022
  • Windows Server 2019
  • Windows Server 2016
  • Windows 11
  • Windows 10

Il prodotto autonomo Microsoft Hyper-V Server non contiene un'implementazione di Desired State Configuration in modo da non poterlo gestire usando PowerShell DSC o Automazione di Azure State Configuration.

Installazione di DSC

PowerShell DSC è incluso in Windows e viene aggiornato tramite Windows Management Framework. La versione più recente è Windows Management Framework 5.1.

Nota

Non è necessario abilitare la funzionalità "DSC-Service" di Windows Server per gestire un computer tramite DSC. Questa funzionalità è necessaria solo quando si crea un'istanza del server di pull Windows.

Uso di DSC per Windows

Le sezioni seguenti illustrano come creare ed eseguire configurazioni DSC nei computer Windows.

Creazione di un documento MOF di configurazione

Per creare una configurazione, si usa la parola chiave Configuration di Windows PowerShell. I passaggi seguenti descrivono la creazione di un documento di configurazione con Windows PowerShell.

Installare un modulo contenente risorse DSC

Windows PowerShell DSC (Desired State Configuration) include moduli predefiniti contenenti le risorse DSC. È anche possibile caricare moduli da origini esterne, ad esempio PowerShell Gallery, usando i cmdlet di PowerShellGet.

Install-Module 'PSDscResources' -Verbose

Definire una configurazione e generare il documento di configurazione:

Configuration EnvironmentVariable_Path
{
    param ()

    Import-DscResource -ModuleName 'PSDscResources'

    Node localhost
    {
        Environment CreatePathEnvironmentVariable
        {
            Name = 'TestPathEnvironmentVariable'
            Value = 'TestValue'
            Ensure = 'Present'
            Path = $true
            Target = @('Process', 'Machine')
        }
    }
}

EnvironmentVariable_Path -OutputPath:"./EnvironmentVariable_Path"

Applicare la configurazione al computer

Nota

Per consentire l'esecuzione di DSC, è necessario configurare Windows per la ricezione di comandi remoti di PowerShell anche quando si esegue una configurazione localhost. Per configurare correttamente l'ambiente, solo Set-WsManQuickConfig -Force in un terminale powerShell con privilegi elevati.

È possibile applicare documenti di configurazione (file MOF) a un computer con il cmdlet Start-DscConfiguration .

Start-DscConfiguration -Path 'C:\EnvironmentVariable_Path' -Wait -Verbose

Ottenere lo stato corrente della configurazione

Il cmdlet Get-DSCConfiguration esegue una query per ottenere lo stato corrente del computer e restituisce i valori correnti per la configurazione.

Get-DscConfiguration

Il cmdlet Get-DscLocalConfigurationManager restituisce la metaconfigurazione corrente applicata al computer.

Get-DscLocalConfigurationManager

Rimuovere la configurazione corrente da un computer

Remove-DscConfigurationDocument

Remove-DscConfigurationDocument -Stage Current -Verbose

Configurare le impostazioni in Gestione configurazione locale

Applicare un file MOF di metaconfigurazione al computer usando il cmdlet Set-DSCLocalConfigurationManager. Richiede il percorso del file MOF di metaconfigurazione.

Set-DSCLocalConfigurationManager -Path 'c:\metaconfig\localhost.meta.mof' -Verbose

File di log di Windows PowerShell DSC (Desired State Configuration)

I log per DSC vengono scritti nel Microsoft-Windows-Dsc/Operational registro eventi di Windows. È possibile abilitare altri log per scopi di debug seguendo la procedura descritta in Where Are DSC Event Logs (Dove sono registri eventi DSC).