zookeeper集群搭建

首先  先测试Hadoop集群时间,确保集群时间同步

Hadoop集群机器策划

192.168.137.2  hadoop01 nn1 dn   zk  qjm

192.168.137.3 hadoop02 nn2   dn   zk  qjm

192.168.137.4 hadoop03 dn   zk  qjm

JDK规划  :1.7以上

防火墙规划:系统防火墙关闭

SSH免密码规划

hadoop01可免密访问hadoop02,hadoop03

hadoop02可免密访问hadoop01,hadoop03

生成密钥:#ssh-keygen -t rsa

向两外两台主机以及自己发送:ssh-copy-id

HDFS实现自动切换HA(全新HDFS)

1>修改 hadoop-env.sh

export JAVA_HOME=/home/master/modules/jdk1.7.0_67

2>修改 core-site.xml

<configuration>

<property>

  <name>fs.defaultFS</name>

  <value>hdfs://xiaojiu</value>

</property>

<property>

  <name>hadoop.tmp.dir</name>

 <value>/home/master/hadoopdata/tmp</value>

</property>

<property>

<name>io.file.buffer.size</name>

<value>4096</value>

</property>

</configuration>

3>修改 hdfs-site.xml

中文注释不要带

<configuration>

<!-- 指定hdfs的nameservice为beicai,就是那个代理程序,询问zk集群哪个namenode还活着 -->

<property>

<name>dfs.nameservices</name>

<value>xiaojiu</value>

</property>

<!—指定hdfs的两个NameNode都是什么名字(等会儿下面会配置他们所对应的机器的信息)-->

<property>

  <name>dfs.ha.namenodes.xiaojiu</name>

  <value>nn1,nn2</value>

</property>

<!—NameNode1的rpc通讯地址-->

<property>

  <name>dfs.namenode.rpc-address.xiaojiu.nn1</name>

  <value>master:8020</value>

</property>

<!—NameNode2的rpc通讯地址-->

<property>

  <name>dfs.namenode.rpc-address.xiaojiu.nn2</name>

  <value>server01:8020</value>

</property>

<!—NameNode1的web界面地址-->

<property>

  <name>dfs.namenode.http-address.xiaojiu.nn1</name>

  <value>master:50070</value>

</property>

<!—NameNode2的web界面地址-->

<property>

  <name>dfs.namenode.http-address.xiaojiu.nn2</name>

  <value>server01:50070</value>

</property>

<!---namenode存放元数据信息的Linux本地地址,这个目录不需要我们自己创建->

<property>

  <name>dfs.namenode.name.dir</name>

  <value>/home/master/modules/hadoopdata/name</value>

</property>

<!—datanode存放用户提交的大文件的本地Linux地址,这个目录不需要我们自己创建-->

<property>

  <name>dfs.datanode.data.dir</name>

  <value>/home/master/modules/hadoopdata/name/data</value>

</property>

<!—QJM存放共享数据的方式-->

<property>

  <name>dfs.namenode.shared.edits.dir</name>

  <value>qjournal:// hadoop01:8485; hadoop02:8485; hadoop03:8485/xiaojiu</value>

</property>

<!—单个QJM进程(角色)存放本地edits文件的Linux地址-->

<property>

  <name>dfs.journalnode.edits.dir</name>

  <value>/home/master/hadoopdata/journal1</value>

</property>

<!—开启hdfs的namenode死亡后自动切换-->

<property>

  <name>dfs.ha.automatic-failover.enabled</name>

  <value>true</value>

</property>

<!-- 指定zookeeper集群地址,辅助两个namenode进行失败切换 -->

<property>

        <name>ha.zookeeper.quorum</name>

        <value>master:2181,server01:2181,server02:2181</value>

</property>

<!—zkfc程序的主类-->

<property>

<name>dfs.client.failover.proxy.provider.xiaojiu</name>

<value>org.apache.hadoop.hdfs.server.namenode.ha.ConfiguredFailoverProxyProvider</value>

</property>

<!—防止多个namenode同时active(脑裂)的方式-->

<property>

    <name>dfs.ha.fencing.methods</name>

    <value>shell(/bin/true)</value>

</property>

<!—指定本机的私钥所在目录-->

<property>

        <name>dfs.ha.fencing.ssh.private-key-files</name>

        <value>/home/master/.ssh/id_rsa</value>

</property>

<!—指定ssh通讯超时时间-->

<property>

        <name>dfs.ha.fencing.ssh.connect-timeout</name>

        <value>30000</value>

</property>

</configuration>

启动顺序

1>先启动zk集群

在各个zk服务其上执行如下命令:sh zkServer.sh start

2>在master上启动所有journalnode

 hadoop-daemons.sh start journalnode

3>格式化HDFS(在master上执行命令)

 hadoop namenode -format

4>格式化后在master上执行:

hadoop-daemon.sh start namenode

5>在server01hadoop目录bin下执行:

hdfs namenode -bootstarpStandby

6>格式化ZK(在Master上执行即可)

 hdfs zkfc -formatZK

7>启动HDFS(在master上执行)

start-dfs.sh

测试:

在网页上打开 :192.168.137.2:50070

 

再打开:192.168.137.3:50070

完成之后再回到ip为192.168.137.2的虚拟机上杀死namenode

kill -9 +namenode的序列号

再次回到网页,打开192.168.137.2:50070出现网页找不到

打开192.168.137.3,显示:

安装完成!!!

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值