Microsoft Desired State Configuration v3 概觀

Microsoft Desired State Configuration (DSC) 是宣告式設定平臺。 使用 DSC 時,計算機的狀態會使用應該清楚瞭解的格式來描述,即使讀者不是主題專家也一樣。 不同於命令式工具,使用 DSC,應用程式環境的定義與實作傳遞方式的腳本邏輯不同。

DSCv3 命令行應用程式會以宣告方式和等冪方式抽象化軟體元件的管理。 DSCv3 會在 Linux、macOS 和 Windows 上執行,而不需要任何外部相依性。

使用 DSCv3,您可以:

  • 撰寫 DSC 資源,以任何語言管理您的系統。
  • 叫用個別資源。
  • 建立可定義系統所需狀態的組態檔。

設定檔

DSC 設定檔是可定義資源實例的宣告式 YAML 檔案。 一般而言,組態檔會定義要強制執行的狀態。

範例案例包括應用程式環境或作業/安全性標準的需求。

DSC 資源

DSC 資源會定義如何管理特定系統或應用程式元件的狀態。 資源描述元件可管理設定的架構。 每個資源都可以與 取得測試 作業搭配使用,以擷取資源實例的目前狀態,並驗證其是否處於所需狀態。 大部分的資源也支援使用 Set 作業強制執行所需的狀態。

範例案例包括如何更新檔案的內容、如何執行變更計算機狀態的公用程式,或如何設定應用程式的設定。

與 PowerShell DSC 的差異

DSCv3 利用 PSDesiredStateConfiguration 模組 來支援與現有 PowerShell 型資源的相容性。

DSCv3 與 PowerShell Desired State Configuration (PSDSC) 有一些重要方式不同:

  • DSCv3 不相依於 PowerShell。 您可以在未安裝 PowerShell 的情況下使用 DSCv3,並管理以 bash、python、C#、Go 或任何其他語言撰寫的資源。
  • DSCv3 不包含本機設定管理員。 DSCv3 會叫用為命令。 它不會以服務的形式執行。
  • 非 PowerShell 資源會使用 JSON 檔案來定義其架構,而不是使用 MOF 檔案。
  • 組態檔是在 JSON 或 YAML 檔案中定義,而不是 PowerShell 腳本檔案。

重要的是,雖然 DSCv3 代表 DSC 平臺的重大變更,但 DSCv3 能夠叫用 PSDSC 資源,包括腳本型和類別型 DSC 資源,因為它們目前存在。 設定檔不相容,但所有已發佈的 PSDSC 資源都是。 您可以使用 DSCv3 中的 PSDSC 資源搭配 Windows PowerShell 和 PowerShell。

安裝

若要安裝 DSCv3:

  1. 從 PowerShell/DSC 存放庫下載最新版本
  2. 展開發行封存。
  3. 將包含已展開封存內容的資料夾新增至 PATH

若要從 PowerShell 資源庫 安裝PSDesiredStateConfiguration第 3 版 Beta 版:

# Using PSResourceGet
Install-PSResource -Name PSDesiredStateConfiguration -Version 3.0.0-beta1 -Prerelease
# Using PowerShellGet
Install-Module -Name PSDesiredStateConfiguration -RequiredVersion 3.0.0-beta1 -AllowPrerelease

與 DSCv3 整合

DSCv3 是一種平臺工具,可將定義和叫用資源的問題抽象化。 較高順序的工具,例如 Azure Machine 設定、Azure Automanaged VM 和 WinGet 是 DSCv3 的早期合作夥伴,作為協調流程代理程式。

DSCv3 會使用 JSON 架構來定義 DSCv3 傳回的資源、組態檔和輸出結構。 這些架構可讓您更輕鬆地整合 DSCv3 與其他工具,因為它們會將 DSCv3 標準化並記載如何與 DSCv3 互動。

另請參閱