溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

Hadoop中HA元數(shù)據(jù)如何備份

發(fā)布時(shí)間:2021-12-09 15:41:42 來(lái)源:億速云 閱讀:176 作者:小新 欄目:云計(jì)算

這篇文章主要介紹Hadoop中HA元數(shù)據(jù)如何備份,文中介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們一定要看完!

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 使其生效
<property>
<name>dfs.name.dir</name>
<value>/home/admin/name/,/home/admin/hadoop_nfs/name</value>
</property> 

QJM方式

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

配置ZK集群,參照我的另一篇博文ZooKeeper集群安裝配置
hdfs-site.xml
追加namenode服務(wù)名稱
<property>
  <name>dfs.nameservices</name>
  <value>mycluster</value>
</property>
追加namenode服務(wù)的節(jié)點(diǎn),一個(gè)nameservice最多兩個(gè)節(jié)點(diǎn)
<property>
  <name>dfs.ha.namenodes.mycluster</name>
  <value>nn1,nn2</value>
</property>
<property>
  <name>dfs.namenode.rpc-address.mycluster.nn1</name>
  <value>172.37.0.202:8020</value>
</property>
<property>
  <name>dfs.namenode.rpc-address.mycluster.nn2</name>
  <value>172.37.0.201:8020</value>
</property>
<property>
  <name>dfs.namenode.http-address.mycluster.nn1</name>
  <value>172.37.0.202:50070</value>
</property>
<property>
  <name>dfs.namenode.http-address.mycluster.nn2</name>
  <value>172.37.0.201:50070</value>
</property>
<property>
  <name>dfs.namenode.shared.edits.dir</name>
  <value>qjournal://172.37.0.201:8485;172.37.0.202:8485;172.37.0.203:8485/mycluster</value>
</property>
<property>
  <name>dfs.client.failover.proxy.provider.mycluster</name>
  <value>org.apache.hadoop.hdfs.server.namenode.ha.ConfiguredFailoverProxyProvider</value>
</property>
<property>
  <name>dfs.ha.fencing.methods</name>
  <value>sshfence</value>
</property>
<property>
  <name>dfs.ha.fencing.ssh.private-key-files</name>
  <value>/home/root/.ssh/id_rsa</value>
</property>
<property>
   <name>dfs.ha.automatic-failover.enabled</name>
   <value>true</value>
 </property>

core-site.xml
<property>
  <name>fs.defaultFS</name>
  <value>hdfs://mycluster</value>
</property>
<property>
  <name>dfs.journalnode.edits.dir</name>
  <value>/path/to/journal/node/local/data</value>
</property>
<property>
   <name>ha.zookeeper.quorum</name>
   <value>172.37.0.201:2181,172.37.0.202:2181,172.37.0.203:2181</value>
 </property>
    
在ZK上初期化HA,在一個(gè)namenode節(jié)點(diǎn)上執(zhí)行就可以了
$ hdfs zkfc -formatZK
在每個(gè)節(jié)點(diǎn)上都得執(zhí)行下面的命令, 啟動(dòng)journalnode
hadoop-daemon.sh start journalnode
   [root@slave2  logs]# jps
    12821 JournalNode
在各個(gè)節(jié)點(diǎn)運(yùn)行
 hadoop namenode -format
運(yùn)行start-dfs.sh
start-yarn.sh
察看狀態(tài):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查看相關(guān)進(jìn)程,用kill -9 刪除active的nn,通過hdfs haadmin -DFSHAAdmin -getServiceState nn1可以查看以前standby的NN已經(jīng)active,執(zhí)行查看等操作也都正常。想要在啟動(dòng)kill掉的namenode,用sbin/hadoop- daemon.sh start namenode

重新設(shè)置Hadoop HA
在namenode機(jī)器上停止
Stop-dfs.sh
Stop-yarn.sh

所有機(jī)器上停止ZK
zkServer.sh  stop

刪除所有機(jī)器zk的臨時(shí)文件
rm -rf /tmp/hadoop-root/zookeeper/version-2

刪除所有機(jī)器JournalNode臨時(shí)文件
rm -rf /home/hadoop/hadoop-root/journal/node/local/data/*
刪除所有機(jī)器namenode,datanode文件
rm -rf /home/hadoop/hadoop-root/dfs/name/*
rm -rf /home/hadoop/hadoop-root/dfs/data/*
啟動(dòng)所有機(jī)器的ZK
zkServer.sh start
在ZK上初期化HA,在一個(gè)namenode節(jié)點(diǎn)上執(zhí)行就可以了
 hdfs zkfc -formatZK
在每個(gè)節(jié)點(diǎn)上都得執(zhí)行下面的命令, 啟動(dòng)journalnode
hadoop-daemon.sh start journalnode
在namenode節(jié)點(diǎn)上運(yùn)行
 hadoop namenode -format
啟動(dòng)hadoop
start-dfs.sh
start-yarn.sh

查看節(jié)點(diǎn)狀態(tài)
http://172.37.0.201:50070/dfshealth.jsp
http://172.37.0.202:50070/dfshealth.jsp

以上是“Hadoop中HA元數(shù)據(jù)如何備份”這篇文章的所有內(nèi)容,感謝各位的閱讀!希望分享的內(nèi)容對(duì)大家有幫助,更多相關(guān)知識(shí),歡迎關(guān)注億速云行業(yè)資訊頻道!

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI