info@madafa.de

WSFC-Fehlerbehebung für AlwaysOn

Einleitung

Wenn Sie als SQL Server DBA arbeiten, werden Sie höchstwahrscheinlich immer mal wieder als verantwortlicher Systemadministrator Aufgaben übernehmen oder mindestens erklären müssen, wie mit Fehlerbehebungen umgegangen werden muss, damit Ihre SQL Umgebung besser läuft. WSCF (Windows Server-Failoverclustering) ist ein Setup für AlwaysOn (AO) Availability Group (AG), ohne freigegebene Datenträgerressourcen. Probleme mit WSCF können beispielsweise sein, dass AG nicht richtig funktioniert oder die Problemursache nur schwer herauszufinden ist.

WSFC muss fehlerfrei sein, damit AO von Ihnen oder einem Systemadministrator (SA) eingerichtet werden kann, da die meisten WSFC-Fehler auftreten, wenn AlwaysOn eingerichtet wird. Fehler können Sie in der Ereignisanzeige oder im Failovercluster-Manager sehen.

Fügen Sie ausschließlich Knoten innerhalb des Failover Cluster Managers hinzu, die Teil der AlwaysOn AG-Failover sind. Wenn Sie andere Server hinzufügen, die nicht zur AG gehören, könnten Probleme bei diesen Knotenpunkten auftreten. Wenn weitere Server Teil des WSFC sind, sollten sie die gleiche AG haben. Server mit einer anderen AG können zu Problemen führen, weswegen die AGs und die AG-Namen im Failovercluster-Manager gelöscht werden und die Knoten aus dem WSFC entfernt werden müssen. Erst dann kann ein neuer WSFC erstellt und die neu erstellte AG für alle Server eingerichtet werden. Ohne AG für die Server, müssen sie auf dem WSFC entfernt werden – und das am besten während eines Wartungsfensters, für den Fall, dass etwas schief geht.

Fehler-Anzeigen und die passenden Lösungen

Beispiel 1

Fehler-Anzeige: “File share witness resource “failed to arbitrate for the files share ‘\servername\share’. Please ensure that file share ‘\servername\share exists and is accessible by the cluster.”

Lösung: Um den Fehler zu beheben, muss der SA jedem:jeder Bearbeiter:in den vollen Zugriff auf den Server ‘\servername\share‘ geben. Diese Freigabe wird innerhalb von WSFC genutzt.

Beispiel 2

Fehler-Anzeige: “The cluster service is shutting down because quorum was lost. This could be due to the loss of network connectivity between some or all nodes in the cluster or a failover of the witness disk.”

“Run the Validate a Configuration wizard to check your network configuration. If the condision persists, check for hardware or software errors related to the network adapters on this node. Also check for failures in any other network components to which the node is connected such as hubs, switches, or bridges.”

Lösung: Um den Fehler zu beheben, kann der Cluster-Schwellenwert und die Verzögerungseinstellungen behoben werden.

Beispiel 3

Mehrere Fehler: Das Cluster ist offline.

Event Details: “Clustered role ‘Cluster Group’ has exceeded its failover threshold. It has exhausted the configured number of failover attempts within the failover period of time allotted to it and will be left in a failed state. No additional attempts will be made to bring the role online or fail it over to another node in the cluster. Please check the events associated with the failure. After the issues causing the failure are resolved the role can be brought online manually or the cluster may attempt to bring it online again after the restart delay period.”

Event Details: “The Cluster service failed to bring clustered role ‘Cluster Group’ completely online or offline. One or more resources may be in a failed state. This may impact the availability of the clustered role.”

Event Details: “Cluster resource ‘Clustered IP Address XXX.XXX.XXX.XXX of type ‘IP Address; in clustered role ‘Cluster Group’ failed.

Based on the failure policies for the resource and role, the cluster service may try to bring the resource online on this node or move the group to another node of the cluster and then restart it. Check the resource and group state using Failover Cluster Manager or the Get-ClusterResource Windows PowerShell cmdlet.”

Event Details: “Encountered a failure when attempting to create new NetBIOS interface while bringing resource ‘Cluster IP Address XXX.XXX.XXX.XXX online (error code ‘1450’). The maximum number of NetBIOS names may have been exceeded.”

