使用 SQL Server 升級至 Windows Server 2016 中的 AD FS
這很重要
Microsoft 強烈建議遷移到 Microsoft Entra ID,而不是升級為最新版 AD FS。 如需詳細資訊,請參閱停用 AD FS 的資源
備註
僅在規劃完成明確的時間範圍後才開始升級。 不建議將 AD FS 長時間保持在混合模式狀態,因為讓 AD FS 處於混合模式狀態可能會對伺服器陣列造成問題。
將 Windows Server 2012 R2 AD FS 伺服器陣列移至 Windows Server 2016 AD FS 伺服器陣列
本文說明如何在 Windows Server 2016 中將 AD FS Windows Server 2012 R2 伺服器數位升級至 AD FS。 當您針對 AD FS 資料庫使用 SQL Server 時,會套用這些步驟。
將 AD FS 升級至 Windows Server 2016 FBL
Windows Server 2016 中的 AD FS 新功能是叢集行為層級功能(FBL)。 這項功能涵蓋整個 AD FS 伺服器農場,決定該農場可以使用的功能。 根據預設,Windows Server 2012 R2 AD FS 伺服器陣列中的 FBL 位於 Windows Server 2012 R2 FBL。
Windows Server 2016 AD FS 伺服器可以新增至 Windows Server 2012 R2 伺服器陣列,而且其運作方式與 Windows Server 2012 R2 相同。 對於以這種方式運作的 Windows Server 2016 AD FS 伺服器,您的伺服器陣列稱為「混合」。不過,在 FBL 提高到 Windows Server 2016 之前,無法使用新的 Windows Server 2016 功能。
以下是使用混合伺服器陣列的一些重要功能:
系統管理員可以將新的 Windows Server 2016 同盟伺服器新增至現有的 Windows Server 2012 R2 伺服器數位。 因此,伺服器農場處於「混合模式」,並處於 Windows Server 2012 R2 伺服器農場運作層級。 為了確保整個伺服器陣列的行為一致,無法在此模式中設定或使用新的 Windows Server 2016 功能。
** 系統管理員可以從混合模式伺服器農場中移除所有 Windows Server 2012 R2 同盟伺服器。 在此案例中,新的 Windows Serve 2016 同盟伺服器之一會升級為主要節點的角色。 系統管理員接著可以將 FBL 從 Windows Server 2012 R2 提高到 Windows Server 2016。 因此,您可以設定及使用任何新的 AD FS Windows Server 2016 功能。
AD FS Windows Server 2012 R2 組織在升級至 Windows Server 2016 時,不需要部署全新的伺服器陣列,也不需要匯入和匯出組態數據。 另外,他們可以在伺服器在線時將 Windows Server 2016 節點新增至現有的伺服器叢集,而且在升級 FBL 時僅需承擔短暫的停機時間。
在混合伺服器陣列模式中,AD FS 伺服器陣列無法執行 Windows Server 2016 中 AD FS 中導入的任何新功能或功能。 想要試用新功能的組織可以在 FBL 升級後進行測試。 如果您的組織想要在提升 FBL 之前測試新功能,您需要部署一個獨立的伺服器群組。
本文的其餘部分提供將 Windows Server 2016 同盟伺服器新增至 Windows Server 2012 R2 環境的步驟。 這些步驟是在下列架構圖表概述的測試環境中執行。
備註
您必須先移除所有 Windows 2012 R2 節點,才能在 Windows Server 2016 FBL 中移至 AD FS。 您無法將 Windows Server 2012 R2 OS 升級至 Windows Server 2016,並自動成為 2016 節點。 您需要移除它並用新的 2016 節點來替換。
如果在 AD FS 中設定 AlwaysOnAvailability 群組或合併式複寫,請在升級之前移除任何 AD FS 資料庫的所有復寫,並將所有節點指向主要 SQL 資料庫。 完成這些工作之後,請如所述執行伺服器群組升級。 完成升級之後,請將 Always On 可用性群組或合併式複製新增至新的資料庫。
下列架構圖顯示用來驗證和記錄下列步驟的設定。
將 Windows 2016 AD FS 伺服器加入 AD FS 伺服器陣列
在 [伺服器管理員] 中,在 Windows Server 2016 上安裝 Active Directory 同盟服務角色。
在 AD FS 設定精靈中,將新的Windows Server 2016 伺服器加入現有的AD FS 伺服器陣列。
在 [ 歡迎使用 ] 畫面上,選取 [將同盟伺服器新增至同盟伺服器陣列],然後選取 [ 下一步]。
在 [ 連線到 Active Directory 網域服務 ] 畫面上,指定具有執行同盟服務設定許可權的 系統管理員帳戶 ,然後選取 [ 下一步]。
在 [ 指定伺服器陣列 ] 畫面上,輸入 SQL 伺服器和實例的名稱,然後選取 [ 下一步]。
在 [ 指定 SSL 憑證 ] 畫面上,指定憑證,然後選取 [ 下一步]。
在 [ 指定服務帳戶 ] 畫面上,指定服務帳戶,然後選取 [ 下一步]。
在 [ 檢閱選項 ] 畫面上,檢閱選項,然後選取 [ 下一步]。
在 [ 必要條件檢查 ] 畫面上,確定所有必要條件檢查都通過,然後選取 [ 設定]。
在 [ 結果] 畫面上,確定伺服器已成功設定,然後選取 [ 關閉]。
拿掉 Windows Server 2012 R2 AD FS 伺服器
下列步驟會移除 Windows Server 2012 R2 AD FS 伺服器。
備註
當您使用 SQL 作為資料庫時,不需要使用 Set-AdfsSyncProperties -Role
命令來設定主要 AD FS 伺服器。 此組態中的所有節點都會被視為主要節點。
在 [伺服器管理員] 中,移至 Windows Server 2012 R2 AD FS 伺服器。 在 [管理] 底下,選取 [移除角色和功能]:
在 [ 開始之前 ] 畫面上,選取 [ 下一步],然後在 [ 伺服器選取 畫面] 上,選取 [ 下一步]。
在 [ 伺服器角色] 畫面上,取消核取 [Active Directory 同盟服務 ] 選項,然後選取 [ 下一步]。
在 [ 功能 ] 畫面上,選取 [ 下一步]。
在 [ 確認 畫面] 上,選取 [移除]。
完成功能移除之後,請重新啟動伺服器。
提高伺服器農場行為層級(FBL)
下列步驟會提升伺服器的 FBL。
這很重要
在繼續本節中的程式之前,請先檢閱下列必要條件:
請確定樹系和網域的準備程式已在 Active Directory 環境中完成,且 Active Directory 具有 Windows Server 2016 架構。 本文所述的程式是以以 Windows 2016 域控制器開頭的架構為基礎。 此範例架構不需要本節中的步驟,因為工作隨附於 AD 安裝程式中。
從 [設定] 執行 Windows Update,確定 Windows Server 2016 是最新的。 繼續更新程式,直到不需要進一步更新為止。
請確定您的 AD FS 服務帳戶具有 SQL Server 和 ADFS 伺服器陣列中每部伺服器的系統管理許可權。
在 Windows Server 2016 Server 上,開啟 PowerShell 並執行下列命令:
$cred = Get-Credential
在 SQL Server 上輸入具有系統管理員許可權的認證。
在 PowerShell 中,輸入下列命令:
Invoke-AdfsFarmBehaviorLevelRaise -Credential $cred
在提示時,選擇 Y (是) 以開始提高層級。 作業完成之後,您成功提升了 FBL。
如果您移至 AD FS 管理,您會看到新的節點。
您可以使用 PowerShell 指令
Get-AdfsFarmInformation
來顯示目前的 FBL。
升級現有 WAP 伺服器的組態版本
在每個 Web 應用程式 Proxy 上,在提升許可權的視窗中執行下列 PowerShell 命令,以重新設定 WAP:
$trustcred = Get-Credential -Message "Enter Domain Administrator credentials" Install-WebApplicationProxy -CertificateThumbprint {SSLCert} -fsname fsname -FederationServiceTrustCredential $trustcred
執行下列命令,從叢集中移除舊的伺服器,並只保留執行最新伺服器版本的 WAP 伺服器(先前重新設定):
Set-WebApplicationProxyConfiguration -ConnectedServersName WAPServerName1, WAPServerName2
執行下列命令來檢查 WAP 組態。 該
ConnectedServersName
值代表伺服器,這是由先前命令運行的結果。Get-WebApplicationProxyConfiguration
若要升級
ConfigurationVersion
WAP 伺服器的 ,請執行下列 PowerShell 命令:Set-WebApplicationProxyConfiguration -UpgradeConfigurationVersion
再次執行
Get-WebApplicationProxyConfiguration
命令,並確認ConfigurationVersion
是否已升級。