cdh中hdfs非ha环境迁移Namenode与secondaryNamenode,从uc机器到阿里;
1.停掉外部接入服務;
2 NameNode Metadata備份;
2.1 備份fsimage數據,(該操作適用HA和非HA的NameNode),使用如下命令進行備份:
[root@cdh01 dfs]# mkdir nn_metadata_back
[root@cdh01 dfs]# hdfs dfsadmin -fetchImage nn_metadata_back/
[root@cdh01 dfs]# ll nn_metadata_back
2.2 備份edits數據(該操作適用非HA的NameNode),使用如下命令備份:
[root@cdh01 current]# sudo -u hdfs hdfs dfsadmin –rollEdits
2.3 拷貝edits日志到備份目錄(該操作適用非HA的NameNode),使用如下命令進行備份
在CM上找到NameNode的dfs.name.dir配置目錄
?
將/data/dfs/nn/current目錄下的edits_0*開頭的文件拷貝至備份目錄
[root@cdh01 dfs]# mkdir nn_metadata_back/edits
[root@cdh01 dfs]# cp /data/dfs/nn/current/edits_0* nn_metadata_back/edits/
[root@cdh01 dfs]#
?
2.4備份VERSION文件(該操作適用于HA和非HA的NameNode),這個文件不需要定期備份,因為它不會更改,但該文件非常重要,因為文件中包含了clusterID一級其它詳細信息?
[root@cdh01 dfs]# cp /data/dfs/nn/current/VERSION nn_metadata_back/
[root@cdh01 dfs]# ll nn_metadata_back/
total 1852
drwxr-xr-x 2 root root? ??831488 Oct 17 10:49 edits
-rw-r--r-- 1 root root ????1051656 Oct 17 10:42 fsimage_0000000000007076989
drwx------ 3 root root??? ?4096 Oct 17 14:06 snn
-rw-r--r-- 1 root root???? 173 Oct 17 10:49 VERSION
?
?
3? NameNode Metadata恢復;
3.1通過CM先將uc機器上namenode刪除,然后在ali機器上加一個namenode節點;
?
3.2 通過CM為新加的節點添加NameNode角色;
?
3.3??? 檢查NameNode的dfs.name.dir配置的目錄在服務器上是否存在,如果不存在則需要手動的創建并確保目錄屬主為hdfs:hdfs,且父目錄權限為700;
[root@cdh01 ~]# mkdir -p /data/disk1/dfs/nn/
[root@cdh01 ~]# chown hdfs:hadoop /data/disk1/dfs/nn
[root@cdh01 ~]# chmod 700 /data/disk1/dfs/nn
?
3.4??? 將VERSION和最后備份的fsimage文件復制到/data/disk1/dfs/nn/current目錄下
[root@cdh01?dfs]#?mkdir?-p?/data/disk1/dfs/nn/current
[root@cdh01?dfs]#?cp?/data/disk1/nn_metadata_back/VERSION?/data/disk1/dfs/nn/current/
[root@cdh01?dfs]#?cp?/data/disk1/nn_metadata_back/fsimage_0000000000004483704?/data/disk1/dfs/nn/current/
[root@cdh01?dfs]#?cp?/data/disk1/nn_metadata_back/edits/*?/data/disk1/dfs/nn/current/
[root@cdh01?dfs]#?chown?-R?hdfs:hdfs?/data/disk1/dfs/nn/current/
?????
?3. 5 為fsimage文件創建md5校驗
?[root@cdh01?dfs]#?cd?nn/current/
[root@cdh01?current]#?md5sum?fsimage_0000000000004483704?>?fsimage_0000000000004483704.md5
[root@cdh01?current]#?ll?fsimage_0000000000004483704*
?
4? 啟動namenode,驗證服務;
5? 遷移secondary namenode要簡單些,只需遷移整個snn目錄到新節點,注意文件權限,然后通過cm刪除uc機器上snn,添加新的snn到ali節點;
?
*****最后在重啟集群后,可能會發現hbase master節點起不來,或者不能切換為active狀態,可以參考以下文章:
https://community.hortonworks.com/questions/33140/hbase-master-fails-to-start.html
轉載于:https://www.cnblogs.com/gxc2015/p/9836235.html
總結
以上是生活随笔為你收集整理的cdh中hdfs非ha环境迁移Namenode与secondaryNamenode,从uc机器到阿里;的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: python语言中的数据类型之字典
- 下一篇: sublime 设置新建文件自动添加au