CDH節點宕機恢復記錄

由於意外,集羣中的一個節點系統壞了,重裝系統後,把該節點添加集羣中,恢復hdfs數據。

思路:主要問題是把hdfs的數據恢復,由於hdfs的機制very good,只要把節點從集羣中刪掉,再添加進集羣中,配置hdfs對應目錄就好。

背景:安裝的cdh6.2,使用cm界面進行管理
在這裏插入圖片描述

流程:
1.從集羣中刪除節點,刪除的時候,勾選解除授權。
在這裏插入圖片描述

2.從主機管理中刪除節點
3.走集羣添加新節點流程

節點上的一些對應安裝配置(略過)
在cm界面中添加新節點
警告一頓猛如虎的操作:在這裏插入圖片描述

而後面生成的/data2/hadoop/hdfs/data目錄權限都是root,修改所屬用戶和用戶組即可(如果權限不一致,修改確保跟正常啓動的數據目錄權限保持一致),執行如下命令:

chown -R hdfs:hadoop data

新節點ok,hdfs沒有任何問題,沒有丟塊。

節點恢復後,HDFS出現了壞塊
在這裏插入圖片描述
可以使用hdfs fsck / -delete刪除hdfs上的壞塊,此操作可能會丟失數據,慎用,本場景下不得不用,如果有更好的解決方法,歡迎指點。
在這裏插入圖片描述
執行hdfs fsck /,發現狀態已經變成healthy
在這裏插入圖片描述
當然,這只是數據允許丟失的情況下可以使用的一種簡單粗暴的方法,生產上還是無法使用這種直接刪數據的方法的
那麼生產上應該怎麼處理這種情況呢?
(1)首先hdfs fsck -files -blocks -locations找到數據塊的位置和丟失的數據信息
(2)hdfs debug recoverLease [-path ] [-retries ] 用這個命令恢復上面路徑丟失的數據塊,最後一個參數是重試次數
上面方法來源於
鏈接:https://www.jianshu.com/p/de16139a11a4

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章