封裝資源並上傳到提取伺服器

下列各節假設您已經設定提取伺服器。 如果尚未設定提取伺服器,您可以使用下列指南:

每個目標節點都設定為下載設定、資源,甚至是報告其狀態。 本文將示範如何上傳資源,讓它們可供下載,並設定用戶端以自動下載資源。 當節點收到指派的設定時,透過提取推送 (v5),它就會自動從 LCM 中指定的位置下載設定所需的任何資源。

封裝資源模組

可供用戶端下載的每項資源都必須儲存為 .zip 檔案。 下列範例將示範使用 xPSDesiredStateConfiguration \(英文\) 資源所需的步驟。

注意

如果有任何使用 PowerShell 4.0 的用戶端,您將必須壓平合併資源資料夾結構,並移除所有的版本資料夾。 如需詳細資訊,請參閱多個資源版本

您可以使用任何慣用的公用程式、指令碼或方法來壓縮資源目錄。 在 Windows 中,您可「用滑鼠右鍵按一下」xPSDesiredStateConfiguration目錄,然後依序選取 [傳送到] 和 [壓縮的資料夾]。

以滑鼠右鍵按一下 - [傳送到] - [壓縮的資料夾]

為資源封存命名

資源封存必須使用下列格式來命名:

{ModuleName}_{Version}.zip

在上例中,xPSDesiredStateConfiguration.zip 應該重新命名為 xPSDesiredStateConfiguration_8.4.4.0.zip

建立總和檢查碼

一旦將資源模組壓縮並重新命名之後,您必須建立總和檢查碼。 用戶端上的 LCM 會使用總和檢查碼來判斷資源是否已變更且需要再次下載。 您可以使用 New-DSCCheckSum Cmdlet 來建立總和檢查碼,如以下範例所示。

New-DscChecksum -Path .\xPSDesiredStateConfiguration_8.4.4.0.zip

系統將不會顯示任何輸出,但您現在應該會看到 "xPSDesiredStateConfiguration_8.4.4.0.zip.checksum"。 您也可以使用 -Path 參數,針對檔案的目錄執行 New-DSCCheckSum。 如果總和檢查碼已經存在,您可以使用 -Force 參數強制重新建立它。

儲存資源封存的位置

在 DSC HTTP 提取伺服器上

當您設定 HTTP 提取伺服器時,如設定 DSC HTTP 提取伺服器中所述,您會針對 ModulePathConfigurationPath 索引碼指定目錄。 ConfigurationPath 索引碼指出應儲存所有 ".mof" 檔案的位置。 ModulePath 指出應儲存所有 DSC 資源模組的位置。

    xDscWebService PSDSCPullServer
    {
    ...
        ModulePath              = "$env:PROGRAMFILES\WindowsPowerShell\DscService\Modules"
        ConfigurationPath       = "$env:PROGRAMFILES\WindowsPowerShell\DscService\Configuration"
    ...
    }

在 SMB 共用上

如果您指定了 ResourceRepositoryShare,當您設定提取用戶端時,需將封存與總和檢查碼儲存於 ResourceRepositoryShare 區塊的 SourcePath 目錄中。

ConfigurationRepositoryShare SMBPullServer
{
    SourcePath = '\\SMBPullServer\Configurations'
}

ResourceRepositoryShare SMBResourceServer
{
    SourcePath = '\\SMBPullServer\Resources'
}

如果您只指定 ConfigurationRepositoryShare,當您設定提取用戶端時,則需將封存與總和檢查碼儲存於 ConfigurationRepositoryShare 區塊的 SourcePath 目錄中。

ConfigurationRepositoryShare SMBPullServer
{
    SourcePath = '\\SMBPullServer\Pull'
}

更新資源

您可以藉由變更封存名稱中的版本號碼,或建立新的總和檢查碼,來強制節點更新其資源。 提取用戶端將檢查較新版本的必要資源,而且會在其 LCM 重新整理時更新總和檢查碼。

另請參閱