Lösung: Überprüfen Sie WSFC. Wenn es keine Probleme vorweist, ist es kein Fehler innerhalb des WSFC, sondern ein Problem mit einem doppelten IP-Adresskonflikt. Der SA sollte jetzt zur Fehlerbehebung hinzugezogen werden und prüfen, dass das DNS (Domain-Name-System) die IP-Adresse für den Cluster-Knoten hat. Wenn die IP nicht auf Ihren Ping reagiert, muss der ARP Cache geleert und alte Informationen gelöscht werden oder alternativ können Sie den fehlerhaften Eintrag auch einfach entfernen.

Beispiel 4

Fehler-Anzeige: “The computer object associated with cluster network name resource “ could not be updated.

The text for the associated error code is: Unable to protect the Virtual Computer Object (VCO) from accidental deletion.

The cluster identity ‘SQLClusterName$’ my lack permissions required to update the object. Please work with your domain administrator to ensure that the cluster identity can update computer objects in the domain.”

Lösung:

 Event ID 1222 when you create failover cluster – Windows Server xxxxxxxxxxxxxx

Beispiel 5

Fehler-Anzeige: “Cluster network name resource ‘SQL Network Name (SQLClusterName)’ failed registration of one or more associated DNS name(s) for the following reason: DNS operation refused.

Ensure that the network adapters associated with dependent IP address resources are configured with at least one assessable DNS server.”

Für die Lösung sind mehrere Schritte notwendig:

  1. Öffnen Sie den DNS Manager und suchen Sie nach dem Eintrag (SQLClusterName) (Host(A)Record) für die SQLClusterName-Ressource.
  2. Für diesen Datensatz öffnen Sie die Eigenschaften.
  3. Im Security-Tab sollte der SQLClusterName$ zu sehen sein – wenn das noch nicht der Fall ist, bitte hinzufügen.
  4. Der SQLClusterName$ (kennzeichnet sich durch ein $ am Ende) sollte die Berechtigungen für Write, Read und Special Permissions haben.
  5. Klicken Sie auf Advance, suchen Sie nach SQLClusterName$ und klicken Sie Edit.
  6. Write all properties, Read permissions und All Validated Writes sollten angeklickt sein.
  7. Klicken Sie drei Mal auf OK, um die Fehlerbehebung abzuschließen.

Beispiel 6

Fehler-Anzeige: “Cluster network name resource ‘SQL Network Name (SQLClusterName$)’ cannot be brought online. The computer object associated with the resource could not be updated in ‘domainname’ for the following reason: Unable to update password for computer account.

The text for the associated error code is: Access is denied.

The cluster identity ‘SQLClusterName$’ may lack permissions required to update the object. Please work with your domain administrator to ensure that the cluster identity can update computer objects in the domain.”

Für die Lösung sind mehrere Schritte notwendig:

  1. Suchen Sie in dem AD (Active Directory) nach dem listener name.
  2. Öffnen Sie die Eigenschaften Ihres Computers (listener name) und klicken Sie auf “Sicherheit”. Wenn Sie die Registerkarte “Sicherheit” nicht sehen, schließen Sie das Fenster des Listeners, klicken Sie auf “view” und wählen Sie anschließend “Advanced Features” aus. Jetzt. sollten Sie den Tab “Sicherheit” des Computers von dem listener angezeigt bekommen.
  3. Im Tab “Security” müssen Sie dem ‘SQLClusterName$’ die kompletten Berechtigungen geben.

Im Folgenden können Sie die Schritte in Bildern sehen:

Beispiel 7

Fehler-Anzeige: “No matching network interface found for resource ‘AGName_XXX.XXX.XXX.XXX’ IP address ‘XXX.XXX.XXX.XXX’ (return code was ‘5035’). If your cluster nodes span different subnets, this may be normal.”

“The Cluster service failed to bring clustered role ‘AGName’ completely online or offline. One or more resources may be in a failed state. This may impact the availability of the clustered role.”

“Cluster resource ‘AGName_XXX.XXX.XXX.XXX’ of type ‘IP Address’ in clustered role ‘AGName’ failed. Based on the failure policies for the resource and role, the cluster service may try to bring the resource online on this node or move the group to another node of the cluster and then restart it. Check the resource and group state using Failover Cluster Manager or the Get-ClusterResource Windows PowerShell cmdlet.”

