在本文中,您將了解如何將 SQL Server 容錯移轉叢集執行個體移轉至 Azure VMware 解決方案。 Azure VMware 解決方案服務目前不支援 VMware 混合式連結模式,將內部部署 vCenter Server 連線到在 Azure VMware 解決方案中執行的 vCenter Server。 由於此條件限制,此流程需要使用 VMware HCX 進行遷移。 如需設定 HCX 的詳細資訊,請參閱在 Azure VMware 解決方案中安裝和啟動 VMware HCX。
VMware HCX 不支援在連結至虛擬機器的實體共用模式中使用 SCSI 控制器遷移虛擬機器。 不過,您可以執行此程序中顯示的步驟,並使用 VMware HCX 冷移轉來移動組成叢集的不同虛擬機器,以克服這項限制。
注意
此程序需要將叢集完整關機。 由於 SQL Server 服務在遷移期間無法使用,請妥善規劃停機期間。
Microsoft SQL Server 2019 與 2022 版曾與 Windows Server 2019 與 2022 Data Center 版進行測試,虛擬機部署於本地環境。 Windows Server 和 SQL Server 已遵循 Microsoft 和 VMware 的最佳做法和建議進行設定。 內部部署來源基礎結構是在 Dell PowerEdge 伺服器和 Intel Optane P4800X SSD NVMe 裝置上執行的 VMware vSphere 7.0 Update 3 和 VMware vSAN。
必要條件
- 檢閱並記錄叢集中每個節點的儲存體和網路設定。
- 檢閱並記錄 WSFC 設定。
- 維護所有 SQL Server 資料庫的備份。
- 備份叢集虛擬機器。
- 從任何分散式資源排程器 (DRS) 群組中移除所有叢集節點 VM,及其所屬的規則。
- 在你的本地資料中心與執行遷移工作負載的 Azure VMware 解決方案 私有雲之間配置 VMware HCX。 如需安裝 VMware HCX 的詳細資訊,請參閱 Azure VMware 解決方案文件。
- 確保 SQL Server 使用的所有網路區段及其工作負載都已擴展到你的 Azure VMware 解決方案 私有雲中。 若要確認此步驟,請參閱設定 VMWare HCX 網路擴充功能。
透過 VPN 的 VMWare HCX 或 ExpressRoute 連線都可用來作為移轉的網路設定。
由於透過 VPN 的 VMWare HCX 頻寬有限,此方式通常適用於可維持較長停機時間的工作負載 (例如非商業執行環境)。
若為下列任何一個情況,建議使用 ExpressRoute 連線來進行移轉:
- 生產環境
- 資料庫規模較大的工作負載
- 在需要將停機時間降到最低的情境中,建議使用 ExpressRoute 連線進行移轉。
停機時間考量
移轉期間的停機時間取決於要移轉的資料庫大小,以及與 Azure 雲端的私人網路連線速度。 將 SQL Server Failover Cluster Instances Always On 移轉至 Azure VMware 解決方案,需要資料庫和所有叢集節點完整停機,不過您應規劃在離峰時段使用已核准的變更時段執行移轉。
下表指出每個 SQL Server 拓撲移轉的預估停機時間。
| 案例 | 預期的停機時間 | 注意事項 |
|---|---|---|
| SQL Server 獨立執行個體 | 低 | 遷移是透過 VMware vMotion 完成的。 資料庫在遷移期間可用,但不建議在此期間提交任何關鍵資料。 |
| SQL Server Always On 可用性群組 | 低 | 在移轉第一個次要複本期間,主要複本會一律保持可用,且在初始容錯移轉至 Azure 之後,次要複本會成為主要複本。 |
| SQL Server Always On 容錯移轉叢集執行個體 | 高 | 叢集的所有節點都會使用 VMWare HCX 冷移轉來關閉和移轉。 停機時間取決於資料庫大小和 Azure 雲端的私人網路速度。 |
Windows Server Failover Cluster 仲裁考量
Windows Server Failover Cluster 需要仲裁機制來維護叢集。
使用奇數個投票元素,透過叢集中的奇數個節點或使用見證來達成。 您可以使用三種不同的形式來設定見證:
- 磁碟見證
- 檔案共用見證
- 雲端見證
如果叢集使用磁碟見證,則必須使用移轉容錯移轉叢集,將磁碟與叢集共用儲存體一起移轉。
如果叢集使用在內部部署執行的檔案共用見證,則移轉後叢集的見證類型會取決於 Azure VMware 解決方案 案例:
- 資料中心擴充:將檔案共用見證保留在內部部署。 您的工作負載會分散到資料中心和 Azure VMware 解決方案,因此兩者之間的連線能力一律應可供使用。 在任何情況下,請考量頻寬限制,並進行相應規劃。
-
資料中心出口:在此案例中,有兩個選項。 在這兩種情況下,如果您需要執行復原,可以在移轉期間將檔案共用見證保留在內部部署。
- 在 Azure VMware 解決方案私人雲端中部署新的檔案共用見證。
- 部署在 Azure Blob 儲存體中執行的 Cloud 見證,其區域與 Azure VMware 解決方案 私人雲端相同。
- 災害復原和商務持續性:對於災害復原案例,最佳且最可靠的選項是建立在 Azure 儲存體中執行的雲端見證。
- 應用程式現代化:對於此使用案例,最佳選項是部署雲端見證。
如需仲裁組態和管理的詳細資訊,請參閱容錯移轉叢集文件。 如需在 Azure Blob 儲存體中部署 Cloud 見證的詳細資訊,請參閱部署容錯移轉叢集的 Cloud Witness 文件。
移轉容錯移轉叢集
在本文件中,我們會使用雙節點叢集搭配 Windows Server 2019 Datacenter 和 SQL Server 2019 Enterprise 作為圖例說明。 此程序也支援 Windows Server 2022 和 SQL Server 2022。
從 vSphere Client 關閉叢集的第二個節點。
存取叢集的第一個節點,然後開啟 Failover Cluster Manager。
關閉叢集的第一個節點。
從 vSphere 用戶端,編輯叢集第二個節點的設定。
- 從虛擬機器設定中移除所有共用磁碟。
- 確保沒有勾選「 從資料儲存庫刪除檔案 」的勾選框,因為這會永久刪除磁碟。 如果發生這種情況,您必須從先前的備份復原叢集。
- 在共用儲存體使用的虛擬 SCSI 控制器中,將 SCSI 匯流排共用從實體設定為無。 這些控制器通常是 VMware Paravirtual 類型。
編輯第一個節點的虛擬機器設定。 在 SCSI 控制器中,將 SCSI 匯流排共用 從 實體 變更為 無。
從 vSphere 用戶端,移至 HCX 外掛程式區域。 在 [服務] 下,選取 [移轉]>[Migrate]。
- 選取第二個節點虛擬機器。
- 將遠端私有雲中的 vSphere 叢集(其承載已移轉的 SQL Server VM(一部或多部))設定為 Compute Container。
- 選取 vSAN 資料存放區作為遠端儲存體。
- 若要將虛擬機器放在特定資料夾中,請選取資料夾。 這不是強制的,但建議您分隔 Azure VMware 解決方案私人雲端中的不同工作負載。
- 保留與來源相同的格式。
- 選取冷移轉作為移轉設定檔。
- 在 [延伸選項] 中,選取 [移轉自訂屬性]。
- 確認本地網路區段在 Azure 中有正確的遠端延伸區段。
- 選擇 驗證 並確認所有檢查皆已完成且通過狀態。 最常見的錯誤與儲存體設定有關。 確認沒有任何 SCSI 控制器設為實體共用。
- 選取 [Go],移轉即會開始進行。
對第一個節點重複相同的程序。
存取 Azure VMware 解決方案 vSphere Client,編輯第一個節點設定,並將管理共用磁碟的 SCSI 控制器或控制器重新設定回實體 SCSI 匯流排共用。
在 vSphere 用戶端中編輯節點 2 的設定。
- 將管理共用儲存體的 SCSI 控制器中的 SCSI 匯流排共用重新設定回實體。
- 將叢集共用磁碟新增至節點作為額外的儲存體。 將其指派給第二個 SCSI 控制器。
- 確保儲存設定與遷移前記錄相同。
開啟第一個節點虛擬機器的電源。
使用 VMware 遠端控制台存取第一個節點 VM。
啟動第二個節點虛擬機器。
從 VMware 遠端控制台存取第二個節點 VM。
使用 SQL Server Management Studio 連線到 SQL Server 叢集資源網路名稱。 確認所有資料庫都在線上且可存取。
檢查基礎結構中其他系統和應用程式的 SQL Server 連線能力。 確認所有使用該資料庫或這些資料庫的應用程式仍可存取它們。
其他相關資訊
- 在 Azure VMware 解決方案中啟用適用於 SQL Server 的 Azure Hybrid Benefit
- 在 Azure VMware 解決方案中建立放置原則
- Windows Server 容錯移轉叢集文件
- Microsoft SQL Server 2019 文件
- Microsoft SQL Server 2022 文件
- Windows Server 技術文件
- 使用 VMware vSphere 規劃高可用性的任務關鍵 SQL Server 部署
- VMware 知識庫 100 2951 – 在虛擬機器中設定 Microsoft SQL Server 的秘訣
- VMware vSphere 7.0 中的 Microsoft SQL Server 2019 效能研究
- 在 VMware vSphere 上建構 Microsoft SQL Server – 最佳做法指南
- VMware vSphere 7.0 的 Windows Server 容錯移轉叢集設定