共用方式為


AppFabric 快取叢集 (AppFabric 1.1) 的升級程序

本主題說明如何將現有快取叢集的 Microsoft AppFabric 1.1 for Windows Server 快取 服務離線與線上升級為較新的版本。線上升級包含在快取叢集保持執行時,個別升級每個快取主機。

重要

在升級期間,您無法從內建帳戶 (如 NETWORK SERVICE) 變更為網域帳戶。如需詳細資訊,請參閱變更快取服務帳戶 (AppFabric 1.1 快取)

每一個 Microsoft AppFabric 1.1 for Windows Server 版本都與特定的 AppFabric 快取 服務版本號碼相關聯。

AppFabric 版次 AppFabric 快取 服務版本

Windows Server AppFabric v1.0

1

Microsoft AppFabric 1.1 for Windows Server

3

離線升級處理程序

離線升級包括已關閉的快取叢集。當關閉時,每個快取主機都會分別升級為新版的 AppFabric。在此時,包括的步驟為線上升級子集的步驟及以下步驟。

  1. 步驟 1:更新管理機器上的快取服務功能

  2. 步驟 5:更新允許的伺服器版本範圍,改為只使用新的版本號碼

  3. 步驟 6:更新允許的用戶端版本範圍,以包含新的版本號碼

  4. 步驟 7:更新快取組態儲存區

  5. 步驟 8:更新快取用戶端應用程式

線上升級處理程序

線上升級包含下列步驟:

  • 步驟 1:更新管理機器上的快取服務功能

  • 步驟 2:更新允許的伺服器版本範圍,以包含新的版本號碼

  • 步驟 3:依序升級各個快取主機

  • 步驟 4:確認已升級所有快取主機

  • 步驟 5:更新允許的伺服器版本範圍,改為只使用新的版本號碼

  • 步驟 6:更新允許的用戶端版本範圍,以包含新的版本號碼

  • 步驟 7:更新快取組態儲存區

  • 步驟 8:更新快取用戶端應用程式

重要

若要順利執行這些步驟,您必須維持必要的伺服器仲裁,讓快取叢集保持執行。相關說明請參閱更新快取伺服器主題。

步驟 1:更新管理機器上的快取服務功能

若要執行更新步驟,請先更新不屬於目標快取叢集之機器上的快取管理功能。快取管理功能可讓您對快取叢集執行 Windows PowerShell 命令。執行新版 Microsoft AppFabric 1.1 for Windows Server 的 AppFabric 安裝程式,以升級快取管理功能。

如果您還沒有用來管理快取叢集的個別機器,可以在快取叢集之外的機器上安裝新版 Microsoft AppFabric 1.1 for Windows Server 的快取管理功能。

若要在僅用於管理的機器上執行 Windows PowerShell 命令,您必須先執行 Use-CacheCluster 命令,並同時指定 ProviderConnectionString 參數。相關說明請參閱常見快取叢集管理工作 (AppFabric 1.1 快取)主題。

步驟 2:更新允許的伺服器版本範圍,以包含新的版本號碼

在線上升級期間,會有部分伺服器執行舊版快取服務,另一部分則執行升級版本的快取服務。有鑑於此,您必須使用 Update-CacheHostAllowedVersions Windows PowerShell 命令提高 EndServerVersion 內容值。例如,如果要從版本 1 升級到版本 3,便會使用下列命令。

Update-CacheHostAllowedVersions –EndServerVersion 3

然後不使用參數直接執行 Get-CacheHost 命令,以確認版本是否有變更。下列輸出範例顯示三節點快取叢集的版本變更。

HostName : CachePort Service Name            Service Status Version Info
-------------------- ------------            -------------- ------------
CACHESERVER1:22233 AppFabricCachingService UP             1 [1,3][1,1]
CACHESERVER2:22233 AppFabricCachingService UP             1 [1,3][1,1]
CACHESERVER3:22233 AppFabricCachingService UP             1 [1,3][1,1]

此範例中的版本資訊欄包含的值為 1 [1,3][1,1]。這個值對應到下列版本詳細資料:

1

在該快取主機上執行的快取服務版本。

[1,3]

在線上升級期間,可以在快取叢集內執行的特定主機快取版本範圍。

[1,1]

可以使用快取叢集的快取用戶端版本範圍。

繼續之前,必須先確認每個快取主機都已更新為目標允許的伺服器範圍。如果有任何快取主機未能更新其伺服器版本範圍,則必須先將其關閉再繼續。使用 Stop-CacheNonUpdatedHosts Windows PowerShell 命令即可完成此操作。可以先使用 Get-CacheHost 命令來預知尚未更新而會停止的伺服器。下列範例會停止版本範圍還沒變更為 13 且目前的服務版本是 1 的快取主機。

Stop-CacheNonUpdatedHosts -Version 1 -BeginServerVersion 1 –EndServerVersion 3

步驟 3:依序升級各個快取主機

若要執行線上升級,必須個別停止及升級每個快取主機。下列步驟說明快取叢集中每個快取主機必須採取的步驟。

  1. 在快取管理機械中,使用 Windows PowerShell 來執行 Stop-CacheHost 命令以停止快取主機。

    警告

    沒有使用高可用性功能時,停止快取主機會導致快取資料遺失。即使有使用高可用性功能,如果叢集保持執行,用戶端還是可能收到會在嘗試重試時解決的暫時例外狀況。

  2. 在已停止的快取主機上,執行新版的安裝程式將 Microsoft AppFabric 1.1 for Windows Server 升級為新的版本。

  3. 完成升級後,使用 Start-CacheHost 重新啟動快取主機。

  4. 接著執行 Get-CacheClusterHealth。確定所有號碼都在「健康」類別內,且所有快取主機的快取部分都很穩定。另外,也要確認 "Unallocated fraction" 或 "Unallocated named cache fractions" 中沒有項目。確認方式是不斷執行 Get-CacheClusterHealth,直到快取部分穩定為止。

  5. 對快取叢集中的下一個快取主機重複執行上述步驟。

