Hadoop中HA元数据如何备份

这篇文章主要介绍Hadoop中HA元数据如何备份,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!

十年的馆陶网站建设经验,针对设计、前端、开发、售后、文案、推广等六对一服务,响应快,48小时及时工作处理。全网整合营销推广的优势是能够根据用户设备显示端的尺寸不同,自动调整馆陶建站的显示方式,使网站能够适用不同显示终端,在浏览器中调整网站的宽度,无论在任何一种浏览器上浏览网站,都能展现优雅布局与设计,从而大程度地提升浏览体验。成都创新互联公司从事“馆陶网站设计”,“馆陶网站推广”以来,每个客户项目都认真落实执行。

NFS方式
一、Server 端配置 (root@hz-search-zookeeper-01)
su - hbase -c "mkdir /home/hbase/hadoop_nfs && chmod 777 /home/hbase/hadoop_nfs"
echo '/home/hbase/hadoop_nfs 172.37.0.202(rw)' >> /etc/exports
   service nfs restart
二、Client 端配置 (hadoop namenode)
su - hbase -c "mkdir -p /home/hbase/hadoop_nfs/name"
/etc/init.d/nfslock start
mount -t nfs 172.37.0.201:/home/hbase/hadoop_nfs/ /home/hbase/hadoop_nfs/name
echo 'mount -t nfs 172.37.0.201:/home/hbase/hadoop_nfs/ /home/hbase/hadoop_nfs/name' >> /etc/rc.d/rc.local
三、配置dfs.name.dir为两份,并重启 hadoop 使其生效

dfs.name.dir
/home/admin/name/,/home/admin/hadoop_nfs/name
 

QJM方式

http://hadoop.apache.org/docs/r2.4.0/hadoop-project-dist/hadoop-hdfs/HDFSHighAvailabilityWithQJM.html

配置ZK集群,参照我的另一篇博文ZooKeeper集群安装配置
hdfs-site.xml
追加namenode服务名称

  dfs.nameservices
  mycluster

追加namenode服务的节点,一个nameservice最多两个节点

  dfs.ha.namenodes.mycluster
  nn1,nn2


  dfs.namenode.rpc-address.mycluster.nn1
  172.37.0.202:8020


  dfs.namenode.rpc-address.mycluster.nn2
  172.37.0.201:8020


  dfs.namenode.http-address.mycluster.nn1
  172.37.0.202:50070


  dfs.namenode.http-address.mycluster.nn2
  172.37.0.201:50070


  dfs.namenode.shared.edits.dir
  qjournal://172.37.0.201:8485;172.37.0.202:8485;172.37.0.203:8485/mycluster


  dfs.client.failover.proxy.provider.mycluster
  org.apache.hadoop.hdfs.server.namenode.ha.ConfiguredFailoverProxyProvider


  dfs.ha.fencing.methods
  sshfence


  dfs.ha.fencing.ssh.private-key-files
  /home/root/.ssh/id_rsa


   dfs.ha.automatic-failover.enabled
   true
 

core-site.xml

  fs.defaultFS
  hdfs://mycluster


  dfs.journalnode.edits.dir
  /path/to/journal/node/local/data


   ha.zookeeper.quorum
   172.37.0.201:2181,172.37.0.202:2181,172.37.0.203:2181
 

    
在ZK上初期化HA,在一个namenode节点上执行就可以了
$ hdfs zkfc -formatZK
在每个节点上都得执行下面的命令, 启动journalnode
hadoop-daemon.sh start journalnode
   [root@slave2  logs]# jps
    12821 JournalNode
在各个节点运行
 hadoop namenode -format
运行start-dfs.sh
start-yarn.sh
察看状态:namenode
16753 QuorumPeerMain
18743 ResourceManager
18634 DFSZKFailoverController
18014 JournalNode
18234 NameNode
15797 Bootstrap
19571 Jps
18333 DataNode
18850 NodeManager

Datanode
1715 DataNode
1869 NodeManager
1556 JournalNode
1142 QuorumPeerMain
2179 Jps

搭建好以后,jps查看相关进程,用kill -9 删除active的nn,通过hdfs haadmin -DFSHAAdmin -getServiceState nn1可以查看以前standby的NN已经active,执行查看等操作也都正常。想要在启动kill掉的namenode,用sbin/hadoop- daemon.sh start namenode

重新设置Hadoop HA
在namenode机器上停止
Stop-dfs.sh
Stop-yarn.sh

所有机器上停止ZK
zkServer.sh  stop

删除所有机器zk的临时文件
rm -rf /tmp/hadoop-root/zookeeper/version-2

删除所有机器JournalNode临时文件
rm -rf /home/hadoop/hadoop-root/journal/node/local/data/*
删除所有机器namenode,datanode文件
rm -rf /home/hadoop/hadoop-root/dfs/name/*
rm -rf /home/hadoop/hadoop-root/dfs/data/*
启动所有机器的ZK
zkServer.sh start
在ZK上初期化HA,在一个namenode节点上执行就可以了
 hdfs zkfc -formatZK
在每个节点上都得执行下面的命令, 启动journalnode
hadoop-daemon.sh start journalnode
在namenode节点上运行
 hadoop namenode -format
启动hadoop
start-dfs.sh
start-yarn.sh

查看节点状态
http://172.37.0.201:50070/dfshealth.jsp
http://172.37.0.202:50070/dfshealth.jsp

以上是“Hadoop中HA元数据如何备份”这篇文章的所有内容,感谢各位的阅读!希望分享的内容对大家有帮助,更多相关知识,欢迎关注创新互联行业资讯频道!


分享名称:Hadoop中HA元数据如何备份
链接地址:http://myzitong.com/article/jeocih.html