(大数据三)搭建通过JQM实现的HA平台

本文详细介绍了如何通过JQM搭建Hadoop的高可用平台,包括手动和自动故障转移的配置步骤。手动故障转移涉及NameNode的配置、JournalNode的启动和元数据同步等;自动故障转移则讲解了独立模式和集群模式下的Zookeeper配置,以及启用自动容灾的设置。
摘要由CSDN通过智能技术生成

手动故障转移

      

1)配置名称服务的逻辑名称

命令:vim $HADOOP_HOME/etx/Hadoop/hdfs-site.xml

内容处置:修改dfs.nameservices属性值为myCluster,可以取其他名称,没有添加即可

      

2)为名称服务中每个NameNode配置唯一标志符

命令:vim $HADOOP_HOME/etx/Hadoop/hdfs-site.xml

内容处置:修改dfs.ha.namenodes.mycluster属性值为“NN1NN2”,可以取其他名称,没有添加即可

      

3)配置要监听的每个NameNode的完全限定的RPC地址

命令:vim $HADOOP_HOME/etx/Hadoop/hdfs-site.xml

内容处置:修改dfs.namenode.rpc-address.mycluster.nn1属性值为master:9000,修改dfs.namenode.rpc-address.mycluster.nn2的属性值为slave1:9000

      

4)配置要监听的每个NameNode的完全限定HTTP地址

命令:vim $HADOOP_HOME/etx/Hadoop/hdfs-site.xml

内容处置:修改dfs.namenode.http-address.mycluster.nn1属性值为master:50070,修改dfs.namenode.http-address.mycluster.nn2的属性值为slave1:50070

      

5)标志NameNodes将写入/读取编辑的JN组的URI

命令:vim $HADOOP_HOME/etx/Hadoop/hdfs-site.xml

内容处置:修改dfs.namenode.shared.edits.dir属性值为qjournal://master:8485;slave1:8485;slave2:8485/mycluster

      

6)配置HDFS客户端用于练习Active NameNodeJAVA

命令:vim $HADOOP_HOME/etx/Hadoop/hdfs-site.xml

内容处置:修改dfs.client.failover.proxy.provider.mycluster属性值为org.apache.hadoop.hdfs.server.namenode.ha.ConfiguredFailoverProxyProvider

      

7)配置脚本或JAVA类的列表,用于在故障转移期间屏蔽Active NameNode

命令:vim $HADOOP_HOME/etx/Hadoop/hdfs-site.xml

内容处置:修改dfs.ha.fencing.methods属性值为sshfencedfs.ha.fencing.ssh.private-key-files属性值为~/.ssh/id_rsa

      

8)配置默认NameNode请求路径

命令:vim $HADOOP_HOME/etx/Hadoop/core-site.xml

内容处置:修改fs.defaultFS属性值为hdfs://mycluster

      

9)配置JournalNode守护程序存储本地状态的路径

命令:vim $HADOOP_HOME/etx/Hadoop/core-site.xml

内容处置:修改dfs.journalnode.edits.dir属性值为$HADOOP_HOME/tmp

      

10)启动所有节点上的JournalNode守护进程

命令:hadoop-daemon.sh start journalnode

      

11)同步元数据

命令:

①新搭建集群

hdfs namenode -format

命令解释:新搭建集群应首先在其中一个NameNode上运行format命令

hdfs namenode -bootstrapStandby

命令解释:在未格式化的机器上运行该命令,目的是为了将NameNode元数据目录的内容复制到未格式化的NameNode

②非新搭建集群

hdfs namenode -bootstrapStandby

命令解释:在未格式化的机器上运行该命令

      

12)使用本地NameNode编辑目录中的编辑数据初始化JournalNode

命令:

hadoop-daemon.sh start namenode

命令解释:关闭namenode

hdfs namenode -initializeSharedEdits

命令解释:该命令为初始化命令

      

13)开启集群

命令:start-dfs.sh

      

14)通过浏览配置的HTTP地址分别访问每个NameNode的网页查看NameNode的状态(“active”或“standby”)

网址:

master:50070

slave1:50070

注释:其他用法参照http://hadoop.apache.org/docs/stable/hadoop-project-dist/hadoop-hdfs/HDFSHighAvailabilityWithQJM.html#Deployment

 

自动故障转移独立模式

 

1)解压zookeeper3.4.6压缩包

命令:tar -zxvf zookeeper3.4.6

 

2)创建软链接

命令:ln -s zookeeper3.4.6 zookeeper

 

3)配置环境变量

命令:sudo vim /etc/profile

内容处置:添加以下内容

ZOOKEEPER_HOME=~/apps/zookeeper

PATH=$PATH:$ZOOKEEPER_HOME/bin

export  ZOOKEEPER_HOME PATH

 

4)生效配置文件

命令:source /etc/profile

 

5conf目录下复制zoo_sample.cfg并重命名为zoo.cfg

命令:cp zoo_sample.cfg zoo.cfg

内容处置:添加或修改以下内容

tickTime=2000

initLimit=10

syncLimit=5

dataDir=$ZOOKEEPER_HOME/tmp/zookeeper

clientPort=2181

 

6)在本地开启server

命令:zkServer.sh start

 

7)使用客户端连接服务

命令:zkCli.sh [-server] [host]

 

8)进行一些命令的操作

命令:help

 

9)退出客户端

命令:quit/close

 

10)关闭进程

命令:zkServer.sh stop

 

自动故障转移集群模式

 

1)修改zoo.cfg文件

命令:cp zoo_sample.cfg zoo.cfg

内容处置:添加或修改以下内容

tickTime=2000

initLimit=5

syncLimit=2

dataDir=$ZOOKEEPER_HOME/tmp/zookeeper

clientPort=2181

server.1=master:2888:3888

server.2=slave1:2888:3888

server.3=slave2:2888:3888

 

2)将修改后的zookeeper复制到其他slave从节点

命令:scp ~/apps/zookeeper3.4.6 用户名@slave:~/apps/

 

3)添加myid文件

命令:vim $ZOOKEEPER_HOME/tmp/zookeeper/myid

内容处置:文件内容为server.x中的x,一一对应

注释:每台机器都要有myid文件且内容为其server.x中对应的x

 

4)配置集群支持自动容灾

命令:vim $HADOOP_HOME/etx/Hadoop/hdfs-site.xml

内容处置:修改dfs.ha.automatic-failover.enabled属性值为true

 

5)配置zookeeper服务器

命令:vim $HADOOP_HOME/etx/Hadoop/core-site.xml

内容处置:修改ha.zookeeper.quorum属性值为master:2181,slave1:2181,slave2:2181

 

6)在NameNode所在机器上格式化

命令:hdfs zkfc -formatZK

 

7)测试

步骤:同二(14

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值