適用於:Linux 上的 SQL Server
本教學說明部署 Linux Pacemaker 叢集以支援 SQL Server Always On 可用性群組(AG)或故障轉移叢集實例(FCI)所需的任務。 與緊密耦合的 Windows Server / SQL Server 堆疊不同,你可以在安裝 SQL Server 前後,在 Linux 上建立 Pacemaker 叢集並設定可用性群組(AG)。 叢集設定完成後,您需要為 AG 或 FCI 部署的 Pacemaker 部分配置整合與資源。
Important
叢集類型為 None 的 AG 不需要 Pacemaker 叢集,也無法由 Pacemaker 管理。
- 安裝高可用性附加元件並安裝 Pacemaker。
- 準備 Pacemaker 的節點 (僅限 RHEL 和 Ubuntu)。
- 建立 Pacemaker 叢集。
- 安裝 SQL Server HA 套件。
Note
從 SQL Server 2025(17.x)開始,SUSE Linux Enterprise Server(SLES)不再支援。
先決條件
安裝高可用性插件
使用下列語法,為每個 Linux 發行版安裝高可用性 (HA) 附加元件所需的套件。
叢集中的每個節點都必須擁有適當的 RHEL 及高可用性附加元件訂閱。 欲檢視需求,請參閱 《如何在 Red Hat Enterprise Linux 安裝高可用性叢集套件》。 請遵循以下步驟來設定訂用帳戶和存放庫:
註冊系統。
sudo subscription-manager register輸入您的使用者名稱和密碼。
列出可用來註冊的集區。
sudo subscription-manager list --availableNote
對於 RHEL 10,請使用以下指令:
sudo subscription-manager repos --list從可用集區的清單中,記下高可用性訂用帳戶的集區識別碼。
更新下列指令碼。 將
<pool id>替換為上一個步驟中的高可用性集區識別碼。 執行指令碼以附加訂用帳戶。sudo subscription-manager attach --pool=<pool id>啟用存放庫。
RHEL 8
sudo subscription-manager repos --enable=rhel-8-for-x86_64-highavailability-rpms雷爾 9
sudo subscription-manager repos --enable=rhel-9-for-x86_64-highavailability-rpms雷爾 10
sudo subscription-manager repos --enable=rhel-10-for-x86_64-highavailability-rpms
安裝 Pacemaker。
sudo yum install pacemaker pcs fence-agents-all resource-agents
準備 Pacemaker 的節點 (僅限 RHEL 和 Ubuntu)
Pacemaker 使用一個名為 hacluster的使用者。 在 RHEL 和 Ubuntu 上,HA 外掛安裝會產生這個使用者。
在每台將作為 Pacemaker 叢集節點的伺服器上,建立叢集所使用的使用者密碼。 範例中使用了名稱
hacluster,但你可以使用任何名稱。 Pacemaker 叢集中的所有節點必須使用相同的名稱與密碼。sudo passwd hacluster在每個將成為 Pacemaker 叢集一部分的節點上,啟用並啟動
pcsd服務,執行以下指令(RHEL 和 Ubuntu)。sudo systemctl enable pcsd sudo systemctl start pcsd接著執行以下指令,確保
pcsd已啟動。sudo systemctl status pcsd在 Pacemaker 叢集中啟用每個可用節點的 Pacemaker 服務。
sudo systemctl enable pacemaker在 Ubuntu 上,你會看到以下錯誤。
pacemaker Default-Start contains no runlevels, aborting.此錯誤是已知的問題。 儘管有錯誤,啟用心臟起搏器服務仍是成功的。
接下來,建立並啟動 Pacemaker 叢集。 在此步驟中,RHEL 和 Ubuntu 有一項差異。 在兩個發行版中,安裝
pcs會設定 Pacemaker 叢集的預設設定檔,但在 RHEL 執行此指令會移除所有現有設定並建立新的叢集。
建立 Pacemaker 叢集
本節說明如何為每個 Linux 發行版建立與配置叢集。
授權節點。 在這些例子中,
<NodeX>是每個節點的名稱。 請在提示時,手動輸入hacluster的使用者名稱和密碼。sudo pcs host auth <Node1> <Node2> <Node3>建立叢集。 在這個例子中,
PMClusterName是你為 Pacemaker 叢集指派的名稱。sudo pcs cluster setup <PMClusterName> <Node1> <Node2> <Node3>在所有節點上啟動叢集。
sudo pcs cluster start --all讓叢集在電腦啟動時啟動。
sudo pcs cluster enable --all確認叢集狀態。
sudo pcs status
安裝 SQL Server HA
如果 SQL Server HA 套件尚未安裝,請使用以下指令安裝。 如果你在安裝 SQL Server 後才安裝 HA 套件,必須重新啟動 SQL Server 才能生效。 這些指令假設 Microsoft 套件的儲存庫已經設置好,因為此時應該已經安裝了 SQL Server。
- 其他可選的 Linux 上的 SQL Server 套件,SQL Server Full-Text 搜尋(mssql-server-fts)和 SQL Server Integration Services(mssql-server-is),對於 FCI 或 AG 來說,都不是高可用性的必要條件。
sudo yum install mssql-server-ha
sudo systemctl restart mssql-server
後續步驟
在本教學課程中,您已了解如何為 Linux 上的 SQL Server 部署 Pacemaker 叢集。 您已學到如何做到以下幾點:
- 安裝高可用性附加元件並安裝 Pacemaker。
- 準備 Pacemaker 的節點 (僅限 RHEL 和 Ubuntu)。
- 建立 Pacemaker 叢集。
- 安裝 SQL Server HA 套件。
若要為 Linux 上的 SQL Server 建立和設定可用性群組,請參閱: