术语表:Desired State Configuration

Desired State Configuration (DSC) v3 使用多个术语,这些术语在其他位置可能具有不同的定义。 本文档列出了术语及其含义,并演示了这些术语在文档中的格式设置方式。

配置术语

DSC 配置文档

定义资源实例列表及其所需状态的 JSON 或 YAML 文件。

指南

  • 第一个提及:DSC 配置文档
  • 后续提及: 配置文档或文档

示例

DSC 配置文档的格式可以设置为 JSON 或 YAML。

scope 文档中的变量定义为 machine

资源术语

DSC 资源

用于管理组件设置的 DSC 接口。 DSC v3 支持多种资源。

指南

  • 第一个提及:DSC 资源
  • 后续提及: 资源
  • 将特定资源的名称格式化为代码。

示例

它们都使用 Microsoft/OSInfo DSC 资源。

可以使用 命令检查资源的定义 dsc resource list <resource_name>

基于命令的 DSC 资源

使用资源清单定义的资源是基于 命令 的资源。 DSC 使用清单来确定如何调用资源以及如何验证资源实例属性。

指南

  • 始终使用连字符指定术语。

示例

Microsoft.Windows/Registry 是基于命令的资源。

DSC 资源组

资源组是基于命令的资源,其resources属性采用资源实例数组并对其进行处理。 资源组可能会对其嵌套资源实例应用特殊处理,例如更改资源运行方式的用户。

指南

  • 始终将术语指定为资源组。 请勿在术语中省略“group”。

示例

若要确保并行调用资源,请使用 DSC/ParallelGroup 资源组。

嵌套资源实例

资源组或资源提供程序的 属性中包含的 resources 资源实例。

指南

  • 第一个提及:嵌套资源实例
  • 后续提及: 嵌套实例
  • 如果上下文中明确表示实例是嵌套实例,则可以省略“嵌套”前缀。

示例

将嵌套资源实例添加到实例 DSC/ParallelGrouptype将嵌套实例的 定义为 Microsoft.Windows/Registry

DSC 资源提供程序

资源提供程序是一个资源组,它允许将非基于命令的资源与 DSC v3 配合使用。 每个嵌套资源实例必须是提供程序支持的资源类型。

指南

  • 第一个提及:DSC 资源提供程序
  • 后续提及: 提供程序

示例

若要在配置文档中使用 PowerShell DSC 资源,请添加资源提供程序的 DSC/PowerShellGroup 实例,并将 PowerShell 资源实例定义为嵌套实例。

PowerShell DSC 资源

在 PowerShell 中实现的资源。 DSC v3 支持两种类型的 PowerShell 资源。

  • Class-Based - 在模块中定义为 PowerShell 类的资源是基于 的资源。

    类的成员定义基于类的资源的架构。 基于类的资源必须定义 Get()Set()Test() 方法。

  • 基于 MOF - 使用 MOF 文件 (.mof) 定义的资源、 () .psm1 的脚本模块文件以及可选的模块清单文件 (.psd1) 是 基于 MOF 的资源。 仅通过Windows PowerShell支持基于 MOF 的资源。

    MOF 文件是资源的架构,用于定义资源的属性。 脚本模块文件定义资源的函数: Get-TargetResourceSet-TargetResourceTest-TargetResource。 这些函数映射到 GetSetTest 方法。

指南

  • 第一个提及:PowerShell DSC 资源
  • 后续提及: PowerShell 资源或 PSDSC 资源。
  • 讨论特定类型的 PowerShell 资源时,请始终指定类型前缀,如 基于类的资源
  • 当上下文明确或仅有关 PowerShell 资源时,可能会省略 PowerShell 和 PSDSC 前缀,例如创作基于类的资源的教程。

示例

若要在配置文档中使用 PowerShell DSC 资源,请添加资源提供程序的 DSC/PowerShellGroup 实例,并将 PowerShell 资源实例定义为嵌套实例。

为跨平台软件开发 PowerShell 资源时,请创建基于类的资源。 仅通过Windows PowerShell支持基于 MOF 的资源。