在進行這部分的程序時,不支援使用下列 Windows PowerShell 命令。在所有快取主機都已更新為新版本,且伺服器版本起始範圍已更新為新版本時,才可使用這些命令。

升級期間不支援的命令 產生錯誤?

Grant-CacheAllowedClientAccount

Import-CacheClusterConfig

New-Cache

Remove-Cache

Revoke-CacheAllowedClientAccount

Set-CacheClusterSecurity

Set-CacheConfig

Set-CacheHostConfig

Update-CacheHostAllowedVersions*

New-CacheCluster

Remove-CacheCluster

Register-CacheHost

Unregister-CacheHost

產生錯誤的命令有類似下面的文字:ErrorCode<ERRPS024>:SubStatus<ES0001>:This command is not currently allowed. Changes to the cache cluster configuration is restricted during a rolling upgrade of the caching service.

* 當叢集中的所有快取主機都執行相同版本的 AppFabric 快取 服務時,Update-CacheHostAllowedVersions 不會產生錯誤。

步驟 4:確認已升級所有快取主機

升級每個快取主機後,使用 Get-CacheHost 命令檢視每個快取主機上的快取服務版本。這些版本必須全部都是新版本才能繼續。請考慮下列 Get-CacheHost 的輸出範例。

HostName : CachePort Service Name            Service Status Version Info
-------------------- ------------            -------------- ------------
CACHESERVER1:22233 AppFabricCachingService UP             3 [1,3][1,1]
CACHESERVER2:22233 AppFabricCachingService UP             3 [1,3][1,1]
CACHESERVER3:22233 AppFabricCachingService UP             1 [1,3][1,1]

在此範例中,前兩個伺服器目前都執行更新的快取服務,其版本為 3。但是 CACHESERVER3 機器還在執行舊版的快取服務,其版本為 1。若要繼續升級程序,則必須使用前一個步驟順利升級此快取主機,否則就必須將其停止。

步驟 5:更新允許的伺服器版本範圍,改為只使用新的版本號碼

使用 Update-CacheHostAllowedVersions 命令將 BeginServerVersion 提高為新版本。

Update-CacheHostAllowedVersions –BeginServerVersion 3

下列範例顯示在目標版本為 3 的三節點叢集中完成此步驟後,Get-CacheHost 的結果。

HostName : CachePort Service Name            Service Status Version Info
-------------------- ------------            -------------- ------------
CACHESERVER1:22233 AppFabricCachingService UP             3 [3,3][1,1]
CACHESERVER2:22233 AppFabricCachingService UP             3 [3,3][1,1]
CACHESERVER3:22233 AppFabricCachingService UP             3 [3,3][1,1]

此時,您可以使用任何可用的 Windows PowerShell 命令以及升級所帶來的任何新功能。

步驟 6:更新允許的用戶端版本範圍,以包含新的版本號碼

建置來使用新的快取用戶端功能的應用程式必須能與升級的快取叢集通訊。使用 Update-CacheHostAllowedVersions 命令可以將新版本納入允許的快取用戶端版本範圍。下列範例完成此操作的方式,是將 EndClientVersion 參數增加為 3

Update-CacheHostAllowedVersions -EndClientVersion 3

下列範例顯示 Get-CacheHost 輸出中這項變更的結果。

HostName : CachePort Service Name            Service Status Version Info
-------------------- ------------            -------------- ------------
CACHESERVER1:22233 AppFabricCachingService UP             3 [3,3][1,3]
CACHESERVER2:22233 AppFabricCachingService UP             3 [3,3][1,3]
CACHESERVER3:22233 AppFabricCachingService UP             3 [3,3][1,3]

此時,您可以將任何應用程式更新為使用新的快取用戶端組件和功能。如果要將快取用戶端侷限在這些新版本,也可以使用 Update-CacheHostAllowedVersionsBeginClientVersion 變更為新的版本號碼。不過,您也可以選擇讓版本範圍同時允許新舊用戶端繼續使用快取叢集。如果決定要將快取用戶端侷限在特定版本,必須先將所有用戶端更新為該版本,然後再提高 BeginClientVersion 值。

步驟 7:更新快取組態儲存區

Update-CacheConfigurationStore 命令更新快取組態儲存區。此命令僅可在已升級所有快取主機之後使用。

Update-CacheConfigurationStore

在其他內部變更之中,此命令會翻譯快取叢集組態中的主機名稱,以使用其完整合格網域名稱 (FQDN)。

步驟 8:更新快取用戶端應用程式

如先前步驟所述,快取用戶端應用程式必須使用新的 AppFabric 快取 組件,才能利用新的 AppFabric 快取 功能或與版本範圍侷限在最新版本 (例如 3,3) 快取叢集通訊。

請務必注意,AppFabric 快取 組件已不再登錄於全域組件快取 (GAC) 中。這表示您必須同時找出快取用戶端應用程式二進位檔和 AppFabric 快取 組件。或者,也可以使用應用程式組態檔案中的 <assemblyBinding> 區段。<codeBase> 元素可以指向組件位置。

注意

請注意,並非一定要重新建置快取用戶端應用程式。解除安裝或升級 Windows Server AppFabric v1.0 將會從 GAC 中移除 AppFabric 快取 組件。此時,您可以使用上述其中一個方法讓快取用戶端應用程式載入新組件。當然,必須重新建置快取用戶端應用程式才能利用壓縮等新功能。

  2012-03-05