hadoop hbase 升級

Hadoop HDFS 與Hbase升級筆記

由於之前使用了hadoop1.0.2,hbase 使用的是hbase-0.92.1 但是一次事故導致元數據丟失,且修復元數據的類本身有BUG
所以擺在眼前的只有兩條路:
1、修改hbase源碼重新編譯 hbase 修復BUG
2、升級到下一個版本,且這個版本已經修復了此BUG 從release node中看到 0.92.2及以後版本均修復了此bug
  所以決定升級到最新的穩定版 hbase-0.94.3 而此版本的hbase 和hadoop-1.0.4 的兼容性最好,所以hadoop 連帶升級到hadoop-1.0.4

1. Hadoop升級步驟:
 (1)停止集羣上的所有MR任務,包括Hbase(如果Hbase在使用中,先停掉,接着是zookeeper)
 (2)停止DFS(1、2兩步也可以在hbase和zookeeper關閉後使用stop-all.sh腳本直接關閉)
 (3)刪除臨時數據,即在core-site.xml中設置的hadoop.tmp.dir的value所文件目錄下的文件
 (4)備份HDFS元數據

 (5)將下載好的hadoop-1.0.4.tar.gz解壓到要安裝的目錄,我這裏是/home/hbase,並改名爲Hadoop,並配置hadoop/conf下的相應文件
 (6)配置環境變量,如HADOOP_HOME、HADOOP_HOME_CONF等(如果你升級所用的hadoop安裝目錄與原來的不一致的話)
 (7)使用HADOOP_HOME/bin下的start-dfs.sh -upgrade命令升級
 (8)等待升級完畢後,使用HADOOP_HOME/bin下的hadoop fsck -blocks查看HDFS是否完整並健康運行
 (9)當集羣正常並運行一段時間以後(如果確定沒數據丟失,也可以立即final),使用 hadoop dfsadmin -finalizeUpgrade進行版本的序列化(在這之前如果你沒有刪除原來版本hadoop的,你完全可以使用start-dfs.sh -rollback返回到原來版本的hadoop)
  (10) finalizeUpgrade之後,需重啓集羣,空間纔會釋放,或hadoop namenode -finalize
 
2. Hbase升級步驟:
 (1)當hadoop升級成功後,將hbase-0.94.3.tar.gz解壓到所要安裝的目錄,我這裏是/home/hbase,並改名爲Hbase
 (2)配置新版hbase下conf中的文件(如同你第一次安裝hbase一樣)
 (3)如果需要,也同樣修改環境變量,如HBASE_HOME等
 (4)啓動zookeeper
 (5)啓動新版hbase
 (6)使用網頁監控或者hbase shell檢查hbase中的數據是否完整無缺

 

3.hadoop 升級監控

 

  bin/hadoop dfsadmin -upgradeProgress
  命令來查看版本升級的情況。
  bin/hadoop dfsadmin -upgradeProgress details
  來查看更多的詳細信息。
  當升級過程被阻塞的時候,你可以使用
  bin/hadoop dfsadmin -upgradeProgress force
  來強制升級繼續執行(這個命令比較危險,慎重使用)。

  當HDFS升級完畢後,Hadoop依舊保留着舊版本的有關信息,
  以便你可以方便的對HDFS進行降級操作。
  可以使用bin/start-dfs.sh -rollback來執行降級操作。

發佈了32 篇原創文章 · 獲贊 12 · 訪問量 23萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章