Probleme mit Regionsservern in Azure HDInsight

In diesem Artikel werden Schritte zur Problembehandlung und mögliche Lösungen für Probleme bei der Interaktion mit Azure HDInsight-Clustern beschrieben.

Szenario: Nicht zugewiesene Regionen

Problem

Bei der Ausführung des Befehls hbase hbck wird in etwa die folgende Fehlermeldung angezeigt:

multiple regions being unassigned or holes in the chain of regions

In der HBase Master-Benutzeroberfläche von Apache wird die Anzahl der Regionen angezeigt, die über alle Regionsserver hinweg nicht ausgeglichen sind. Sie können dann den Befehl hbase hbck ausführen, um Lücken in der Kette der Regionen anzuzeigen.

Ursache

Der Grund für Lücken können Regionen im Offlinezustand sein.

Lösung

Korrigieren Sie die Zuweisungen. Bringen Sie die nicht zugewiesenen Regionen mit folgenden Schritten wieder in den normalen Zustand:

  1. Melden Sie sich mithilfe von SSH beim HDInsight-HBase-Cluster an.

  2. Führen Sie den Befehl hbase zkcli aus, um eine Verbindung mit der ZooKeeper-Shell herzustellen.

  3. Führen Sie den Befehl rmr /hbase/regions-in-transition oder rmr /hbase-unsecure/regions-in-transition aus.

  4. Beenden Sie die ZooKeeper-Shell mit dem Befehl exit.

  5. Öffnen Sie die Apache Ambari-Benutzeroberfläche, und starten Sie anschließend den Active HBase-Master-Dienst neu.

  6. Führen Sie den Befehl hbase hbck erneut aus (ohne weitere Optionen). Überprüfen Sie die Ausgabe, und vergewissern Sie sich, dass alle Regionen zugewiesen sind.


Szenario: Inaktive Regionsserver

Problem

Regionsserver können nicht gestartet werden.

Ursache

Mehrere WAL-Aufteilungsverzeichnisse.

  1. Liste der aktuellen WAL-Verzeichnisse abrufen: hadoop fs -ls -R /hbase/WALs/ > /tmp/wals.out.

  2. Sehen Sie sich die Datei wals.out an. Wenn zu viele Aufteilungsverzeichnisse vorhanden sind (beginnen mit „*-splitting“), tritt für den Regionsserver vermutlich aufgrund dieser Verzeichnisse ein Fehler auf.

Lösung

  1. Beenden Sie HBase über das Ambari-Portal.

  2. Führen Sie hadoop fs -ls -R /hbase/WALs/ > /tmp/wals.out aus, um eine aktualisierte Liste mit WAL-Verzeichnissen zu erhalten.

  3. Verschieben Sie die „*-splitting“-Verzeichnisse in den temporären Ordner splitWAL, und löschen Sie die „*-splitting“-Verzeichnisse.

  4. Führen Sie den Befehl hbase zkcli aus, um eine Verbindung mit der ZooKeeper-Shell herzustellen.

  5. Führen Sie rmr /hbase-unsecure/splitWAL aus.

  6. Starten Sie den HBase-Dienst neu.

Nächste Schritte

Wenn Ihr Problem nicht aufgeführt ist oder Sie es nicht lösen können, besuchen Sie einen der folgenden Kanäle, um weitere Unterstützung zu erhalten:

  • Nutzen Sie den Azure-Communitysupport, um Antworten von Azure-Experten zu erhalten.

  • Setzen Sie sich mit @AzureSupport in Verbindung, dem offiziellen Microsoft Azure-Konto zum Verbessern der Kundenfreundlichkeit. Verbinden der Azure-Community mit den richtigen Ressourcen: Antworten, Support und Experten.

  • Sollten Sie weitere Unterstützung benötigen, senden Sie eine Supportanfrage über das Azure-Portal. Wählen Sie dazu auf der Menüleiste die Option Support aus, oder öffnen Sie den Hub Hilfe und Support. Ausführlichere Informationen hierzu finden Sie unter Erstellen einer Azure-Supportanfrage. Zugang zu Abonnementverwaltung und Abrechnungssupport ist in Ihrem Microsoft Azure-Abonnement enthalten. Technischer Support wird über einen Azure-Supportplan bereitgestellt.