在本文中,您將了解如何將 SQL Server Always On 可用性群組移轉至 Azure VMware 解決方案。 對於 VMWare HCX,您可以遵循 VMWare vMotion 移轉程序。
Microsoft SQL Server(2019 和 2022)已在 Windows Server(2019 和 2022)Datacenter 版本上完成測試,且虛擬機器部署於內部部署環境中。 Windows Server 和 SQL Server 已遵循 Microsoft 和 VMware 的最佳做法和建議進行設定。 內部部署來源基礎結構是在 Dell PowerEdge 伺服器和 Intel Optane P4800X SSD NVMe 裝置上執行的 VMware vSphere 7.0 Update 3 和 VMware vSAN。
必要條件
以下是將 SQL Server 執行個體移轉至 Azure VMware 解決方案的必要條件。
- 檢閱並記錄叢集中每個節點的儲存體和網路設定。
- 維護所有 SQL Server 資料庫的備份。
- 備份裝載 SQL Server 的一或多個虛擬機器。
- 從任何 VMWare vSphere 分散式資源排程器 (DRS) 群組和規則中移除虛擬機器。
- 您必須在內部部署資料中心與執行已移轉工作負載的 Azure VMware 解決方案私人雲端之間設定 VMware HCX。 如需如何設定 HCX 的詳細資訊,請參閱 Azure VMware 解決方案文件。
- 確保 SQL Server 使用的所有網路區段及其工作負載都已擴展到你的 Azure VMware 解決方案 私有雲中。 若要確認此步驟,請參閱設定 VMWare HCX 網路擴充功能。
透過 VPN 的 VMWare HCX 或 ExpressRoute 連線都可用來作為移轉的網路設定。
由於透過 VPN 的 VMWare HCX 頻寬有限,此方式通常適用於可維持較長停機時間的工作負載 (例如非商業執行環境)。
若為下列任何一個情況,建議使用 ExpressRoute 連線來進行移轉:
- 生產環境
- 資料庫規模較大的工作負載
- 在需要盡量減少停機時間的情況下進行移轉,建議使用 ExpressRoute 連線。
下一節將進一步討論停機時間考量。
停機時間考量
移轉期間的停機時間取決於要移轉的資料庫大小,以及與 Azure 雲端的私人網路連線速度。 雖然 SQL Server 可用性群組移轉可以在最短的解決方案停機時間下執行,但最好是在預先核准的變更時段內,在離峰時間進行移轉。
下表指出每個 SQL Server 拓撲移轉的預估停機時間。
| 案例 | 預期的停機時間 | 注意事項 |
|---|---|---|
| SQL Server 獨立執行個體 | 低 | 遷移是透過 VMware vMotion 完成的。 資料庫在遷移期間可用,但建議在此期間不要提交任何關鍵資料。 |
| SQL Server Always On 可用性群組 | 低 | 在移轉第一個次要複本期間,主要複本會一律保持可用,且在初始容錯移轉至 Azure 之後,次要複本會成為主要複本。 |
| SQL Server Always On 容錯移轉叢集執行個體 | 高 | 叢集的所有節點都會使用 VMWare HCX 冷移轉來關閉和移轉。 停機時間取決於資料庫大小和 Azure 雲端的私人網路速度。 |
Windows Server Failover Cluster 仲裁考量
Microsoft SQL Server Always On Availability Groups 依賴 Windows Server Failover Cluster,這需要仲裁投票機制來維持叢集一致性。
需要奇數個投票元素,這可透過叢集中的奇數個節點或使用見證來達成。 您可以使用三種不同的方式來設定見證:
- 磁碟見證
- 檔案共用見證
- 雲端見證
如果叢集使用磁碟見證,則必須使用本文件所述的程序來移轉磁碟與剩餘的叢集共用儲存體。
如果叢集使用在內部部署執行的檔案共用見證,則移轉叢集的見證類型取決於 Azure VMware 解決方案案例,有幾個選項需要考量。
- 資料中心擴充:將檔案共用見證保留在內部部署。 您的工作負載會分散到您的資料中心和 Azure。 因此,您的資料中心與 Azure 之間的連線應一律可供使用。 在任何情況下,請考量頻寬限制,並進行相應規劃。
-
資料中心出口:在此案例中,有兩個選項。 在這兩個選項中,如果您需要在程序期間執行復原,可以在移轉期間將檔案共用見證保留在內部部署。
- 在 Azure VMware 解決方案私人雲端中部署新的檔案共用見證。
- 部署在 Azure Blob 儲存體中執行的 Cloud 見證,其區域與 Azure VMware 解決方案 私人雲端相同。
- 災害復原和商務持續性:對於災害復原案例,最佳且最可靠的選項是建立在 Azure 儲存體中執行的雲端見證。
- 應用程式現代化:對於此使用案例,最佳選項是部署雲端見證。
如需設定和管理仲裁的詳細資料,請參閱容錯移轉叢集文件。 如需在 Azure Blob 儲存體中部署 Cloud 見證的相關資訊,請參閱管理容錯移轉叢集的叢集仲裁。
移轉 SQL Server Always On 可用性群組
使用系統管理認證,透過 SQL Server Management Studio 存取 Always On 可用性群組。
登入內部部署的 vCenter Server,然後前往 HCX 區段。
在 [服務] 下,選取 [移轉]> [移轉]。
- 選取一部虛擬機器,其執行即將移轉之資料庫的次要複本。
- 在遠端私人雲端中設定 vSphere 叢集,其現在會將已移轉的一或多個 SQL Server VM 裝載為計算容器。
- 選取 vSAN 資料存放區作為遠端存放庫。
- 選取資料夾。 這不是強制的,但建議您分隔 Azure VMware 解決方案私人雲端中的不同工作負載。
- 保留與來源相同的格式。
- 選取 vMotion 作為 移轉設定檔。
- 在 [擴充選項] 中,選取 [移轉自訂屬性]。
- 確認本地網路區段在 Azure 中有正確的遠端延伸區段。
- 選擇 驗證 並確認所有檢查皆已完成且通過狀態。 最常見的錯誤與儲存體組態有關。 確認沒有虛擬的 SCSI 控制器擁有實體共享設定。
- 選取 [Go],開始移轉。
移轉完成後,請存取已移轉的複本,並確認可用性群組中其餘成員的連線能力。
在SQL Server Management Studio中,打開 Availability Group Dashboard,確認副本顯示為 Online。
- 因為複本在移轉期間與主要複本不同步,所以容錯移轉整備程度資料行中的資料遺失狀態是預期行為。
再次編輯 可用性群組屬性,並將 可用性模式 設回 同步認可。
- 次要複本會開始同步處理移轉期間對主要複本所做的所有變更。 等待其顯示為 [已同步] 狀態。
在 SSMS 中,從可用性群組儀表板選取啟動容錯移轉精靈。
選取已移轉的複本,然後選取 [下一步]。
檢閱變更,然後選取完成以啟動容錯移轉作業。
在SQL Server Management Studio(SSMS)中刷新物件總管視圖。 確認遷移後的執行個體現在是主要複本。
針對可用性群組其餘的複本,請重複執行步驟 1 至 6。
注意
一次遷移一個副本,並在每次遷移後確認所有變更是否同步回副本。 請勿使用 HCX 大量移轉同時移轉所有複本。
完成所有複本移轉之後,請使用 SQL Server Management Studio 存取您的 Always On 可用性群組。
下一步
- 啟用適用於 Azure VMware 解決方案的 SQL 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 容錯移轉叢集設定