記錄Hbase出現HMaster一直初始化,日志打印hbase:meta,,1.1588230740 is NOT online問題的解決

具體錯誤

hbase:meta,,1.1588230740 is NOT online; state={1588230740 state=OPEN, ......

?使用 hbase 2.5.5 ,hdfs和hbase分離兩臺服務器。

總過程

1. 問題發現

在使用HBase的程序發出無法進行插入到HBase操作日志后檢查HBase狀況。發現master節點和region節點都掛了,HBase自動切換到備用master節點。關閉備用master節點,重新啟動HBase集群,WEB界面發現上一次啟動的節點在Dead Region中不自動清除,且Region Transition卡住了395條,看日志發現master節點一直在拋出is not online on ...,16020,1569380560106異常,確認HBase沒有正常運行。

檢查日志發現主節點拋出如上錯誤。

2. 解決過程

2.1 is not online on ...,16020,1569380560106異常

重啟觀察到Dead Region每次會增加,感覺應該是HMaster初始化中重啟導致的狀態問題。之前測試環境解決這個問題是清空zookeeper和hdfs的hbase相關信息,但是因為有數據不希望清除,考慮解決該問題。

先去hdfs節點檢查hbase文件有沒有損壞的情況。

hdfs fsck

輸出未發現數據塊損壞的情況。?搜索后確認為hbase內部問題。搜索得到hdfs的hbase路徑下WALs保存regionserver節點的信息,遂考慮清空重啟看看能不能解決這個問題。

hdfs dfs -mkdir /hbase/WALs20240521hdfs dfs -mv /hbase/WALs/* /hbase/WALs20240521

運行后問題依舊存在,檢查日志后猜測是找不到某個節點的信息導致HMaster節點無法正常初始化。在WALs中新建了一個空白的hbase:meta找不到的1,16020,1569380560106文件夾,再次重啟后HMaster恢復正常,多余的Dead Region在等待三四分鐘后自動清除,HBase恢復正常運行。

2.2 出現了數據缺失的情況

在HBase恢復正常后,在HBase Web UI中的HBCK REPORT發現大量的Incontinent Regions和Unknown Servers信息,懷疑是數據有問題,在使用自己的業務程序測試后發現有部分數據的請求在master節點會拋出類似于 [表名],[rowkey],[encode]在region2.16000,[encode]這里不存在,region2,16000,[encode]不在線。

初期懷疑是數據損壞了,希望通過HBCK進行修復region的hole問題,因為是2代所以從GIT上拉相關工具,官網上獲取的。可能在運行 hbase hbck -j xxx.jar 后會拋出沒找到文件系統 hdfs 的錯誤,可以加上 --internal-classpath來解決這個問題。我是因為hdfs 和 hbase 不在同一個服務器上,也可以通過添加環境變量HADOOP_HOME來解決這個錯誤。

首次使用fixMeta來嘗試修補表中的holes解決文件損壞問題。

hbase hbck -j xxxx.jar fixMeta

運行后觀察master節點的日志,發現返回了hbase:meta中發現的holes為0,排除了數據損壞的情況。焦點回到unknown servers上。

hbase hbck -j xxx.jar scheduleRecoveries [encode]

恢復崩潰的 RegionServer 上的所有 region。

3. 過程中用到的指令

hbase hbck -j xxxx.jar -o assigns [encode] # 分配Region in transition中卡住的任務
hbase hbck -j xxxx.jar bypass [pid]   # 將producer中的強行釋放,在任務卡住的時候可以用
hbase hbck -j xxxx.jar fixMeta    # 修復hbase:meta的問題,需要程序正常運行

結語

僅為在網絡上找到的一些方法和自己踩的坑,肯定有錯誤的地方,希望可以指正,謝謝。具體命令可以在HBCK2項目中的README.md中詳解。

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/bicheng/15244.shtml
繁體地址,請注明出處:http://hk.pswp.cn/bicheng/15244.shtml
英文地址,請注明出處:http://en.pswp.cn/bicheng/15244.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

大模型應用商業化落地關鍵:給企業帶來真實的業務價值

2024 年被很多人稱為大模型應用的元年,毫無疑問,大模型已經成為共識,下一步更急迫的問題也擺在了大家的面前——大模型到底能夠用在哪?有哪些場景能落地?怎么做才能創造真正的價值? 在剛剛過去的 AICon 全…

【排序算法】快速排序(四個版本以及兩種優化)含動圖)

制作不易,三連支持一下吧!!! 文章目錄 前言一.快速排序Hoare版本實現二.快速排序挖坑法版本實現三.快速排序前后指針版本實現四.快速排序的非遞歸版本實現五.兩種優化總結 前言 前兩篇博客介紹了插入和選擇排序,這篇博…

halcon配合yolov8導出onnx模型檢測物體

1.工業上多數視覺開發都是用halcon開發的,halcon本身也有自己的深度學習網絡,至于halcon如果不使用本身的深度學習,使用其他網絡導出的onnx模型怎樣配合使用?本文基于yolov8寫一個列子。 2。創建輸入數據的轉換代碼 #region 創建輸…

Nginx高可用性架構:實現負載均衡與故障轉移的探索

隨著網絡應用的不斷發展和用戶訪問量的增長,如何確保系統的高可用性、實現負載均衡以及快速響應故障轉移成為了每個運維和開發團隊必須面對的挑戰。Nginx作為一款高性能的HTTP和反向代理服務器,憑借其強大的功能和靈活的配置,成為了實現這些目…

題目:填空練習(指向指針的指針)

題目:填空練習(指向指針的指針) There is no nutrition in the blog content. After reading it, you will not only suffer from malnutrition, but also impotence. The blog content is all parallel goods. Those who are worried about …

【bugfix】/usr/local/bin/docker-compose:行1: html: 沒有那個文件或目錄

前言 在使用 docker-compose 管理容器化應用時,偶爾會遇到一些意想不到的錯誤,比如當嘗試運行 docker-compose 命令時,終端非但沒有展示預期的輸出,反而出現類似網頁錯誤的信息。這類問題通常與 docker-compose 的安裝或配置有關…

首都師范大學聘請旅美經濟學家向凌云為客座教授

2024年4月17日,首都師范大學客座教授聘任儀式在首都師范大學資源環境與旅游學院舉行。首都師范大學資源環境與旅游學院院長呂拉昌主持了儀式,并為旅美經濟學家向凌云教授頒發了聘書。 呂拉昌院長指出,要貫徹教育部產學研一體化戰略&#xff0…

數據庫工具類

public interface DbMapper {/*** 查詢數據庫類型*/String queryDbType(); }<select id"queryDbType" resultType"java.lang.String">select<choose><when test"_databaseId mysql">mysql</when><when test"_d…