Lösung: Diese Fehleranzeigen werden Ihnen wahrscheinlich angezeigt, wenn Sie versuchen den Listener zu konfigurieren, mehrere Computer mit mehreren subnets verwenden und/oder alle Server auf dem gleichen subnet laufen.

  • Wenn die Server der AG (aviblity group), die Sie nutzen möchten, auf dem gleichen subnet laufen, sollte Ihre primary NIC (siehe Einstellungen der NICs) subnet mask für alle Server gleich sein. Wenn Sie diese Anpassung vorgenommen haben, können Sie einen neuen listener anlegen.
  • Wenn Sie mehrere Server auf verschiedenen subnets haben, sollte jedes subnet, das an Ihren Computer angeschlossen ist, eine eigene IP Adresse haben.

Beispiel 8

Fehler-Anzeige: “Cluster network name resource failed registration of one or more associated DNS names(s) because the access to update the secure DNS Zone was denied.

Cluster Network name: ‘AGName_ListenerName

DNS Zone: ‘domain.com’

Ensure that cluster name object (CNO) is granted permissions to the Secure DNS Zone.”

Für die Lösung sind mehrere Schritte notwendig:

  1. Bearbeiten Sie die NIC. Öffnen Sie anschließend “Systemsteuerung/Netzwerk und Internet/Netzwerkverbindungen”. Gehen Sie zu den Einstellungen Ihres NIC. Klicken Sie auf die Einstellungen für “Internet Protocol Version 4(TCP/IPv4) and/or “Internet Protocol Version 6 (TCP/IPv6)”.
  2. Klicken Sie auf den Tab DNS. Entfernen Sie den Haken bei “Register this connection’s addresses in DNS”.
  3. Wiederholen Sie die Schritte für jeden Knoten des Clusters.

Beispiel 9

Fehler-Anzeige: “The computer object associated with cluster network name resource ‘AGName_ListenerName’ could not be updated.

The text for the associated error code is: Unable to protect the Virtual Computer Object (VCO) from accidental deletion

The cluster identity ‘Clustername$’ may lack permissions required to update the object. Please work with your domain administrator to ensure that the cluster identity can update computer objects in the domain.”

Für die Lösung sind mehrere Schritte notwendig:

  1. Bearbeiten Sie die NIC. Öffnen Sie anschließend “Systemsteuerung/Netzwerk und Internet/Netzwerkverbindungen”. Gehen Sie zu den Einstellungen Ihres NIC. Klicken Sie auf die Einstellungen für “Internet Protocol Version 4(TCP/IPv4) and/or “Internet Protocol Version 6 (TCP/IPv6)”.
  2. Klicken Sie auf den Tab DNS. Entfernen Sie den Haken bei “Register this connection’s addresses in DNS”.
  3. Wiederholen Sie die Schritte für jeden Knoten des Clusters.

Beispiel 10

Fehler-Anzeige: “The computer object associated with cluster network name resource ‘AGName_ListenerName’ could not be updated.

The text for the associated error code is: Unable to protect the Virtual Computer Object (VCO) from accidental deletion

The cluster identity ‘Clustername$’ may lack permissions required to update the object. Please work with your domain administrator to ensure that the cluster identity can update computer objects in the domain.”

Für die Lösung sind mehrere Schritte notwendig:

  1. Bearbeiten Sie die NIC. Öffnen Sie anschließend “Systemsteuerung/Netzwerk und Internet/Netzwerkverbindungen”. Gehen Sie zu den Einstellungen Ihres NIC. Klicken Sie auf die Einstellungen für “Internet Protocol Version 4(TCP/IPv4) and/or “Internet Protocol Version 6 (TCP/IPv6)”.
  2. Klicken Sie auf den Tab DNS. Entfernen Sie den Haken bei “Register this connection’s addresses in DNS”.
  3. Wiederholen Sie die Schritte für jeden Knoten des Clusters.


Wir hoffen, dass wir Ihnen mit den wichtigsten und gängigsten Fehlern helfen konnten. Sollten Sie einen hier nicht aufgeführten Fehler angezeigt bekommen und benötigen Sie Hilfe, können Sie uns jederzeit über unser Kontaktformular schreiben.