共用方式為


叢集感知更新 (CAU) 的進階選項和更新執行設定檔

本主題描述叢集感知更新 (CAU) 更新執行可以設定的更新執行選項。 當您使用 CAU UI 或 CAU Windows PowerShell Cmdlet 套用更新或設定自行更新選項時,即可設定這些進階選項。

大部分組態設定都可儲存成 XML 檔案,這稱為更新執行設定檔,可在之後的更新執行重複使用。 CAU 提供的「更新執行」選項預設值也可用於許多叢集環境。

如需您可為每個更新執行指定的其他選項與更新執行設定檔的相關資訊,請參閱本主題稍後的下列各節:

您在要求更新執行使用和更新執行設定檔選項 (可以在更新執行設定檔中設定) 時指定的選項

下表列出您可在 CAU 更新執行設定檔中設定的選項。

注意

若要設定 PreUpdateScript 或 PostUpdateScript 選項,請確保已安裝 Windows PowerShell 和 .NET Framework 4.6 or 4.5,且 PowerShell 遠端功能已在叢集中的每個節點上啟用。 如需詳細資訊,請參閱叢集感知更新的需求和最佳做法中的設定節點以進行遠端管理。

選項 預設值 詳細資料
StopAfter 不限時間 如果「更新執行」經過此時間 (分鐘) 尚未完成,則將予以停止。 注意:如果您指定更新前或更新後 PowerShell 指令碼,執行指令碼和執行更新的整個程序必須在 StopAfter 時間限制內完成。
WarnAfter 根據預設,不會顯示警告 如果「更新執行」(包括已設定的更新前指令碼及更新後指令碼) 經過此時間 (分鐘) 尚未完成,則將出現警告。
MaxRetriesPerNode 3 更新處理程序 (包括已設定的更新前指令碼及更新後指令碼) 在每個節點的重試次數上限。 上限為 64。
MaxFailedNodes 對大部分叢集而言,這個整數大概是叢集節點數的三分之一。 更新可以失敗的最大節點數,這可能是因為節點失敗或叢集服務停止執行。 如果再失敗一個節點,「更新執行」就會停止。

有效值的範圍是 0 到叢集節點數減 1。

RequireAllNodesOnline 指定所有節點都必須在線上且可搜尋,才能開始更新。
RebootTimeoutMinutes 15 CAU 允許重新啟動節點 (如有需要重新啟動) 與啟動所有自動啟動服務的時間 (分鐘)。 如果重新啟動程序未在此時間內完成,在該節點上的更新執行會標示為失敗。
PreUpdateScript 要在更新開始前和讓節點進入維護模式前,在每個節點上執行的 PowerShell 指令碼的路徑和檔名。 副檔名必須是 .ps1,且路徑加檔名的總長度不可超過 260 個字元。 最佳作法是讓指令碼位於叢集存放裝置的磁碟上,或在高可用性的網路檔案共用,以確保所有叢集節點永遠都能存取該指令碼。 如果指令碼位於網路檔案共用,請確定已設定檔案共用的 Everyone 群組讀取權限並禁止寫入存取,以防止未經授權的使用者竄改檔案。

如果您指定更新前指令碼,請確定如時間限制 (例如,StopAfter) 等設定已設定為允許指令碼成功執行。 這些限制會套用到執行指令碼和安裝更新的整個處理程序中,而非只針對安裝更新的處理程序。

PostUpdateScript 要在更新完成後執行 (節點離開維護模式後) 的 PowerShell 指令碼的路徑和檔名。 副檔名必須是 .ps1,且路徑加檔名的總長度不可超過 260 個字元。 最佳作法是讓指令碼位於叢集存放裝置的磁碟上,或在高可用性的網路檔案共用,以確保所有叢集節點永遠都能存取該指令碼。 如果指令碼位於網路檔案共用,請確定已設定檔案共用的 Everyone 群組讀取權限並禁止寫入存取,以防止未經授權的使用者竄改檔案。

如果您指定更新後指令碼,請確定如時間限制 (例如,StopAfter) 等設定已設定為允許指令碼成功執行。 這些限制會套用到執行指令碼和安裝更新的整個處理程序中,而非只針對安裝更新的處理程序。

ConfigurationName 此設定只會在您執行指令碼時生效。

如果您指定更新前指令碼或更新後指令碼,但並未指定 ConfigurationName,則會使用 PowerShell (Microsoft.PowerShell) 的預設工作階段。

指定 PowerShell 工作階段設定,而此設定定義指令碼 (由 PreUpdateScriptPostUpdateScript 指定) 在其中執行的工作階段,且可以限制可以執行的命令。
CauPluginName Microsoft.WindowsUpdatePlugin 設定讓叢集感知更新用來預覽更新或執行「更新執行」的外掛程式。 如需詳細資訊,請參閱 叢集感知更新外掛程式如何運作
CauPluginArguments 用於更新要使用的外掛程式的一組 name=value 組 (引數),例如:

