hadoop-hdfs-ha配置-搭建 随笔 第1张

官方配置原文:

SRE实战 互联网时代守护先锋,助力企业售后服务体系运筹帷幄!一键直达领取阿里云限量特价优惠。

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

 

hadoop-hdfs-ha配置-搭建 随笔 第2张

 hadoop-hdfs-ha配置-搭建 随笔 第3张

 

hadoop-hdfs-ha配置-搭建 随笔 第4张

 

 

 hadoop-hdfs-ha配置-搭建 随笔 第5张

 

 hadoop-hdfs-ha配置-搭建 随笔 第6张

 

 

 

 

zookeeper搭建:

node02下:

hadoop-hdfs-ha配置-搭建 随笔 第7张

 

 hadoop-hdfs-ha配置-搭建 随笔 第8张

 

配置zk环境变量:

 hadoop-hdfs-ha配置-搭建 随笔 第9张

 

hadoop-hdfs-ha配置-搭建 随笔 第10张

 

hadoop-hdfs-ha配置-搭建 随笔 第11张

 

 

 

 

 ZK配置文件:

hadoop-hdfs-ha配置-搭建 随笔 第12张

 

 hadoop-hdfs-ha配置-搭建 随笔 第13张

 修改为:

 hadoop-hdfs-ha配置-搭建 随笔 第14张

 

 hadoop-hdfs-ha配置-搭建 随笔 第15张

 

 分发zk:分发给 node03 和 node04 hadoop-hdfs-ha配置-搭建 随笔 第16张

 

hadoop-hdfs-ha配置-搭建 随笔 第17张

 

 hadoop-hdfs-ha配置-搭建 随笔 第18张

 

 然后存放各自的id 和 配置zk环境变量:

hadoop-hdfs-ha配置-搭建 随笔 第19张

hadoop-hdfs-ha配置-搭建 随笔 第20张

 

 node03:

hadoop-hdfs-ha配置-搭建 随笔 第21张

 

hadoop-hdfs-ha配置-搭建 随笔 第22张

 hadoop-hdfs-ha配置-搭建 随笔 第23张

 

node04:

hadoop-hdfs-ha配置-搭建 随笔 第24张

 

hadoop-hdfs-ha配置-搭建 随笔 第25张

 

hadoop-hdfs-ha配置-搭建 随笔 第26张

 

 

 开启ZK服务:

node02:

 hadoop-hdfs-ha配置-搭建 随笔 第27张

node03:

hadoop-hdfs-ha配置-搭建 随笔 第28张

 

node04:

 hadoop-hdfs-ha配置-搭建 随笔 第29张

 

 

 

 

 hadoop-HA-搭建:

hadoop-hdfs-ha配置-搭建 随笔 第30张

 

 配置 hdfs-site.xml 文件:

 hadoop-hdfs-ha配置-搭建 随笔 第31张

 

 之前配置过的完全分布式的配置文件进行修改hadoop-hdfs-ha配置-搭建 随笔 第32张

 

 

 后面追加的内容:

#dfs.nameservices   命名空间的逻辑名称
<property>
  <name>dfs.nameservices</name>
  <value>mycluster</value>
</property>


#dfs.ha.namenodes.[nameservice ID]   所有NameNode标示名称
<property>
  <name>dfs.ha.namenodes.mycluster</name>
  <value>nn1,nn2</value>
</property>


#dfs.namenode.rpc-address.[nameservice ID].[name node ID]   每个namenode监听的RPC地址
<property>
  <name>dfs.namenode.rpc-address.mycluster.nn1</name>
  <value>node01:8020</value>
</property>

<property>
  <name>dfs.namenode.rpc-address.mycluster.nn2</name>
  <value>node02:8020</value>
</property>

#dfs.namenode.http-address.[nameservice ID].[name node ID]   每个namenode监听的http地址。
<property>
  <name>dfs.namenode.http-address.mycluster.nn1</name>
  <value>node01:50070</value>
</property>
<property>
  <name>dfs.namenode.http-address.mycluster.nn2</name>
  <value>node02:50070</value>
</property>




#journalnode配置信息
<property>
  <name>dfs.namenode.shared.edits.dir</name>
  <value>qjournal://node01:8485;node2:8485;node3:8485/mycluster</value>
</property>

#journalnode持久化数据目录
<property>
  <name>dfs.journalnode.edits.dir</name>
  <value>/var/sxt/hadoop/ha/jn</value>
</property>


#这里配置HDFS客户端连接到Active NameNode的一个java类

<property>
  <name>dfs.client.failover.proxy.provider.mycluster</name>
<value>org.apache.hadoop.hdfs.server.namenode.ha.ConfiguredFailoverProxyProvider</value>
</property>




#dfs.ha.fencing.methods 配置active namenode出错时的处理类。当active namenode出错时,一般需要关闭该进程。处理方式可以是ssh也可以是shell

<property> <name>dfs.ha.fencing.methods</name> <value>sshfence</value> </property> <property> <name>dfs.ha.fencing.ssh.private-key-files</name> <value>/root/.ssh/id_dsa</value> </property>

