适用于 Windows 的 Desired State Configuration (DSC) 入门
本文介绍如何开始使用适用于 Windows 的 PowerShell Desired State Configuration (DSC) 。 有关 DSC 的常规信息,请参阅 Windows PowerShell Desired State Configuration 入门。
支持的 Windows 操作系统版本
支持以下版本:
- Windows Server 2022
- Windows Server 2019
- Windows Server 2016
- Windows 11
- Windows 10
Microsoft Hyper-V Server 独立产品不包含 Desired State Configuration 的实现,因此无法使用 PowerShell DSC 或Azure 自动化 State Configuration对其进行管理。
安装 DSC
PowerShell Desired State Configuration 包含在 Windows 中,并通过 Windows Management Framework 进行更新。 最新版本为 Windows Management Framework 5.1。
注意
无需启用 Windows Server 功能“DSC-Service”,就可以使用 DSC 管理计算机。 只有在生成 Windows 拉取服务器实例时,才需要此功能。
使用适用于 Windows 的 DSC
下面几个部分介绍了如何在 Windows 计算机上创建和运行 DSC 配置。
创建配置 MOF 文档
Windows PowerShell Configuration
关键字用于创建配置。 下面逐步介绍了如何使用 Windows PowerShell 创建配置文档。
安装包含 DSC 资源的模块
Windows PowerShell Desired State Configuration 有包含 DSC 资源的内置模块。 也可以使用 PowerShellGet cmdlet 从 PowerShell 库等外部源加载模块。
Install-Module 'PSDscResources' -Verbose
定义配置并生成配置文档:
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"
将配置应用于计算机
注意
即使在运行 localhost
配置的情况下,也需要将 Windows 配置为接收 PowerShell 远程命令,以允许 DSC 运行。 若要正确配置环境,请直接 Set-WsManQuickConfig -Force
在提升的 PowerShell 终端中。
可以使用 Start-DscConfiguration cmdlet 将配置文档 (MOF 文件) 应用到计算机。
Start-DscConfiguration -Path 'C:\EnvironmentVariable_Path' -Wait -Verbose
获取配置的当前状态
Get-DscConfiguration cmdlet 可查询计算机的当前状态,并返回配置的当前值。
Get-DscConfiguration
Get-DscLocalConfigurationManager cmdlet 可返回应用于计算机的当前元配置。
Get-DscLocalConfigurationManager
从计算机中删除当前配置
Remove-DscConfigurationDocument
Remove-DscConfigurationDocument -Stage Current -Verbose
在本地配置管理器中配置设置
使用 Set-DSCLocalConfigurationManager cmdlet 将元配置 MOF 文件应用于计算机。 需要元配置 MOF 的路径。
Set-DSCLocalConfigurationManager -Path 'c:\metaconfig\localhost.meta.mof' -Verbose
Windows PowerShell Desired State Configuration 日志文件
DSC 的日志将写入 Microsoft-Windows-Dsc/Operational
Windows 事件日志。 可以按照 DSC 事件日志的位置中的步骤启用其他日志以进行调试。