2023年11月15日 星期三

SQL Server 2019 容錯移轉叢集環境架設 - 整合 Windows 2022 iSCSI Target Server 的功能

        我在之前有介紹關於許多 SQL Server 容錯移轉叢集環境架設的部份,而且用了許多的篇幅詳細的介紹,但隨著版本的更新,我們來介紹不同的安裝方式,但目前此篇的方法,比較適合測試環境,我是為了有一個對照的環境可以測試,但在正式機上,可能還是要考量一下,目前仍不建議透過此篇的方式進行,如果真的要選擇的話,其實透過 AlwaysOn,反而是一個比較推薦的作法,大家也可以參考下列的文章。


前篇介紹:

  1. SQL Server 2008 R2 容錯移轉叢集環境架設 - 利用 VM 與 Windows Storage Server - Part I
  2. SQL Server 2008 R2 容錯移轉叢集環境架設 - 利用 VM 與 Windows Storage Server - Part II
  3. SQL Server 2008 R2 容錯移轉叢集環境架設 - 利用 VM 與 Windows Storage Server - Part III(終)
  4. 容錯移轉叢集中多個節點切換順序的設定

AlwaysOn相關設定文章:

  1. 在混合雲的架構上建立完整的AlwaysOn架構
  2. SQL Server 2012 新功能 - AlwaysOn安裝與設定


架構說明:

此架構上,目前有一台 AD + 二台 SQL Server Nodes + Windows 2022 iSCSI Target Server,總共有四台主機,如下列所示。

  • AD: Windows Server 2022
  • SQL Server: Windows Server 2022 + SQL Server 2019
  • iSCSI Target Server: Windows 2022 iSCSI Target Server

安裝開始:

1. 請先至 iSCSI Target Server 主機,新增 iSCSI Target Server 的功能


2. 功能啟用完成後,開始設定 iSCSI disk

3. 選擇 iSCSI disk 建立在那一個實體磁碟上

4. 設定 iSCSI disk 磁碟名稱,在這邊我會建立二顆磁碟,一顆為 仲裁磁碟 (Quorum Disk),另一顆為資料庫資料磁碟

5. 設定磁碟的大小,這邊設定的是最大的可用容量,實際上一開始會很小,但最大可使用到此設定空間。

6. 指定 iSCSI target,由於目前系統不存在,所以進行新增

7. 指定 iSCSI target 的名稱

8. 設定有那些主機可以連線到此 iSCSI target server,所以要將二台 SQL Server 加入,其實後續的設定也可以隨時進行調整

9. 設定用戶端連線到 iSCSI target server 時,是否需要額外的帳號密碼 (CHAP),這邊設定我就沒有特別啟用。


10. 等待系統設定啟用完成

11. 設定完成後,即可以在上方看到有二個 iSCSI 磁碟

12. iSCSI target server 設定完成後,即可設定用戶端,也就是二台 SQL Server,我們先設定第一台,登入後,點選 iSCSI initiator 即可,這個不需額外的安裝即可使用

13. 執行 iSCSI initiator 時,由於預設服務是沒有啟用的,所以會跳出下列的訊息,點選 "Yes" 後 即會啟動服務 


14. 在下列的 Target 區域,輸入 iSCSI target server 的 IP 位置,然後點選 Quick Connect

15. 連結成功後,即可在 Disk Management 中看到之前設定的 iSCSI disk,在此設定 online 與 格式化後,即可以使用。

16. 設定好磁碟後,回到 iSCSI initiator 的 Volume and Devices 點選 Auto Configure,設定完第一台之後,也同時設定第二台,這樣即可

17. 二台都設定完成後,即可設定容錯移轉叢集,完成後,即可看到叢集中有二個節點與二個磁碟,此時也可以嘗試進行 容錯轉移,確認一切都正常。


18. 設定完成 容錯移轉叢集 之後,即可進行 SQL Server 的安裝,在安裝第一個節點時,請選擇 "新的 SQL Server 容錯移轉叢集安裝" 進行。


19. 完成後,即可看到 容錯移轉叢集 中的 Roles 出現 SQL Server,此時即完成第一台,然後再進行第二台的設定。


20. 在進行第二台 SQL Server 的安裝時,請選擇用 "將節點加入到 SQL Server 容錯移轉叢集" 的方式進行,而由於第一台的 Python 與 R 安裝失敗,雖然不影響後續的使用,但在第二台安裝時,會遇到下列的錯誤,雖然我有確認第一台的服務有啟動成功,但一樣會遇到下列的錯誤。

SQL Server Database Services feature state "failed"

21. 這個問題,主要是由於第一台安裝沒有完整的完成,所以才會有這個訊息,解決方法上,可以除了確認第一台的安裝問題為何外,也可以透過下列的方式進行解決。

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\MSSQL15.MSSQLSERVER\ConfigurationState

這個機碼下有多個服務的狀態值,如同下列的圖示,將 2 的部份改成 1,然後再點選一次 "Re-Run" 即可通過。


22. 透過 Process Monitor 觀察,其實安裝時,系統是透過 remote registry 的方式存取此區判斷

23. 第二台安裝完成後,即可嘗試進行 容錯轉移 的動作,確認是否都安裝完成

沒有留言:

張貼留言