DSC 资源清单

定义基于命令的资源的元数据和实现的 JSON 文件。

指南

  • 第一个提及:DSC 资源清单
  • 后续提及: 清单

示例

每个基于命令的资源都必须定义 DSC 资源清单。 清单的文件名必须以 .dsc.resource.json结尾。

DSC 资源类型名称

资源的标识名称。 完全限定的资源类型名称使用以下语法:

`<owner>[.<group>][.<area>]/<name>`

指南

  • 第一个提及:DSC 资源类型名称
  • 后续提及: 资源类型或类型名称。
  • 讨论资源类型名称的语法时,始终将术语指定为 完全限定的资源类型名称

示例

DSC 资源通过其资源类型名称唯一标识。

Operations

资源可对其管理的组件执行的操作。

  • Get - 检索资源实例的当前状态。
  • Set - 强制实施资源实例的所需状态。
  • 测试 - 将资源实例的所需状态与其当前状态进行比较。

指南

  1. 将操作资本化。
  2. 当专门引用操作时,请将其格式设置为 粗体
  3. 引用在 PowerShell 类中实现的操作的方法时,将方法格式化为 code , (名称后) () 一组空括号。

示例

基于类的资源中 方法的 Set() 实现不能使用任何 return 语句。

DSC 是围绕获取测试和设置过程构建的。

属性

资源可以为组件管理的设置。 资源始终至少有一个属性。

指导

  1. 将属性名称的格式设置为粗体。
  2. 将属性值的格式设置为代码。

示例

此示例JSONFormat 属性的值为 。

一般术语

Desired State Configuration

Microsoft Desired State Configuration (DSC) 是一个声明性配置平台,其中使用一种应该清楚理解的格式来描述计算机的状态,即使读者不是主题专家也是如此。

指南

  • 第一提及:Microsoft Desired State Configuration (DSC) 平台
  • 后续提及: DSC、DSCv3 或 DSC 平台
  • 在专门在术语可能与 PowerShell DSC 或 命令混淆的上下文中引用平台时指定平台后 dsc 缀。
  • 在术语历史上也应用于 PowerShell DSC 的上下文中讨论 DSC 时,请指定版本后缀。

示例

在 Microsoft Desired State Configuration (DSC) 平台中,DSC 资源表示用于管理系统设置的标准化接口。

可以使用 DSC 通过 dsc resource list 命令列出可用资源。

对于不实现 测试 操作的资源,DSCv3 可以使用综合测试验证实例的状态。

dsc

用于调用资源和管理配置文档的 DSC 命令行工具。

指南

  • 在一般讨论命令行工具时,将术语指定为 DSC。
  • 在术语历史上也应用于 PowerShell DSC 的上下文中讨论命令行工具时,将术语指定为 DSCv3。
  • 讨论运行命令、特定子命令或区分命令行工具与概念平台时,请使用代码格式设置。

示例

dsc resource test使用 命令调用 操作。 DSC 返回的数据包括:

  • 实例的所需状态。
  • 实例的实际状态。
  • 实例是否处于所需状态。
  • 未处于所需状态的属性列表。

PowerShell 所需状态配置

PowerShell 的Desired State Configuration功能。 在 DSCv3 之前,此术语包括 PowerShell DSC 平台、本地Configuration Manager和 PSDesiredStateConfiguration PowerShell 模块。

对于 DSCv3,此术语适用于使用 PSDesiredStateConfiguration 模块在 PowerShell 中实现的 DSC 资源。

指南

  • 第一个提及:PowerShell Desired State Configuration
  • 后续提及: PowerShell DSC 或 PSDSC
  • 始终将 PowerShell DSC 与 DSCv3 区分开来。
  • 始终按名称指定 PSDesiredStateConfiguration 模块,并在讨论 PowerShell 模块本身时强调。

示例

可以将 PowerShell DSC 资源与 DSCv3 配合使用。

开始创作基于类的 PowerShell DSC 资源来管理配置文件。 完成本教程后,你将在可用于进一步学习和自定义的模块中提供基于功能类的 PSDSC 资源。