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

Gilt für:SQL Server – Linux

In diesem Tutorial werden die Aufgaben dokumentiert, die zum Bereitstellen eines Linux Pacemaker-Clusters für eine SQL Server Always On-Verfügbarkeitsgruppe oder eine Failoverclusterinstanz (FCI) durchgeführt werden müssen. Im Gegensatz zum eng gekoppelten Windows Server-/SQL Server-Stapel, kann die Erstellung des Pacemaker-Clusters und die Konfiguration der Verfügbarkeitsgruppe unter Linux sowohl vor als auch nach der Installation von SQL Server durchgeführt werden. Die Integration und Konfiguration von Ressourcen für den Pacemaker-Teil der Bereitstellung einer Verfügbarkeitsgruppe oder Failoverclusterinstanz wird abgeschlossen, nachdem der Cluster konfiguriert wurde.

Wichtig

Eine Verfügbarkeitsgruppe mit dem Clustertyp „None“ (Keiner) erfordert keinen Pacemaker-Cluster und kann auch nicht von Pacemaker verwaltet werden.

  • Installieren von Pacemaker und des Hochverfügbarkeits-Add-Ons
  • Vorbereiten der Knoten für Pacemaker (nur RHEL und Ubuntu)
  • Erstellen eines Pacemaker-Clusters
  • Installieren der SQL Server-Hochverfügbarkeits- und -Agent-Pakete

Voraussetzung

Installieren von SQL Server 2017

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
    
  3. Führen Sie den folgenden Befehl aus, um die Hochverfügbarkeit von RHEL zum Abonnement zuzuordnen:

    sudo subscription-manager attach --pool=<PoolID>
    

    Fügen Sie hierbei für PoolId die Pool-ID für das Hochverfügbarkeitsabonnement aus dem vorherigen Schritt ein.

  4. Aktivieren Sie die Verwendung des Hochverfügbarkeits-Add-Ons für das Repository.

    sudo subscription-manager repos --enable=rhel-ha-for-rhel-7-server-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 eine von einem Benutzer erstellte Verteilung namens hacluster. Der Benutzer wird erstellt, wenn das Hochverfügbarkeits-Add-On unter RHEL und Ubuntu installiert wird.

  1. Erstellen Sie auf jedem Server, der als Knoten des Pacemaker-Clusters fungieren soll, die Kennwörter für die Benutzer, die vom Cluster verwendet werden sollen. In den Beispielen dieses Artikels wird der Name hacluster verwendet, jedoch kann ein beliebiger Name verwendet werden. Der Name und das Kennwort muss auf allen Knoten, die am Pacemaker-Cluster teilnehmen, identisch sein.

    sudo passwd hacluster
    
  2. Aktivieren und starten Sie den pcsd-Dienst mithilfe der folgenden Befehle (RHEL und Ubuntu) auf allen Knoten, die Teil des Pacemaker-Clusters sind:

    sudo systemctl enable pcsd
    sudo systemctl start pcsd
    

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

    sudo systemctl status pcsd
    
  3. Aktivieren Sie den Pacemaker-Dienst auf allen möglichen Knoten des Pacemaker-Clusters.

    sudo systemctl start pacemaker
    

    Die folgende Fehlermeldung wird Ihnen unter Ubuntu angezeigt:

    pacemaker Default-Start contains no runlevels, aborting.
    

    Bei diesem Fehler handelt es sich um ein bekanntes Problem. Die Aktivierung des Pacemaker-Diensts ist trotz der Fehlermeldung erfolgreich. Dieser Fehler wird zu einem späteren Zeitpunkt behoben.

  4. Als Nächstes erstellen und starten Sie den Pacemaker-Cluster. Bei diesem Schritt gibt es einen Unterschied zwischen RHEL und Ubuntu. Bei der Installation von pcs wird zwar auf beiden Verteilungen eine Standardkonfigurationsdatei für den Pacemaker-Cluster konfiguriert, jedoch wird die vorhandene Konfiguration bei der Ausführung dieses Befehls unter RHEL gelöscht und ein neuer Cluster erstellt.

Erstellen eines Pacemaker-Clusters

In diesem Abschnitt wird erläutert, wie der Cluster für jede Linux-Verteilung erstellt und konfiguriert wird.

  1. Autorisieren Sie die Knoten.

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

    Fügen Sie für NodeX den Namen des Knotens ein.

  2. Erstellen Sie den Cluster.

    sudo pcs cluster setup --name <PMClusterName Nodelist> --start --all --enable
    

    PMClusterName entspricht dem Namen des Pacemaker-Clusters, und Nodelist entspricht der Liste der Namen der Knoten, die durch ein Leerzeichen voneinander getrennt sind.

Installieren der SQL Server-Hochverfügbarkeits- und -Agent-Pakete

Verwenden Sie die folgenden Befehle, um das SQL Server-Hochverfügbarkeits- und das SQL Server-Agent-Paket zu installieren, wenn diese noch nicht installiert sind. Wenn Sie das Hochverfügbarkeitspaket nach SQL Server installieren, ist ein Neustart von SQL Server erforderlich. In diesen Anweisungen wird vorausgesetzt, dass die Repositorys für die Microsoft-Pakete bereits eingerichtet wurden, da SQL Server bereits installiert sein sollte.

  • Wenn Sie den SQL Server-Agent nicht für den Protokollversand oder einen anderen Zweck verwenden, müssen Sie ihn nicht installieren. Das Paket mssql-server-agent kann also übersprungen werden.
  • Die anderen optionalen Pakete für SQL Server für Linux, für die SQL Server-Volltextsuche (mssql-server-fts) und für die SQL Server-Integration Services (mssql-server-is) sind nicht für Hochverfügbarkeit erforderlich, und zwar weder für Failoverclusterinstanzen noch für Verfügbarkeitsgruppen.
sudo yum install mssql-server-ha mssql-server-agent
sudo systemctl restart mssql-server

Nächste Schritte

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

  • Installieren von Pacemaker und des Hochverfügbarkeits-Add-Ons
  • Vorbereiten der Knoten für Pacemaker (nur RHEL und Ubuntu)
  • Erstellen eines Pacemaker-Clusters
  • Installieren der SQL Server-Hochverfügbarkeits- und -Agent-Pakete

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