適用於:Windows PowerShell 5.0
本機配置管理器(LCM)是所需狀態配置(DSC)的引擎。 LCM 會在每個目標節點上執行,並負責剖解析及制定傳送至節點的組態。 它還負責 DSC 的許多其他方面,包括以下內容。
- 決定重新整理模式 (推或拉)。
- 指定節點提取和制定組態的頻率。
- 將節點與提取服務相關聯。
- 指定部分配置。
您可以使用特殊類型的組態來設定 LCM 以指定這些行為中的每一個。 下列各節說明如何設定 LCM。
Windows PowerShell 5.0 引進了管理本機 Configuration Manager 的新設定。 如需在 Windows PowerShell 4.0 中設定 LCM 的相關資訊,請參閱 在舊版 Windows PowerShell 中設定本機 Configuration Manager。
撰寫及制定 LCM 配置
若要設定 LCM,您可以建立並執行套用 LCM 設定的特殊型別組態。 若要指定 LCM 設定,請使用 DscLocalConfigurationManager 屬性。 以下顯示將 LCM 設定為推送模式的簡單組態。
[DSCLocalConfigurationManager()]
configuration LCMConfig
{
Node localhost
{
Settings
{
RefreshMode = 'Push'
}
}
}
將設定套用至 LCM 的程式類似於套用 DSC 組態。 您將建立 LCM 組態,將它編譯成 MOF 檔案,然後將它套用至節點。 不同於 DSC 設定,您不會呼叫 Start-DscConfiguration Cmdlet 來制定 LCM 設定。 相反地,您會呼叫 Set-DscLocalConfigurationManager,提供 LCM 組態 MOF 的路徑作為參數。 制定 LCM 設定之後,您可以呼叫 Get-DscLocalConfigurationManager Cmdlet 來查看 LCM 的屬性。
LCM 組態只能包含一組有限資源的區塊。 在上一個範例中,唯一呼叫的資源是 Settings。 其他可用資源包括:
- ConfigurationRepositoryWeb:指定組態的 HTTP 提取服務。
- ConfigurationRepositoryShare:指定組態的 SMB 共用。
- ResourceRepositoryWeb:指定模組的 HTTP 提取服務。
- ResourceRepositoryShare:指定模組的 SMB 共用。
- ReportServerWeb:指定要傳送報表的 HTTP 提取服務。
- PartialConfiguration:提供資料以啟用部分配置。
基本設定
除了指定提取服務端點/路徑和部分組態之外,LCM 的所有屬性都會在 [設定 ] 區塊中設定。 下列屬性可在 「設定」 區塊中使用。
| 房產 | 類型 | Description |
|---|---|---|
| 動作後重新啟動 | 字串 | 指定在設定應用程式期間重新啟動後會發生什麼情況。 可能的值為 “ContinueConfiguration” 和 “StopConfiguration”。
|
| 允許模組覆寫 | 布爾 (bool) | $TRUE 是否允許從提取服務下載的新組態改寫目標節點上的舊組態。 否則,$FALSE。 |
| 憑證識別碼 | 字串 | 用來保護組態中傳遞的認證的憑證指紋。 如需詳細資訊,請參閱想要保護 Windows PowerShell 所需狀態設定中的認證嗎? 附註: 如果使用 Azure 自動化 DSC 提取服務,則會自動管理此專案。 |
| ConfigurationDownloadManager | Cim實例[] | 過時。 使用 ConfigurationRepositoryWeb 和 ConfigurationRepositoryShare 區塊來定義組態提取服務端點。 |
| 組態標識碼 | 字串 | 與舊版提取服務版本向後相容。 識別要從提取服務取得的組態檔的 GUID。 如果組態 MOF 的名稱名為 ConfigurationID.mof,節點會在提取服務上提取組態。 便條: 如果您設定此屬性,則無法使用 RegistrationKey 向提取服務註冊節點。 如需詳細資訊,請參閱 設定具有組態名稱的提取用戶端。 |
| 組態模式 | 字串 | 指定 LCM 如何實際將組態套用至目標節點。 可能的值為 “ApplyOnly”、“ApplyAndMonitor” 和 “ApplyAndAutoCorrect”。
|
| ConfigurationMode頻率分鐘 | UInt32 | 在幾分鐘內,檢查並套用目前的設定的頻率。 如果 ConfigurationMode 屬性設定為 ApplyOnly,則會忽略這個屬性。 預設值為 15。 |
| 偵錯模式 | 字串 | 可能的值為 None、 ForceModuleImport 和 All。
|
| RebootNodeIf需要 | 布爾 (bool) | 將此設定為 $true 允許資源使用旗標重新啟動 $global:DSCMachineStatus 節點。 否則,您必須針對需要節點的任何設定手動重新啟動節點。 預設值是 $false。 若要在 DSC 以外的專案 (例如 Windows Installer) 制定重新開機條件時使用此設定,請將此設定與 ComputerManagementDsc 模組中的 PendingReboot 資源結合。 |
| 重新整理模式 | 字串 | 指定 LCM 取得組態的方式。 可能的值為「已停用」、「推送」和「拉取」。
|
| 重新整理頻率分鐘 | 尤因特32 | LCM 檢查提取服務以取得更新組態,並檢查本機組態是否有漂移的時間間隔 (以分鐘為單位)。 無論是否下載更新,都會套用組態。 如果未在提取模式中設定 LCM,則會忽略此值。 預設值為 30。 |
| 報告管理員 | Cim實例[] | 過時。 使用 ReportServerWeb 區塊來定義端點,以將報告資料傳送至提取服務。 |
| ResourceModuleManagers | Cim實例[] | 過時。 使用 ResourceRepositoryWeb 和 ResourceRepositoryShare 區塊,分別定義提取服務 HTTP 端點或 SMB 路徑。 |
| 部分組態 | Cim實例 | 未實施。 請勿使用。 |
| 狀態保留時間在天數 | UInt32 | LCM 保留目前組態狀態的天數。 |
備註
LCM 會根據下列條件啟動 ConfigurationModeFrequencyMins 週期:
- 使用
Set-DscLocalConfigurationManager - 機器重新啟動
對於計時器進程發生當機的任何情況,將在 30 秒內檢測到,並且循環將重新啟動。 並行操作可能會延遲週期的啟動,如果此操作的持續時間超過配置的循環頻率,下一個計時器將不會啟動。 例如,metaconfig 設定為 15 分鐘的提取頻率,並在 T1 發生提取。 節點在 16 分鐘內未完成工作。 第一個 15 分鐘週期被忽略,下一次拉動將發生在 T1+15+15。
提取案例中的原始意圖是將 設定 RefreshFrequencyMins 為比 更 ConfigurationModeFrequencyMins長的時間。 本機配置將主要由 避免 ConfigurationModeFrequencyMins 配置偏差進行管理,並 RefreshFrequencyMins 用於跟踪管理員所做的實際配置更改。
拉動服務
LCM 組態支援定義下列類型的提取服務端點:
- 組態伺服器:DSC 組態的存放庫。 使用 ConfigurationRepositoryWeb (適用於 Web 型伺服器) 和 ConfigurationRepositoryShare (適用於 SMB 型伺服器) 區塊來定義組態伺服器。
- 資源伺服器:DSC 資源的存放庫,封裝為 PowerShell 模組。 使用 ResourceRepositoryWeb (適用於 Web 型伺服器) 和 ResourceRepositoryShare (適用於 SMB 型伺服器) 區塊來定義資源伺服器。
- 報表伺服器:DSC 將報表資料傳送至的服務。 使用 ReportServerWeb 區塊來定義報表伺服器。 報表伺服器必須是 Web 服務。
如需提取服務的詳細資訊,請參閱 所需的狀態設定提取服務。
組態伺服器區塊
若要定義 Web 型組態伺服器,請建立 ConfigurationRepositoryWeb 區塊。 ConfigurationRepositoryWeb 會定義下列屬性。
| 房產 | 類型 | Description |
|---|---|---|
| 允許不安全連線 | 布爾 (bool) | 設為 $TRUE 以容許從節點連線至伺服器,而不需要鑑別。 設定為 $FALSE 以要求驗證。 |
| 憑證識別碼 | 字串 | 用來向伺服器驗證的憑證指紋。 |
| 組態名稱 | 字串陣列 (String[]) | 目標節點要提取的組態名稱陣列。 只有在節點使用 RegistrationKey 向提取服務註冊時,才會使用這些。 如需詳細資訊,請參閱 設定具有組態名稱的提取用戶端。 |
| 註冊金鑰 | 字串 | 向提取服務註冊節點的 GUID。 如需詳細資訊,請參閱 設定具有組態名稱的提取用戶端。 |
| 伺服器網址 | 字串 | 組態服務的 URL。 |
| 代理網址* | 字串 | 與組態服務通訊時要使用的 http Proxy URL。 |
| 代理認證* | pscredential | 要用於 http Proxy 的認證。 |
備註
支援 Windows 1809 版和更新版本。
提供範例指令碼,以簡化內部部署節點的 ConfigurationRepositoryWeb 值 - 請參閱 產生 DSC 中繼配置
若要定義 SMB 型組態伺服器,請建立 ConfigurationRepositoryShare 區塊。 ConfigurationRepositoryShare 會定義下列屬性。
| 房產 | 類型 | Description |
|---|---|---|
| Credential | MSFT_Credential | 用來向 SMB 共用進行驗證的認證。 |
| 來源路徑 | 字串 | SMB 共用的路徑。 |
資源伺服器區塊
若要定義 Web 型資源伺服器,請建立 ResourceRepositoryWeb 區塊。 ResourceRepositoryWeb 會定義下列屬性。
| 房產 | 類型 | Description |
|---|---|---|
| 允許不安全連線 | 布爾 (bool) | 設為 $TRUE 以容許從節點連線至伺服器,而不需要鑑別。 設定為 $FALSE 以要求驗證。 |
| 憑證識別碼 | 字串 | 用來向伺服器驗證的憑證指紋。 |
| 註冊金鑰 | 字串 | 識別提取服務節點的 GUID。 |
| 伺服器網址 | 字串 | 組態伺服器的 URL。 |
| 代理網址* | 字串 | 與組態服務通訊時要使用的 http Proxy URL。 |
| 代理認證* | pscredential | 要用於 http Proxy 的認證。 |
備註
支援 Windows 1809 版和更新版本。
提供範例指令碼,以簡化內部部署節點的 ResourceRepositoryWeb 值設定 - 請參閱 產生 DSC 中繼配置
若要定義 SMB 型資源伺服器,請建立 ResourceRepositoryShare 區塊。 ResourceRepositoryShare 會定義下列屬性。
| 房產 | 類型 | Description |
|---|---|---|
| Credential | MSFT_Credential | 用來向 SMB 共用進行驗證的認證。 如需傳遞認證的範例,請參閱 設定 DSC SMB 提取伺服器 |
| 來源路徑 | 字串 | SMB 共用的路徑。 |
報表伺服器區塊
若要定義報表伺服器,請建立 ReportServerWeb 區塊。 報表伺服器角色與 SMB 型提取服務不相容。 ReportServerWeb 會定義下列屬性。
| 房產 | 類型 | Description |
|---|---|---|
| 允許不安全連線 | 布爾 (bool) | 設為 $TRUE 以容許從節點連線至伺服器,而不需要鑑別。 設定為 $FALSE 以要求驗證。 |
| 憑證識別碼 | 字串 | 用來向伺服器驗證的憑證指紋。 |
| 註冊金鑰 | 字串 | 識別提取服務節點的 GUID。 |
| 伺服器網址 | 字串 | 組態伺服器的 URL。 |
| 代理網址* | 字串 | 與組態服務通訊時要使用的 http Proxy URL。 |
| 代理認證* | pscredential | 要用於 http Proxy 的認證。 |
備註
支援 Windows 1809 版和更新版本。
提供範例 Script 來簡化內部部署節點的 ReportServerWeb 值 - 請參閱 產生 DSC 中繼配置
部分配置
若要定義部分組態,請建立 PartialConfiguration 區塊。 如需部分組態的詳細資訊,請參閱 DSC 部分組態。 PartialConfiguration 會定義下列屬性。
| 房產 | 類型 | Description |
|---|---|---|
| 組態來源 | 字串[] | 先前在 ConfigurationRepositoryWeb 和 ConfigurationRepositoryShare 區塊中定義的組態伺服器名稱陣列,從中提取部分組態。 |
| 相依 | 繩子{} | 在套用此部分配置之前必須完成的其他配置名稱清單。 |
| Description | 字串 | 用來描述部分組態的文字。 |
| 獨家資源 | 字串[] | 此部分組態獨佔的資源陣列。 |
| 重新整理模式 | 字串 | 指定 LCM 如何取得此部分組態。 可能的值為「已停用」、「推送」和「拉取」。
|
| 資源模組來源 | 字串[] | 資源伺服器名稱陣列,可從中下載此部分配置所需的資源。 這些名稱必須參考先前在 ResourceRepositoryWeb 和 ResourceRepositoryShare 區塊中定義的服務端點。 |
備註
Azure 自動化 DSC 支援部分設定,但每個節點只能從每個自動化帳戶提取一個設定。