cdh中hdfs非ha環境遷移Namenode與secondaryNamenode,從uc機器到阿里;

1.停掉外部接入服務;html

2 NameNode Metadata備份;node

2.1 備份fsimage數據,(該操做適用HA和非HA的NameNode),使用以下命令進行備份:服務器

[root@cdh01 dfs]# mkdir nn_metadata_backoop

[root@cdh01 dfs]# hdfs dfsadmin -fetchImage nn_metadata_back/fetch

[root@cdh01 dfs]# ll nn_metadata_back日誌

2.2 備份edits數據(該操做適用非HA的NameNode),使用以下命令備份:htm

[root@cdh01 current]# sudo -u hdfs hdfs dfsadmin –rollEditsmd5

2.3 拷貝edits日誌到備份目錄(該操做適用非HA的NameNode),使用以下命令進行備份hadoop

在CM上找到NameNode的dfs.name.dir配置目錄it

 

將/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

相關文章
相關標籤/搜索