Domain=Domain.local

這些 name=value 組對您在 CauPluginName 中指定的外掛程式而言必須有意義。

若要使用 CAU UI 指定引數,請輸入 name、按下 Tab 鍵,然後輸入對應的 value。 再次按下 Tab 鍵即可提供下一個引數。 每個 namevalue 會自動以等號 (=) 分隔。 多個組會自動以分號分隔。

如果是預設的 Microsoft.WindowsUpdatePlugin 外掛程式,則無須引數。 不過,您可以指定選用引數,例如指定標準 Windows Update Agent 查詢字串以篩選外掛程式套用的更新組。 如果是 name,請使用 QueryString,而如果是 value,請用引號括住整個查詢。

如需詳細資訊,請參閱 叢集感知更新外掛程式如何運作

您在要求更新執行時指定的選項

下表列出要求「更新執行」時可以指定的選項 (「更新執行設定檔」選項以外的選項)。 如需可在「更新執行設定檔」中設定之選項的相關資訊,請參閱上一個表格。

選項 預設值 詳細資料
ClusterName
注意:僅可在 CAU UI 未在容錯移轉叢集節點上執行,或您想要從 CAU UI 執行的位置參照容錯移轉叢集時設定此選項。
要執行「更新執行」的叢集 NetBIOS 名稱。
認證 目前的帳戶認證 將要執行「更新執行」的目標叢集的管理認證。 如果您從擁有系統管理員權限和叢集權限的帳戶啟動 CAU UI (或開啟 PowerShell session,如果您正使用 CAU PowerShell Cmdlet),您可能已擁有必要的認證。
NodeOrder 根據預設,CAU 會從擁有最少叢集角色的節點開始,接著處理擁有第二少叢集角色的節點,依此類推。 依更新順序 (可能的話) 顯示的叢集節點名稱。

使用更新執行設定檔

每個「更新執行」都可與特定更新執行設定檔建立關聯。 預設更新執行設定檔儲存於 %windir%\cluster 資料夾。 如果您在遠端更新模式中使用 CAU UI,則可以在套用更新時指定更新執行設定檔,或使用預設更新執行設定檔。 如果您在自行更新模式下使用 CAU,則可以在設定自行更新選項時從指定的更新執行設定檔匯入設定。 在這兩種情況下,您可視需要覆寫「更新執行」選項顯示的值。 如有需要,您可以將「更新執行」選項儲存為更新執行設定檔,檔案名稱不一定要相同。 下一次套用更新或設定自行更新選項時,CAU 會自動選取之前選取的更新執行設定檔。

您可以修改現有的更新執行設定檔,或在 CAU UI 中選取 [建立或修改更新執行設定檔],建立新的設定檔。

以下為使用更新執行設定檔的一些重要注意事項:

  • 更新執行設定檔不會儲存叢集特定資訊,例如系統管理認證。 如果您在自行更新模式下使用 CAU,更新執行設定檔也不會儲存自行更新排程資訊。 這可以讓您在指定類別中的所有容錯移轉叢集間共用更新執行設定檔。
  • 如果您使用更新執行設定檔來設定自行更新選項,並在稍後使用更新執行選項的不同值修改設定檔,則自行更新設定不會自動變更。 若要套用新的更新執行設定,您必須再次設定自行更新選項。
  • 不巧的是,執行設定檔編輯器不支援包括空格的檔案路徑,例如 C:\Program Files。 因應措施為將更新前和更新後指令碼儲存於不含空格的路徑中,或專門使用 PowerShell 管理執行設定檔,在執行 Invoke-CauRun 時以引號括住路徑。

Windows PowerShell 對應的命令

執行 Invoke-CauRunAdd-CauClusterRoleSet-CauClusterRole Cmdlet 時,您可以從更新執行設定檔匯入設定。

下列範例會在名為 CONTOSO-FC1 的叢集上,使用在 C:\Windows\Cluster\DefaultParameters.xml 中指定的更新執行選項來執行掃描和完整更新執行。 剩餘的 Cmdlet 參數使用預設值。

$MyRunProfile = Import-Clixml C:\Windows\Cluster\DefaultParameters.xml
Invoke-CauRun –ClusterName CONTOSO-FC1 @MyRunProfile

使用更新執行設定檔,您可以重複更新容錯移轉叢集,並使用一致的例外狀況管理、時間界限與其他操作參數設定。 由於這些設定通常專用於某種容錯移轉叢集類別 (例如「所有 Microsoft SQL Server 叢集」或「我的業務關鍵叢集」),您可以根據要使用的容錯移轉叢集類別來命名每個更新執行設定檔。 此外,您還可以在檔案共用管理更新執行設定檔,讓 IT 組織中特定類別的所有容錯移轉叢集都可存取。

其他參考