Konfigurieren eines Load Balancers und Verfügbarkeitsgruppenlisteners (SQL Server auf Azure-VMs)
Gilt für: SQL Server auf Azure-VMs
Tipp
Es gibt viele Methoden zum Bereitstellen einer Verfügbarkeitsgruppe. Vereinfachen Sie Ihre Bereitstellung, indem Sie Ihre SQL Server-VMs in mehreren Subnetzen innerhalb desselben virtuellen Azure-Netzwerks erstellen. So benötigen Sie weder eine Azure Load Balancer-Instanz noch einen verteilten Netzwerknamen (DNN) für Ihre Always On-Verfügbarkeitsgruppe. Wenn Sie Ihre Verfügbarkeitsgruppe bereits in einem einzelnen Subnetz erstellt haben, können Sie sie in eine Umgebung mit mehreren Subnetzen migrieren.
In diesem Artikel wird erklärt, wie man einen Load Balancer für eine SQL Server Always On-Verfügbarkeitsgruppe in Azure Virtual Machines innerhalb eines einzelnen Subnetzes erstellt, die mit Azure Resource Manager ausgeführt werden. Eine Verfügbarkeitsgruppe benötigt einen Load Balancer, wenn sich die SQL Server-Instanzen auf virtuellen Azure-Computern befinden. Der Load-Balancer speichert die IP-Adresse für den Verfügbarkeitsgruppenlistener. Wenn sich eine Verfügbarkeitsgruppe über mehrere Regionen erstreckt, benötigt jede Region einen Load Balancer.
Für diese Aufgabe benötigen Sie eine SQL Server-AlwaysOn-Verfügbarkeitsgruppe, die auf virtuellen Azure-Computern mit Resource Manager bereitgestellt wird. Beide virtuellen SQL Server-Computer müssen der gleichen Verfügbarkeitsgruppe angehören. Mithilfe der Microsoft-Vorlage können Sie die Verfügbarkeitsgruppe in Resource Manager automatisch erstellen. Diese Vorlage nimmt Ihnen die Erstellung eines internen Load Balancers ab.
Alternativ können Sie aber auch eine Verfügbarkeitsgruppe manuell konfigurieren.
Dieser Artikel setzt voraus, dass Ihre Verfügbarkeitsgruppen bereits konfiguriert sind.
Lesen Sie verwandte Artikel:
- Konfigurieren von AlwaysOn-Verfügbarkeitsgruppen auf einem virtuellen Azure-Computer (GUI)
- Konfigurieren einer VNet-zu-VNet-Verbindung mit Azure Resource Manager und PowerShell
Im Rahmen dieses Artikels erstellen und konfigurieren Sie mithilfe des Azure-Portals einen Load Balancer. Nach Abschluss des Verfahrens konfigurieren Sie den Cluster so, dass er die IP-Adresse aus dem Load Balancer für den Verfügbarkeitsgruppenlistener verwendet.
Erstellen und Konfigurieren des Lastenausgleichs
Gehen Sie in diesem Teil der Aufgabe folgendermaßen vor:
- Erstellen Sie im Azure-Portal den Load Balancer, und konfigurieren Sie die IP-Adresse.
- Konfigurieren Sie den Back-End-Pool.
- Erstellen Sie den Test.
- Legen Sie die Lastenausgleichsregeln fest.
Hinweis
Wenn sich die SQL Server-Instanzen in mehreren Ressourcengruppen und Regionen befinden, führen Sie jeden Schritt zweimal durch: einmal in jeder Ressourcengruppe.
Wichtig
Am 30. September 2025 wird die Basic-SKU für Azure Load Balancer eingestellt. Weitere Informationen finden Sie in der offiziellen Ankündigung. Wenn Sie derzeit Load Balancer im Tarif „Basic“ verwenden, führen Sie unbedingt vor dem Ablaufdatum ein Upgrade auf Load Balancer Standard durch. Anleitungen finden Sie unter Upgraden von Load Balancer.
Schritt 1: Erstellen des Load Balancers und Konfigurieren der IP-Adresse
Erstellen Sie zuerst den Load Balancer.
Öffnen Sie im Azure-Portal die Ressourcengruppe mit den virtuellen SQL Server-Computern.
Wählen Sie in der Ressourcengruppe + Erstellen aus.
Suchen Sie nach Load Balancer. Wählen Sie in den Suchergebnissen den (von Microsoft veröffentlichten) Load Balancer aus.
Wählen Sie auf dem Blatt Lastenausgleich die Option Erstellen aus.
Konfigurieren Sie den Load Balancer mit folgenden Parametern:
Einstellung Feld Abonnement Verwenden Sie das gleiche Abonnement wie der virtuelle Computer. Ressourcengruppe Verwenden Sie dieselbe Ressourcengruppe wie für die virtuellen Computer. Name Verwenden Sie einen Textnamen für den Lastenausgleich (beispielsweise sqlLB). Region Verwenden Sie dieselbe Region wie für die virtuellen Computer. SKU Standard Typ Intern Der Bereich im Azure-Portal sollte wie folgt aussehen:
Wählen Sie Weiter: Front-End-IP-Konfiguration aus
Wählen Sie Front-End-IP-Konfiguration hinzufügen aus
Richten Sie die Front-End-IP mit den folgenden Werten ein:
- Name: Ein Name, der die Front-End-IP-Konfiguration bezeichnet
- Virtuelles Netzwerk: Dies ist dasselbe Netzwerk wie für die virtuellen Computer.
- Subnetz: Das Subnetz der virtuellen Computer.
- IP-Adresszuweisung: Statisch.
- IP-Adresse: Verwenden Sie eine verfügbare Adresse aus dem Subnetz. Verwenden Sie diese Adresse für den Verfügbarkeitsgruppenlistener. Beachten Sie, dass sich diese von Ihrer Cluster-IP-Adresse unterscheidet.
- Verfügbarkeitszone: Wählen Sie optional eine Verfügbarkeitszone zum Bereitstellen Ihrer IP-Adresse aus.
Die folgende Abbildung zeigt die Benutzeroberfläche Frontend-IP-Konfiguration hinzufügen:
Wählen Sie Hinzufügen aus, um die Front-End-IP zu erstellen.
Wählen Sie Überprüfen und erstellen aus, um die Konfiguration zu überprüfen, und wählen Sie dann Erstellen aus, um den Lastenausgleich und die Front-End-IP zu erstellen.
Azure erstellt den Load Balancer. Der Load Balancer gehört zu einem bestimmten Netzwerk, Subnetz, einer bestimmten Ressourcengruppe und einem bestimmten Standort. Überprüfen Sie nach Abschluss des Vorgangs die Einstellungen für den Load Balancer in Azure.
Zum Konfigurieren des Lastenausgleichs müssen Sie einen Back-End-Pool und einen Test erstellen und die Lastenausgleichsregeln festlegen. Führen Sie diese Schritte im Azure-Portal aus.
Schritt 2: Konfigurieren des Back-End-Pools
Im Kontext von Azure wird der Back-End-Adresspool als Back-End-Pool bezeichnet. Im vorliegenden Fall enthält der Back-End-Pool die Adressen der beiden SQL Server-Instanzen in Ihrer Verfügbarkeitsgruppe.
Navigieren Sie im Azure-Portal zu Ihrer Verfügbarkeitsgruppe. Unter Umständen müssen Sie die Ansicht aktualisieren, damit der neu erstellte Lastenausgleich angezeigt wird.
Wählen Sie den Lastenausgleich aus, und wählen Sie Back-End-Pools und dann Hinzufügen aus.
Geben Sie einen Namen für den Back-End-Pool an.
Wählen Sie für die Backend-Pool-Konfiguration die Option NIC aus.
Wählen Sie Hinzufügen aus, um den Back-End-Pool der Verfügbarkeitsgruppe mit den virtuellen Computern zuzuordnen.
Wählen Sie unter Virtueller Computer die SQL Server-VMs aus, die Replikate von Verfügbarkeitsgruppen hosten sollen.
Hinweis
Ohne Angabe der beiden virtuellen Computer können nur Verbindungen mit dem primären Replikat hergestellt werden.
Wählen Sie Hinzufügen aus, um dem Back-End-Pool die virtuellen Computer hinzuzufügen.
Wählen Sie Speichern aus, um den Back-End-Pool zu erstellen.
Azure aktualisiert die Einstellungen für den Back-End-Adresspool. Die Verfügbarkeitsgruppe verfügt nun über einen Pool mit zwei SQL Server-Instanzen.
Schritt 3: Erstellen eines Tests
Mit dem Test wird definiert, wie Azure überprüft, welche SQL Server-Instanz gerade für den Verfügbarkeitsgruppenlistener zuständig ist. Azure testet den Dienst auf der Grundlage der IP-Adresse an einem Port, den Sie beim Erstellen des Tests definieren.
Wählen Sie den Lastenausgleich aus, und wählen Sie dann Integritätstests und + Hinzufügen aus.
Legen Sie den Integritätstest für den Listener wie folgt fest:
Einstellung BESCHREIBUNG Beispiel Name Text SQLAlwaysOnEndPointProbe Protokoll Wählen Sie „TCP“ aus. TCP Port Ein beliebiger nicht verwendeter Port. 59999 Intervall Der Zeitraum zwischen Testversuchen in Sekunden. 5 Klicken Sie auf Hinzufügen, um den Integritätstest festzulegen.
Hinweis
Vergewissern Sie sich, dass der angegebene Port in der Firewall beider SQL Server-Instanzen geöffnet ist. Beide Instanzen benötigen eine eingehende Regel für den verwendeten TCP-Port. Weitere Informationen finden Sie unter Hinzufügen oder Bearbeiten einer Firewallregel.
Azure erstellt den Test und ermittelt dann mit seiner Hilfe, welche SQL Server-Instanz über den Listener für die Verfügbarkeitsgruppe verfügt.
Schritt 4: Festlegen der Lastenausgleichsregeln
Mit den Lastenausgleichsregeln wird konfiguriert, wie der Load Balancer Datenverkehr an die SQL Server-Instanzen weiterleitet. Für diesen Load Balancer aktivieren Sie Direct Server Return, da immer nur eine der beiden SQL Server-Instanzen für die Verfügbarkeitsgruppenlistener-Ressource zuständig ist.
Wählen Sie den Lastenausgleich aus, und wählen Sie dann Lastenausgleichsregeln und + Hinzufügen aus.
Konfigurieren Sie die Lastenausgleichsregeln für den Listener wie folgt:
Einstellung BESCHREIBUNG Beispiel Name Text SQLAlwaysOnEndPointListener Frontend IP address (Front-End-IP-Adresse) Wählen Sie eine Adresse aus. Verwenden Sie die Adresse, die Sie beim Erstellen des Lastenausgleichs erstellt haben. Back-End-Pool Back-End-Pool auswählen Wählen Sie den Back-End-Pool aus, der die virtuellen Computer enthält, die für den Lastenausgleich vorgesehen sind. Protokoll Wählen Sie „TCP“ aus. TCP Port Verwenden des Ports für den Verfügbarkeitsgruppenlistener 1433 Back-End-Port Dieses Feld wird nicht verwendet, wenn für Direct Server Return die Option „Floating IP“ festgelegt ist. 1433 Integritätstest Der Name, den Sie für den Test angegeben haben. SQLAlwaysOnEndPointProbe Session Persistence (Sitzungspersistenz) Dropdownliste None Leerlauftimeout Gibt an, wie viele Minuten eine TCP-Verbindung geöffnet bleiben soll. 4 Floating IP (Direct Server Return) Eine Flowtopologie und ein IP-Adresszuordnungsschema Aktiviert Warnung
Direct Server Return wird bei der Erstellung festgelegt. Diese Einstellung kann nicht geändert werden.
Hinweis
Möglicherweise müssen Sie im Bereich nach unten scrollen, um alle Einstellungen anzuzeigen.
Klicken Sie auf Speichern, um die Lastenausgleichsregeln für den Listener festzulegen.
Azure konfiguriert die Lastenausgleichsregel. Damit ist der Load Balancer dafür konfiguriert, Datenverkehr an die SQL Server-Instanz weiterzuleiten, die den Listener für die Verfügbarkeitsgruppe hostet.
Die Ressourcengruppe verfügt nun also über einen mit beiden SQL Server-Computern verbundenen Load Balancer. Außerdem verfügt der Load Balancer über eine IP-Adresse für den SQL Server-AlwaysOn-Verfügbarkeitsgruppenlistener, sodass beide Computer auf Anforderungen an die Verfügbarkeitsgruppen reagieren können.
Hinweis
Falls sich Ihre SQL Server-Instanzen in unterschiedlichen Regionen befinden, wiederholen Sie die Schritte in der anderen Region. Jede Region benötigt einen Load Balancer.
Fügen Sie die IP-Adresse der Hauptressourcen des Clusters für den Windows Server-Failovercluster (WSFC) hinzu.
Die WSFC IP-Adresse muss auf dem Lastenausgleich ebenfalls vorhanden sein. Überspringen Sie unter Windows Server 2019 diesen Prozess, da für den Cluster ein Name des verteilten Servers anstelle des Clusternetzwerknamens erstellt wird.
Navigieren Sie im Azure-Portal zum gleichen Azure Load Balancer. Wählen Sie Front-End-IP-Konfiguration und dann + Hinzufügen aus. Verwenden Sie die IP-Adresse, die Sie für den WSFC in den Hauptressourcen des Clusters konfiguriert haben. Legen Sie die IP-Adresse als statisch fest.
Wählen Sie für den Lastenausgleich Integritätstests und dann + Hinzufügen aus.
Legen Sie den Integritätstest für die IP-Adresse der Hauptressourcen des WSFC-Clusters wie folgt fest:
Einstellung BESCHREIBUNG Beispiel Name Text WSFCEndPointProbe Protokoll Wählen Sie „TCP“ aus. TCP Port Ein beliebiger nicht verwendeter Port. 58888 Intervall Der Zeitraum zwischen Testversuchen in Sekunden. 5 Klicken Sie auf Hinzufügen, um den Integritätstest festzulegen.
Legen Sie die Lastenausgleichsregeln fest. Wählen Sie Lastenausgleichsregeln und dann + Hinzufügen aus.
Konfigurieren Sie die Lastenausgleichsregeln für die IP-Adresse der Hauptressourcen des Clusters wie folgt:
Einstellung BESCHREIBUNG Beispiel Name Text WSFCEndPoint Frontend IP address (Front-End-IP-Adresse) Wählen Sie eine Adresse aus. Verwenden Sie die Adresse, die Sie beim Konfigurieren der WSFC-IP-Adresse erstellt haben. Diese unterscheidet sich von der IP-Adresse des Listeners. Back-End-Pool Back-End-Pool auswählen Wählen Sie den Back-End-Pool aus, der die virtuellen Computer enthält, die für den Lastenausgleich vorgesehen sind. Protokoll Wählen Sie „TCP“ aus. TCP Port Verwenden Sie den Port für die Cluster-IP-Adresse. Dies ist ein verfügbarer Port, der nicht als Listenertestport verwendet wird. 58888 Back-End-Port Dieses Feld wird nicht verwendet, wenn für Direct Server Return die Option „Floating IP“ festgelegt ist. 58888 Test Der Name, den Sie für den Test angegeben haben. WSFCEndPointProbe Session Persistence (Sitzungspersistenz) Dropdownliste None Leerlauftimeout Gibt an, wie viele Minuten eine TCP-Verbindung geöffnet bleiben soll. 4 Floating IP (Direct Server Return) Eine Flowtopologie und ein IP-Adresszuordnungsschema Aktiviert Warnung
Direct Server Return wird bei der Erstellung festgelegt. Diese Einstellung kann nicht geändert werden.
Klicken Sie auf OK, um die Lastenausgleichsregeln festzulegen.
Konfigurieren des Clusters, von dem die IP-Adresse des Load Balancers verwendet werden soll
Als Nächstes wird der Listener für den Cluster konfiguriert und online geschaltet. Führen Sie die folgenden Schritte aus:
Erstellen Sie den Verfügbarkeitsgruppenlistener für den Failovercluster.
Schalten Sie den Listener online.
Schritt 5: Erstellen des Verfügbarkeitsgruppenlisteners für den Failovercluster
In diesem Schritt erstellen Sie manuell den Verfügbarkeitsgruppenlistener im Failovercluster-Manager und in SQL Server Management Studio.
Der Verfügbarkeitsgruppenlistener umfasst eine IP-Adresse und einen Netzwerknamen, über die die SQL Server-Verfügbarkeitsgruppe lauscht. So erstellen Sie einen Verfügbarkeitsgruppenlistener:
Abrufen des Namens der Clusternetzwerkressource:
a. Stellen Sie eine RDP-Verbindung mit dem virtuellen Azure-Computer her, der das primäre Replikat hostet.
b. Öffnen Sie den Failovercluster-Manager.
c. Wählen Sie den Knoten Netzwerke aus, und notieren Sie den Netzwerknamen des Clusters. Verwenden Sie diesen Namen im PowerShell-Skript in der Variablen
$ClusterNetworkName
. In der folgenden Abbildung lautet der Name des Clusternetzwerks Cluster Network 1:Fügen Sie den Clientzugriffspunkt hinzu. Der Clientzugriffspunkt ist der Netzwerkname, der von den Anwendungen zum Herstellen der Verbindung mit den Datenbanken einer Verfügbarkeitsgruppe verwendet wird.
a. Erweitern Sie im Failovercluster-Manager den Clusternamen, und wählen Sie dann Rollen aus.
b. Klicken Sie im Bereich Rollen mit der rechten Maustaste auf den Verfügbarkeitsgruppennamen, und wählen Sie dann Ressource hinzufügen>Clientzugriffspunkt aus.
c. Erstellen Sie im Feld Name einen Namen für diesen neuen Listener. Der Name für den neuen Listener ist der Netzwerkname, den Anwendungen beim Herstellen einer Verbindung mit Datenbanken in der SQL Server-Verfügbarkeitsgruppe verwenden.
d. Klicken Sie zum Abschließen der Listenererstellung zweimal auf Weiter und dann auf Fertig stellen. Schalten Sie den Listener oder die Ressource jetzt noch nicht online.
Schalten Sie die Clusterrolle der Verfügbarkeitsgruppe offline. Klicken Sie im Failovercluster-Manager unter Rollen mit der rechten Maustaste auf die Rolle, und klicken Sie dann auf Rolle beenden.
Konfigurieren der IP-Ressource für die Verfügbarkeitsgruppe:
a. Klicken Sie auf die Registerkarte Ressourcen, und erweitern Sie dann den erstellten Clientzugriffspunkt. Der Clientzugriffspunkt ist offline.
b. Klicken Sie mit der rechten Maustaste auf die IP-Ressource, und klicken Sie dann auf Eigenschaften. Notieren Sie den Namen der IP-Adresse, und verwenden Sie ihn in der Variablen
$IPResourceName
im PowerShell-Skript.c. Klicken Sie unter IP-Adresse auf Statische IP-Adresse. Legen Sie die IP-Adresse auf die gleiche Adresse fest, die Sie beim Festlegen der Adresse für den Lastenausgleich im Azure-Portal verwendet haben.
Einrichten der Abhängigkeit der SQL Server-Verfügbarkeitsgruppenressource vom Clientzugriffspunkt:
a. Klicken Sie im Failovercluster-Manager auf Rollen und dann auf Ihre Verfügbarkeitsgruppe.
b. Klicken Sie auf der Registerkarte Ressourcen unter Sonstige Ressourcen mit der rechten Maustaste auf die Verfügbarkeitsressource, und klicken Sie dann auf Eigenschaften.
c. Fügen Sie auf der Registerkarte Abhängigkeiten den Namen des Clientzugriffspunkts (Listener) hinzu.
d. Klicken Sie auf OK.
Abhängigmachen der Ressource des Clientzugangspunkts von der IP-Adresse:
a. Klicken Sie im Failovercluster-Manager auf Rollen und dann auf Ihre Verfügbarkeitsgruppe.
b. Klicken Sie auf der Registerkarte Ressourcen unter Servername mit der rechten Maustaste auf den Clientzugriffspunkt, und wählen Sie dann Eigenschaften aus.
c. Klicken Sie auf die Registerkarte Abhängigkeiten. Überprüfen Sie, ob es sich bei der IP-Adresse um eine Abhängigkeit handelt. Wenn dies nicht der Fall ist, legen Sie eine Abhängigkeit für die IP-Adresse fest. Wenn mehrere Ressourcen aufgeführt sind, überprüfen Sie, ob die IP-Adressen OR-Abhängigkeiten und keine AND-Abhängigkeiten aufweisen. Klicken Sie anschließend auf OK.
Tipp
Sie können überprüfen, ob die Abhängigkeiten ordnungsgemäß konfiguriert sind. Wechseln Sie im Failovercluster-Manager zu Rollen, klicken Sie mit der rechten Maustaste auf die Verfügbarkeitsgruppe, wählen Sie Weitere Aktionen aus, und klicken Sie dann auf Abhängigkeitsbericht anzeigen. Wenn die Abhängigkeiten ordnungsgemäß konfiguriert sind, ist die Verfügbarkeitsgruppe vom Netzwerknamen und der Netzwerkname von der IP-Adresse abhängig.
Festlegen der Clusterparameter in PowerShell:
a. Kopieren Sie das folgende PowerShell-Skript in eine Ihrer SQL Server-Instanzen. Aktualisieren Sie die Variablen für Ihre Umgebung.
$ClusterNetworkName
: Suchen Sie nach dem Namen im Failovercluster-Manger, indem Sie Netzwerke auswählen, mit der rechten Maustaste auf das Netzwerk klicken und dann Eigenschaften auswählen. Der $ClusterNetworkName befindet sich auf der Registerkarte Allgemein unter Name.$IPResourceName
ist der Name der IP-Adressressource im Failovercluster-Manager. Dieses finden Sie im Failovercluster-Manager, indem Sie Rollen auswählen, den SQL Server AG- oder FCI-Namen auswählen, unter Servername die Registerkarte Ressourcen auswählen, mit der rechten Maustaste auf die IP-Adressressource klicken und Eigenschaften auswählen. Der richtige Wert befindet sich auf der Registerkarte Allgemein unter Name.$ListenerILBIP
ist die IP-Adresse, die Sie im Azure Load Balancer für den Verfügbarkeitsgruppenlistener angelegt haben. Suchen Sie den $ListenerILBIP im Failovercluster-Manager auf derselben Eigenschaftenseite wie den SQL Server AG/FCI Listener-Ressourcenname.$ListenerProbePort
ist der Port, den Sie in Azure Load Balancer für den Verfügbarkeitsgruppenlistener konfiguriert haben, z. B. 59999. Alle nicht verwendeten TCP-Ports sind zulässig.
$ClusterNetworkName = "<MyClusterNetworkName>" # The cluster network name. Use Get-ClusterNetwork on Windows Server 2012 or later to find the name. $IPResourceName = "<IPResourceName>" # The IP address resource name. $ListenerILBIP = "<n.n.n.n>" # The IP address of the internal load balancer. This is the static IP address for the load balancer that you configured in the Azure portal. [int]$ListenerProbePort = <nnnnn> Import-Module FailoverClusters Get-ClusterResource $IPResourceName | Set-ClusterParameter -Multiple @{"Address"="$ListenerILBIP";"ProbePort"=$ListenerProbePort;"SubnetMask"="255.255.255.255";"Network"="$ClusterNetworkName";"EnableDhcp"=0}
b. Legen Sie die Clusterparameter fest, indem Sie das PowerShell-Skript auf einem der Clusterknoten ausführen.
Hinweis
Falls sich Ihre SQL Server-Instanzen in unterschiedlichen Regionen befinden, muss das PowerShell-Skript zweimal ausgeführt werden. Verwenden Sie beim ersten Mal die Werte
$ListenerILBIP
und$ListenerProbePort
der ersten Region. Verwenden Sie beim zweiten Mal die Werte$ListenerILBIP
und$ListenerProbePort
der zweiten Region. Der Name des Clusternetzwerks und der Cluster-IP-Ressourcenname sind auch in jeder Region unterschiedlich.Schalten Sie die Clusterrolle für die Verfügbarkeitsgruppe online. Klicken Sie im Failovercluster-Manager unter Rollen mit der rechten Maustaste auf die Rolle, und klicken Sie dann auf Rolle starten.
Wiederholen Sie bei Bedarf die vorherigen Schritte, um die Clusterparameter für die IP-Adresse des Windows Server-Failoverclusters festzulegen:
Rufen Sie den IP-Adressnamen des Windows Server-Failoverclusters ab. Suchen Sie den Servernamen im Failovercluster-Manager unter Hauptressourcen des Clusters.
Klicken Sie erst mit der rechten Maustaste auf IP-Adresse, und wählen Sie dann Eigenschaften aus.
Kopieren Sie aus Name den Namen der IP-Adresse. Es kann sich um die Cluster-IP-Adresse handeln.
Festlegen der Clusterparameter in PowerShell:
a. Kopieren Sie das folgende PowerShell-Skript in eine Ihrer SQL Server-Instanzen. Aktualisieren Sie die Variablen für Ihre Umgebung.
$ClusterCoreIP
ist die IP-Adresse, die Sie in Azure Load Balancer für die Hauptclusterressource des Windows Server-Failoverclusters erstellt haben. Sie unterscheidet sich von der IP-Adresse des Verfügbarkeitsgruppenlisteners.$ClusterProbePort
ist der Port, den Sie in Azure Load Balancer für den Integritätstest des Windows Server-Failoverclusters konfiguriert haben. Er unterscheidet sich vom Test für den Verfügbarkeitsgruppenlistener.
$ClusterNetworkName = "<MyClusterNetworkName>" # The cluster network name. Use Get-ClusterNetwork on Windows Server 2012 or later to find the name. $IPResourceName = "<ClusterIPResourceName>" # The IP address resource name. $ClusterCoreIP = "<n.n.n.n>" # The IP address of the cluster IP resource. This is the static IP address for the load balancer that you configured in the Azure portal. [int]$ClusterProbePort = <nnnnn> # The probe port from WSFCEndPointprobe in the Azure portal. This port must be different from the probe port for the availability group listener. Import-Module FailoverClusters Get-ClusterResource $IPResourceName | Set-ClusterParameter -Multiple @{"Address"="$ClusterCoreIP";"ProbePort"=$ClusterProbePort;"SubnetMask"="255.255.255.255";"Network"="$ClusterNetworkName";"EnableDhcp"=0}
b. Legen Sie die Clusterparameter fest, indem Sie das PowerShell-Skript auf einem der Clusterknoten ausführen.
Wenn eine SQL-Ressource für das Verwenden eines Ports zwischen 49152 und 65536 konfiguriert ist, wobei es sich um den dynamischen Standardportbereich für TCP/IP handelt, fügen Sie für jeden Port einen Ausschluss hinzu. Solche Ressourcen können Folgendes umfassen:
- SQL Server-Datenbank-Engine
- Always On-Verfügbarkeitsgruppenlistener
- Integritätstest für die Failoverclusterinstanz
- Endpunkt für die Datenbankspiegelung
- Clusterkern-IP-Ressource
Durch Hinzufügen eines Ausschlusses wird verhindert, dass andere Systemprozesse dynamisch demselben Port zugewiesen werden. Konfigurieren Sie für dieses Szenario die folgenden Ausschlüsse auf allen Clusterknoten:
netsh int ipv4 add excludedportrange tcp startport=58888 numberofports=1 store=persistent
netsh int ipv4 add excludedportrange tcp startport=59999 numberofports=1 store=persistent
Wenn der Port nicht verwendet wird, muss der Portausschluss unbedingt konfiguriert werden. Andernfalls tritt bei der Ausführung des Befehls ein Fehler auf, und eine Meldung wie „Der Prozess kann nicht auf die Datei zugreifen, weil sie von einem anderen Prozess verwendet wird“ wird angezeigt. Um zu überprüfen, ob die Ausschlüsse korrekt konfiguriert sind, verwenden Sie den folgenden Befehl: netsh int ipv4 show excludedportrange tcp
.
Warnung
Der Port für den Integritätstest des Verfügbarkeitsgruppenlisteners muss sich vom Port für den Integritätstest der IP-Adresse der Hauptressource des Clusters unterscheiden. In diesen Beispielen ist der Listenerport 59999, und der Port für den Integritätstest der IP-Adresse der Hauptressource des Clusters lautet 58888. Für beide Ports ist eine „Eingehende zulassen“-Firewallregel erforderlich.
Überprüfen der Konfiguration des Listeners
Wenn die Clusterressourcen und Abhängigkeiten ordnungsgemäß konfiguriert sind, sollten Sie den Listener in SQL Server Management Studio-Umgebungen anzeigen können. Führen Sie die folgenden Schritte aus, um den Listenerport festzulegen:
Starten Sie SQL Server Management Studio, und stellen Sie dann eine Verbindung mit dem primären Replikat her.
Navigieren Sie zu Hochverfügbarkeit mit Always On>Verfügbarkeitsgruppen>Verfügbarkeitsgruppenlistener.
Jetzt sollte der Listenername angezeigt werden, den Sie im Failovercluster-Manager erstellt haben.
Klicken Sie mit der rechten Maustaste auf den Listenernamen, und wählen Sie Eigenschaften aus.
Geben Sie im Feld Port die Portnummer für den Verfügbarkeitsgruppenlistener an. Verwenden Sie dabei den zuvor verwendeten Wert für $EndpointPort (Standardwert: 1433). Wählen Sie anschließend OK.
Sie verfügen nun über eine Verfügbarkeitsgruppe auf virtuellen Azure-Computern im Resource Manager-Modus.
Testen der Verbindung mit dem Listener
Testen Sie die Verbindung folgendermaßen:
Stellen Sie eine RDP-Verbindung (Remote Desktop Protocol) mit einer SQL Server-Instanz her, die sich im selben virtuellen Netzwerk befindet, aber das Replikat nicht besitzt. Hierbei kann es sich um die andere SQL Server-Instanz im Cluster handeln.
Testen Sie die Verbindung mithilfe des sqlcmd -Hilfsprogramms. Das folgende Skript stellt beispielsweise über den Listener eine sqlcmd -Verbindung mit Windows-Authentifizierung mit dem primären Replikat her:
sqlcmd -S <listenerName> -E
Die sqlcmd-Verbindung wird automatisch mit der SQL Server-Instanz hergestellt, die das primäre Replikat hostet.
Erstellen einer IP-Adresse für eine zusätzliche Verfügbarkeitsgruppe
Jede Verfügbarkeitsgruppe verwendet einen separaten Listener. Jeder Listener ist mit einer eigenen IP-Adresse ausgestattet. Verwenden Sie das gleiche Lastenausgleichsmodul, um die IP-Adresse für zusätzliche Listener zu speichern. Fügen Sie dem Back-End-Pool des Lastenausgleichs nur die primäre IP-Adresse des virtuellen Computers hinzu, da die IP-Adresse des sekundären virtuellen Computers keine Floating-IP-Adresse unterstützt.
Um mit dem Azure-Portal eine IP-Adresse einem Lastenausgleichsmodul hinzufügen, gehen Sie folgendermaßen vor:
Öffnen Sie im Azure-Portal die Ressourcengruppe, die den Load Balancer enthält, und wählen Sie den Load Balancer aus.
Klicken Sie unter Einstellungen auf Front-End-IP-Konfiguration, und wählen Sie dann + Hinzufügen aus.
Vergeben Sie unter Front-End-IP-Adresse hinzufügen einen Namen für das Front-End.
Stellen Sie sicher, dass das Virtuelle Netzwerk und das Subnetz mit denen der SQL Server-Instanzen identisch sind.
Legen Sie die IP-Adresse für den Listener fest.
Tipp
Sie können die IP-Adresse auf statisch festlegen und eine Adresse eingeben, die derzeit nicht im Subnetz verwendet wird. Alternativ können Sie die IP-Adresse als dynamisch festlegen und den neuen Front-End-IP-Pool speichern. Hierdurch weist das Azure-Portal dem Pool automatisch eine verfügbare IP-Adresse zu. Sie können dann den Front-End-IP-Pool erneut öffnen und die Zuweisung in statisch ändern.
Speichern Sie die IP-Adresse für den Listener, indem Sie Hinzufügen auswählen.
Fügen Sie einen Integritätstest hinzu, indem Sie unter Einstellungen die Option Integritätstests auswählen, und verwenden Sie die folgenden Einstellungen:
Einstellung Wert Name Ein Name zur Identifizierung des Tests. Protokoll TCP Port Ein nicht verwendeter TCP-Port, der auf allen virtuellen Computern verfügbar sein muss. Er kann nicht für andere Zwecke verwendet werden. Nur jeweils ein Listener kann einen Testport verwenden. Intervall Der Zeitraum zwischen Testversuchen. Verwenden Sie den Standardwert (5). Wählen Sie Hinzufügen aus, um den Test zu speichern.
Erstellen Sie eine Lastenausgleichsregel. Wählen Sie unter Einstellungen die Option Lastenausgleichsregeln und dann + Hinzufügen aus.
Konfigurieren Sie die neue Lastenausgleichsregel mit den folgenden Einstellungen:
Einstellung Wert Name Ein Name zur Identifizierung der Lastenausgleichsregel. Frontend IP address (Front-End-IP-Adresse) Wählen Sie die erstellte IP-Adresse aus. Back-End-Pool Der Pool, der die virtuellen Computer mit den SQL Server-Instanzen enthält. Protokoll TCP Port Verwenden Sie den Port, den die SQL Server-Instanzen verwenden. Eine Standardinstanz verwendet Port 1433, wenn Sie dies dahingehend geändert haben. Back-End-Port Verwenden Sie denselben Wert wie Port. Integritätstest Wählen Sie den Test aus, den Sie erstellt haben. Sitzungspersistenz Keine Leerlaufzeitüberschreitung (Minuten) Standard (4) Floating IP (Direct Server Return) Aktiviert
Konfigurieren der Verfügbarkeitsgruppe zur Verwendung der neuen IP-Adresse
Um die Konfiguration des Clusters abzuschließen, wiederholen Sie die Schritte, die Sie bei der ersten Verfügbarkeitsgruppe ausgeführt haben. Konfigurieren Sie daher den Cluster für die Verwendung der neuen IP-Adresse.
Nachdem Sie eine IP-Adresse für den Listener hinzugefügt haben, konfigurieren Sie die zusätzliche Verfügbarkeitsgruppe folgendermaßen:
Vergewissern Sie sich, dass der Testport für die neue IP-Adresse auf beiden virtuellen SQL Server-Computern geöffnet ist.
Konfigurieren Sie die IP-Ressource für die Verfügbarkeitsgruppe.
Wichtig
Verwenden Sie bei der Erstellung der IP-Adresse die IP-Adresse, die Sie dem Lastenausgleichsmodul hinzugefügt haben.
Legen Sie fest, dass die Clientzugriffspunkt-Ressource von der IP-Adresse abhängig ist.
Wenn Sie sich auf der sekundären Replikat-VM befinden und keine Verbindung mit dem Listener herstellen können, wurde der Testport möglicherweise nicht ordnungsgemäß konfiguriert.
Sie können das folgende Skript verwenden, um zu überprüfen, ob der Testport für die Verfügbarkeitsgruppe ordnungsgemäß konfiguriert ist:
Clear-Host
Get-ClusterResource `
| Where-Object {$_.ResourceType.Name -like "IP Address"} `
| Get-ClusterParameter `
| Where-Object {($_.Name -like "Network") -or ($_.Name -like "Address") -or ($_.Name -like "ProbePort") -or ($_.Name -like "SubnetMask")}
Hinzufügen einer Lastenausgleichsregel für eine verteilte Verfügbarkeitsgruppe
Wenn eine Verfügbarkeitsgruppe an einer verteilten Verfügbarkeitsgruppe beteiligt ist, benötigt der Lastenausgleich eine zusätzliche Regel. In dieser Regel wird der vom Listener der verteilten Verfügbarkeitsgruppe verwendete Port gespeichert.
Wichtig
Dieser Schritt ist nur erforderlich, wenn die Verfügbarkeitsgruppe an einer verteilten Verfügbarkeitsgruppe beteiligt ist.
Erstellen Sie auf jedem Server, der an der verteilten Verfügbarkeitsgruppe beteiligt ist, eine eingehende Regel für den Listener-TCP-Port der verteilten Verfügbarkeitsgruppe. In vielen Beispielen in der Dokumentation wird 5022 verwendet.
Öffnen Sie im Azure-Portal den Azure Load Balancer, wählen Sie Lastenausgleichsregeln aus, und wählen Sie dann +Hinzufügen aus.
Erstellen Sie die Lastenausgleichsregel mit den folgenden Einstellungen:
Einstellung Wert Name Name zum Identifizieren der Lastenausgleichsregel für die verteilte Verfügbarkeitsgruppe Frontend IP address (Front-End-IP-Adresse) Verwenden Sie dieselbe Front-End-IP-Adresse wie die Verfügbarkeitsgruppe. Back-End-Pool Der Pool, der die virtuellen Computer mit den SQL Server-Instanzen enthält. Protokoll TCP Port 5022 – der Port für den Endpunktlistener der verteilten Verfügbarkeitsgruppe.
Es kann sich um einen beliebigen verfügbaren Port handeln.Back-End-Port 5022 – verwenden Sie denselben Wert wie bei Port. Integritätstest Wählen Sie den Test aus, den Sie erstellt haben. Sitzungspersistenz Keine Leerlaufzeitüberschreitung (Minuten) Standard (4) Floating IP (Direct Server Return) Aktiviert
Wiederholen Sie diese Schritte für den Lastenausgleich in den anderen Verfügbarkeitsgruppen, die Teil der verteilten Verfügbarkeitsgruppe sind.
Wenn Sie über eine Azure-Netzwerksicherheitsgruppe verfügen, um den Zugriff einzuschränken, stellen Sie sicher, dass die Zulassungsregeln Folgendes umfassen:
- Die VM-IP-Adressen des Back-End-SQL Servers
- Die Floating IP-Adressen des Lastenausgleichs für den Verfügbarkeitsgruppenlistener
- Die IP-Adresse der Hauptressource des Clusters, falls zutreffend.