Freigeben über


Bereitstellen eines Pacemaker-Clusters für SQL Server für Linux

Gilt für:SQL Server unter Linux

In diesem Tutorial werden die Aufgaben beschrieben, die erforderlich sind, um einen Linux Pacemaker-Cluster für eine SQL Server Always On Verfügbarkeitsgruppe (AG) oder eine Failoverclusterinstanz (FCI) bereitzustellen. Im Gegensatz zum eng gekoppelten Windows Server/SQL Server-Stapel können Sie einen Pacemaker-Cluster erstellen und eine Verfügbarkeitsgruppe (AG) unter Linux vor oder nach der Installation von SQL Server konfigurieren. Sie konfigurieren die Integration und Ressourcen für den Pacemaker-Teil einer AG- oder FCI-Bereitstellung, nachdem der Cluster konfiguriert wurde.

Wichtig

Eine AG mit einem Clustertyp "None" erfordert keinen Pacemaker-Cluster und kann nicht von Pacemaker verwaltet werden.

  • Installieren Sie das Hochverfügbarkeits-Add-On und Pacemaker.
  • Vorbereiten der Knoten für Pacemaker (nur RHEL und Ubuntu)
  • Erstellen Sie den Pacemaker-Cluster.
  • Installieren Sie die pakete SQL Server HA und SQL Server-Agent.

Hinweis

Ab SQL Server 2025 (17.x) wird SUSE Linux Enterprise Server (SLES) nicht unterstützt.

Voraussetzungen

Install SQL Server für Linux.

Installieren des Hochverfügbarkeits-Add-Ons

Verwenden Sie die folgende Syntax, um die Pakete zu installieren, aus denen das Hochverfügbarkeits-Add-On für die verschiedenen Verteilungen von Linux besteht.

  1. Registrieren Sie den Server mithilfe der folgenden Syntax. Daraufhin werden Sie zur Eingabe eines gültigen Benutzernamens und Kennworts aufgefordert.

    sudo subscription-manager register
    
  2. Listen Sie die verfügbaren Pools für die Registrierung auf.

    sudo subscription-manager list --available
    

    Verwenden Sie für RHEL 10 den folgenden Befehl:

    sudo subscription-manager repos --list
    

    Notieren Sie sich aus der Liste der verfügbaren Pools die Pool-ID für das Hochverfügbarkeitsabonnement.

  3. Führen Sie den folgenden Befehl aus, um rhel hohe Verfügbarkeit mit dem Abonnement zu verknüpfen. In diesem Beispiel <PoolId> ist die Pool-ID für das Abonnement mit hoher Verfügbarkeit aus dem vorherigen Schritt angegeben.

    sudo subscription-manager attach --pool=<PoolID>
    
  4. Ermöglichen Sie dem Repository die Nutzung der Hochverfügbarkeits-Erweiterung.

    RHEL 7

    sudo subscription-manager repos --enable=rhel-ha-for-rhel-7-server-rpms
    

    RHEL 8

    sudo subscription-manager repos --enable=rhel-8-for-x86_64-highavailability-rpms
    

    RHEL 9

    sudo subscription-manager repos --enable=rhel-9-for-x86_64-highavailability-rpms
    

    RHEL 10

    sudo subscription-manager repos --enable=rhel-10-for-x86_64-highavailability-rpms
    
  5. Installieren Sie Pacemaker.

    sudo yum install pacemaker pcs fence-agents-all resource-agents
    

Vorbereiten der Knoten für Pacemaker (nur RHEL und Ubuntu)