#在namenode身边启动ZKFC 开启自动故障转移
<property> <name>dfs.ha.automatic-failover.enabled</name> <value>true</value> </property>
 



 

 

 

 

配置 core-site.xml 文件:

hadoop-hdfs-ha配置-搭建 随笔 第33张

 

 

 hadoop-hdfs-ha配置-搭建 随笔 第34张

 

 

#fs.defaultFS 客户端连接HDFS时,默认的路径前缀。如果前面配置了nameservice ID的值是mycluster,那么这里可以配置为授权信息的一部分
<property> <name>fs.defaultFS</name> <value>hdfs://mycluster</value> </property>

#hadoop.tmp.dir

<property> <name>hadoop.tmp.dir</name> <value>/var/sxt/hadoop/ha</value> </property>



#ha.zookeeper.quorum 标记三台zookeeper地址
<property> <name>ha.zookeeper.quorum</name> <value>node02:2181,node03:2181,node04:2181</value> </property>

 

 

 hadoop-hdfs-ha配置-搭建 随笔 第35张

 

 

分发修改好的文件:

hadoop-hdfs-ha配置-搭建 随笔 第36张

 

 

 

给node01 和 node02 做免秘钥:

node01 -> node01 的免秘钥

node01 -> node02 的免秘钥

node02 -> node02 的免秘钥

node02 -> node01 的免秘钥

 

由于之前完全分布式node01已经和自己还有node02 做过免秘钥现在只需要做

node02 -> node02 的免秘钥

node02 -> node01 的免秘钥

实现方式和

node01 -> node01 的免秘钥

node01 -> node02 的免秘钥 一样

 

 

node02 下:

hadoop-hdfs-ha配置-搭建 随笔 第37张

 

node01 下:

 hadoop-hdfs-ha配置-搭建 随笔 第38张

 

 

 

 

 

 必须优先启动 journalnode:

 启动node01 node02 node03 的 journalnode

hadoop-hdfs-ha配置-搭建 随笔 第39张

 

 hadoop-hdfs-ha配置-搭建 随笔 第40张

 

 hadoop-hdfs-ha配置-搭建 随笔 第41张

 

 hadoop-hdfs-ha配置-搭建 随笔 第42张

 

 

 

 格式化namenode:

 

 hadoop-hdfs-ha配置-搭建 随笔 第43张

 

我这边出现了报错信息:显示无法构建journal  后面两台服务器地址写错了

hadoop-hdfs-ha配置-搭建 随笔 第44张

 

 

 hadoop-hdfs-ha配置-搭建 随笔 第45张

 

 

 

 hadoop-hdfs-ha配置-搭建 随笔 第46张

 

 

 

 

 启动namenode:

 

 hadoop-hdfs-ha配置-搭建 随笔 第47张

 

 

 hadoop-hdfs-ha配置-搭建 随笔 第48张

 

hadoop-hdfs-ha配置-搭建 随笔 第49张

hadoop-hdfs-ha配置-搭建 随笔 第50张

 

 

 

 

格式化ZKFC:

 hadoop-hdfs-ha配置-搭建 随笔 第51张

 

 hadoop-hdfs-ha配置-搭建 随笔 第52张

 

node04 下:

 hadoop-hdfs-ha配置-搭建 随笔 第53张

 hadoop-hdfs-ha配置-搭建 随笔 第54张

 

 

 

 

启动服务:

 

node01:

hadoop-hdfs-ha配置-搭建 随笔 第55张

 

 

node02:

hadoop-hdfs-ha配置-搭建 随笔 第56张

 

 node03:

 hadoop-hdfs-ha配置-搭建 随笔 第57张

 

 node04:

 zoo

 hadoop-hdfs-ha配置-搭建 随笔 第58张

 

 

 

 node01:50070

hadoop-hdfs-ha配置-搭建 随笔 第59张

 

 

 node02:50070

 hadoop-hdfs-ha配置-搭建 随笔 第60张

 

 

 

 

 

演示:

 

杀死node01:

hadoop-hdfs-ha配置-搭建 随笔 第61张

 

hadoop-hdfs-ha配置-搭建 随笔 第62张

hadoop-hdfs-ha配置-搭建 随笔 第63张

 

 hadoop-hdfs-ha配置-搭建 随笔 第64张

 

 

 

 

 

 

 

 

 杀死node02 的 ZKFC:

hadoop-hdfs-ha配置-搭建 随笔 第65张

 

 

hadoop-hdfs-ha配置-搭建 随笔 第66张

hadoop-hdfs-ha配置-搭建 随笔 第67张

 

 

 

 

停止服务:

 node01:

 hadoop-hdfs-ha配置-搭建 随笔 第68张

 

  node02:

hadoop-hdfs-ha配置-搭建 随笔 第69张

 

 node03:

 hadoop-hdfs-ha配置-搭建 随笔 第70张

 

 node04:

 hadoop-hdfs-ha配置-搭建 随笔 第71张

 

 

再次启动:

node02、node03、node04:

zkServer.sh start

 

 

node01:

hadoop-daemon.sh  start namenode

 

node02:

hdfs namenode -bootstrapStandby

 

node01:

start-dfs.sh

扫码关注我们
微信号:SRE实战
拒绝背锅 运筹帷幄