虛擬機Centos擴展磁盤空間

虛擬機空間&#xff1a;現sda大小20G&#xff0c;因課程需要擴容 在虛擬機擴容中&#xff0c; 新增一塊硬盤 和 直接在原有硬盤基礎上擴容是一樣的&#xff08;只不過在原有硬盤上擴容需要關機才可以執行&#xff09;&#xff1b; 但兩者都最好先做數據備份或快照&#xff0c…

夏令營復習coding 算法第一天-狀態:新奇

T1:bubble冒泡排序 &#xff08;1&#xff09;思路&#xff1a;兩次循環&#xff0c;外層循環從后面開始-作為一個支點&#xff0c;內層循環每次將當前需要排序的最大的那個元素一步步移動到該支點&#xff0c;最終升序排列完成 &#xff08;2&#xff09;代碼: #include &l…

5、設計模式之適配器模式/原型模式

文章目錄 開始之前適配器模式使用場景注意事項何時使用優缺點代碼實現 原型模式深拷貝和淺拷貝 開始之前 本章節是一個系列&#xff0c;里面用的的代碼實例都是連貫的。在實現某一種設計模式時&#xff0c;為了減少代碼篇幅&#xff0c;前面博客出現model類&#xff08;僅限公…

【LabVIEW FPGA入門】同步C系列模塊

1.同步使用循環定時器VI計時循環速率的系列模塊 數字模塊SAR ADC 模塊多路復用模塊 數字通道可以在一個時鐘周期內執行。模擬通道需要多個時鐘周期。 同步模擬模塊的每個通道有一個 ADC&#xff0c;采集的數據在通道之間沒有明顯的偏差。多路復用模塊使用多路復用器通過單個 A…

Docker安裝并部署Gitlab,同時解決Gitlab服務經常503/500的問題

文章目錄 Docker 安裝Gitlab部署后需要解決的小問題1. 獲取初始密碼2. 解決剛安裝好的Gitlab頻繁出現503/500并重啟的錯誤 Docker 安裝Gitlab docker pull gitlab/gitlab-cedocker run -d -p 11443:443 -p 11090:80 -p 11022:22 \ --name gitlab \ --restart unless-stopped \…

深入理解NumPy與Pandas【numpy模塊及Pandas模型使用】

二、numpy模塊及Pandas模型使用 numpy模塊 1.ndarray的創建 import numpy as np anp.array([1,2,3,4]) bnp.array([[1,2,3,4],[5,6,7,8]]) print(a) #[1 2 3 4] print(b) #[[1 2 3 4][5 6 7 8]] 1.1使用array()函數創建 numpy.array(object, dtype None, copy True, ord…

vue2和vue3區別

Vue 3是Vue.js框架的下一代主要版本&#xff0c;它在2020年9月正式發布。Vue 3帶來了一系列的新特性和改進&#xff0c;包括性能提升、更小的打包尺寸、更好的TypeScript支持、新的組合式API等。以下是Vue 2和Vue 3之間的一些主要區別&#xff1a; 1. 性能提升&#xff1a; …

計算機存儲單位

目錄 是什么 存儲單位的劃分 存儲單位轉換關系表 相關疑問 存儲單位轉換除了位之外的存儲單位轉換規則是什么 為什么在編碼中最小的操作單位不是位 是什么 用來度量數據存儲容量的單位。 存儲單位的劃分 存儲單位有 位&#xff08;bit&#xff0c;也稱為比特&#xff…

光伏項目怎么做預算?

隨著可再生能源行業的蓬勃發展&#xff0c;光伏行業也得到了擴張。許多想要加入光伏項目投資的人&#xff0c;都在為怎樣為項目做預算而苦惱&#xff0c;今天我就來跟大家分析下可以怎么做。 一、了解市場需求&#xff0c;確定預算目標 在制定光伏項目預算方案之前&#xff0c…

《SpringBoot》系列文章目錄

SpringBoot是由Pivotal團隊提供的全新框架&#xff0c;旨在簡化新Spring應用的初始搭建以及開發過程。以下是一些關于SpringBoot的詳細介紹&#xff1a; 設計目的&#xff1a;SpringBoot通過特定的方式來進行配置&#xff0c;使得開發人員不再需要定義樣板化的配置&#xff0c…

「貪心算法」將數組和減半的最少操作次數

力扣原題鏈接&#xff0c;點擊跳轉。 給你一個數組&#xff0c;每次可以把其中一個數減半&#xff0c;可以對同一個數多次減半。至少操作多少次&#xff0c;才能讓數組的和整體減少至少一半呢&#xff1f; 我們每次都選擇當前數組中最大的那個數減半&#xff0c;就能減少最多…

鏈路初始化和訓練

一、總覽 鏈路初始化和訓練&#xff0c;由物理層進行控制&#xff0c;是一個基于硬件的過程。初始化設備的鏈路和端口&#xff0c;使得設備能夠收發報文&#xff0c;在鏈路上正常通信。 在reset后由硬件自動啟動完整的訓練過程&#xff0c;并由LTSSM管理。 1 位鎖定 訓練開始…