Pacemaker verwendet einen Benutzer mit dem Namen hacluster , den Sie für die Verteilung erstellen. Auf RHEL und Ubuntu erstellt die HA-Add-On-Installation diesen Benutzer.

  1. Erstellen Sie auf jedem Server, der als Knoten im Pacemaker-Cluster dient, das Kennwort für einen Benutzer, den der Cluster verwendet. In den Beispielen wird der Name haclusterverwendet, Sie können jedoch einen beliebigen Namen verwenden. Alle Knoten im Pacemaker-Cluster müssen denselben Namen und dasselbe Kennwort verwenden.

    sudo passwd hacluster
    
  2. Aktivieren und starten Sie auf jedem Knoten, der Teil des Pacemaker-Clusters ist, den pcsd Dienst mit den folgenden Befehlen (RHEL und Ubuntu).

    sudo systemctl enable pcsd
    sudo systemctl start pcsd
    

    Führen Sie dann den folgenden Befehl aus, um sicherzustellen, dass pcsd gestartet wird.

    sudo systemctl status pcsd
    
  3. Aktivieren Sie den Pacemaker-Dienst auf jedem möglichen Knoten im Pacemaker-Cluster.

    sudo systemctl start pacemaker
    

    Auf Ubuntu wird der folgende Fehler angezeigt.

    pacemaker Default-Start contains no runlevels, aborting.
    

    Bei diesem Fehler handelt es sich um ein bekanntes Problem. Trotz des Fehlers ist die Aktivierung des Pacemaker-Diensts erfolgreich. Dieser Fehler wird in einem zukünftigen Update behoben.

  4. Als Nächstes erstellen und starten Sie den Pacemaker-Cluster. Bei diesem Schritt gibt es einen Unterschied zwischen RHEL und Ubuntu. Während bei beiden Verteilungen die Installation von pcs eine Standardkonfigurationsdatei für den Pacemaker-Cluster konfiguriert, entfernt dieser Befehl auf RHEL alle vorhandenen Konfigurationen und erstellt einen neuen Cluster.

Erstellen Sie den Pacemaker-Cluster

In diesem Abschnitt wird beschrieben, wie Sie den Cluster für jede Linux-Verteilung erstellen und konfigurieren.

  1. Autorisieren Sie die Knoten. In diesen Beispielen ist <NodeX> der Name jedes Knotens.

    RHEL 7

    Ersetzen Sie <password> durch das Kennwort für hacluster.

    sudo pcs cluster auth <Node1 Node2 ... NodeN> -u hacluster -p <password>
    

    RHEL 8 und höhere Versionen

    Geben Sie den Benutzernamen und das Kennwort für hacluster manuell ein, wenn Sie dazu aufgefordert werden.

    sudo pcs host auth <Node1> <Node2> <Node3>
    
  2. Erstellen Sie den Cluster. In diesem Beispiel ist PMClusterName der Name, den Sie dem Pacemaker-Cluster zuweisen.

    RHEL 7

    sudo pcs cluster setup --name <PMClusterName> <Node1> <Node2> <Node3>
    

    RHEL 8 und höhere Versionen

    sudo pcs cluster setup <PMClusterName> <Node1> <Node2> <Node3>
    
  3. Starten Sie den Cluster auf allen Knoten.

    sudo pcs cluster start --all
    
  4. Aktivieren Sie den Start des Clusters, wenn der Computer gestartet wird.

    sudo pcs cluster enable --all
    
  5. Überprüfen Sie den Clusterstatus.

    sudo pcs status
    

Installieren des SQL Server HA

Verwenden Sie die folgenden Befehle, um das SQL Server HA-Paket und SQL Server-Agent zu installieren, sofern sie noch nicht installiert sind. Wenn Sie das HA-Paket nach der Installation SQL Server installieren, müssen Sie SQL Server neu starten, damit die Änderung wirksam wird. Bei diesen Anweisungen wird davon ausgegangen, dass die Repositorys für die Microsoft Pakete bereits eingerichtet sind, da SQL Server zu diesem Zeitpunkt installiert werden sollte.

  • Wenn Sie SQL Server-Agent nicht für den Protokollversand oder eine andere Verwendung verwenden, müssen Sie sie nicht starten oder konfigurieren.

  • Die anderen optionalen Pakete für SQL Server unter Linux, SQL Server Full-Text Search (mssql-server-fts) und SQL Server Integration Services (mssql-server-is) sind weder für eine FCI noch für eine AG erforderlich.

sudo yum install mssql-server-ha
sudo systemctl restart mssql-server

Nächster Schritt

In diesem Lernprogramm haben Sie erfahren, wie Sie einen Pacemaker-Cluster für SQL Server für Linux bereitstellen. Sie haben Folgendes gelernt:

  • Installieren Sie das Hochverfügbarkeits-Add-On und Pacemaker.
  • Vorbereiten der Knoten für Pacemaker (nur RHEL und Ubuntu)
  • Erstellen Sie den Pacemaker-Cluster.
  • Installieren Sie die pakete SQL Server HA und SQL Server-Agent.

Informationen zum Erstellen und Konfigurieren einer Verfügbarkeitsgruppe für SQL Server für Linux finden Sie unter: