共用方式為


Azure HDInsight 中的區域伺服器問題

本文說明與 Azure HDInsight 叢集互動時若遇到問題,可使用哪些疑難排解步驟和可能的解決方案。

案例:未指派的區域

問題

執行 hbase hbck 命令時,您會看到類似下列的錯誤訊息:

multiple regions being unassigned or holes in the chain of regions

在 Apache HBase Master UI 中,您可以看到所有區域伺服器中不對稱的區域數目。 然後,您可以執行 hbase hbck 命令來查看區域鏈結中的漏洞。

原因

漏洞可能是離線區域所造成。

解決方法

請修正指派。 請遵循下列步驟,讓未指派的區域恢復正常狀態:

  1. 使用 SSH 以登入 HDInsight HBase 叢集。

  2. 執行 hbase zkcli 命令,與 ZooKeeper 殼層連線。

  3. 執行rmr /hbase/regions-in-transitionrmr /hbase-unsecure/regions-in-transition命令。

  4. 使用 exit 命令結束 zookeeper 殼層。

  5. 開啟 Apache Ambari UI,然後重新啟動 Active HBase Master 服務。

  6. 再次執行 hbase hbck 命令 (但不含任何進一步選項)。 檢查輸出,並確定所有區域已獲指派。


案例:無作用的區域伺服器

問題

區域伺服器無法啟動。

原因

多個分割 WAL 目錄。

  1. 取得目前的 WAL 清單:hadoop fs -ls -R /hbase/WALs/ > /tmp/wals.out

  2. 檢查 wals.out 檔案。 如果分割目錄太多 (起首為 *-splitting),區域伺服器可能會因這些目錄而失敗。

解決方法

  1. 從 Ambari 入口網站停止 HBase。

  2. 執行 hadoop fs -ls -R /hbase/WALs/ > /tmp/wals.out 以取得全新的 WAL 清單。

  3. 將 *-splitting 目錄移至暫存資料夾 splitWAL,然後刪除 *-splitting 目錄。

  4. 執行 hbase zkcli 命令,與 zookeeper 殼層連線。

  5. 執行 rmr /hbase-unsecure/splitWAL

  6. 重新啟動 HBase 服務。

下一步

如果您沒有看到您的問題,或無法解決您的問題,請瀏覽下列其中一個管道以取得更多支援:

  • 透過 Azure 社群支援獲得由 Azure 專家所提供的解答。

  • 連線至 @AzureSupport,這是用來改善客戶體驗的官方 Microsoft Azure 帳戶。 將 Azure 社群連線到正確的資源:解答、支援和專家。

  • 如果需要更多協助,您可在 Azure 入口網站提交支援要求。 從功能表列中選取 [支援] 或開啟 [說明 + 支援] 中樞。 如需詳細資訊,請參閱如何建立 Azure 支援要求。 Microsoft Azure 訂用帳戶包括訂用帳戶管理及帳務支援的存取權,而技術支援由其中一項 Azure 支援方案提供。