Hadoop分布式 之Zookeeper集群安装

本文档详细介绍了Zookeeper的分布式集群安装过程,包括在Ubuntu 16.04环境下搭建3台主机的Zookeeper集群,从Standalone模式到Distributed模式的配置步骤。在集群配置中,强调了Zookeeper的奇数台机器设置以确保高可用性,并提供了启动、检查状态的方法,为后续的Hadoop等分布式应用打下基础。
摘要由CSDN通过智能技术生成

ZooKeeper是一个分布式开源框架,提供了协调分布式应用的基本服务,它向外部应用暴露一组通用服务——分布式同步(Distributed Synchronization)、命名服务(Naming Service)、集群维护(Group Maintenance)等,简化分布式应用协调及其管理的难度,提供高性能的分布式服务。ZooKeeper本身可以以Standalone模式安装运行,不过它的长处在于通过分布式ZooKeeper集群(一个Leader,多个Follower),基于一定的策略来保证ZooKeeper集群的稳定性和可用性,从而实现分布式应用的可靠性。
zookeeper图示说明

zookeeper集群部署环境

  • ubuntu-16.04.1-server * 3(做3主机的集群)
  • 主机名:hadoopm、hadoop_s1、hadoop_s2
  • 分布式:Hadoop2.7 集群
  • zookeeper安装包:zookeeper-3.4.5.tar.gz
    Zookeeper集群的配置需要奇数台机器,一个为leader,其他为follower,这里选择最小的3台机器作为集群。

ZooKeeper Standalone模式

  • 从Apache网站上(zookeeper.apache.org)下载ZooKeeper软件包
  • 解压安装包到指定位置:tar -zxvf zookeeper-3.4.5.tar.gz -C /usr/local/。
    我解压在/usr/local/目录下,jdk、Hadoop均安装在此目录,方便管理。
  • 修改配置内容:
    将zookeeper-3.4.5/conf目录下面的 zoo_sample.cfg复制一份改名为zoo.cfg
    cp zoo_sample.cfg zoo.cfg
# The number of milliseconds of each tick
tickTime=2000

# The number of ticks that the initial 
# synchronization phase can take
initLimit=5

# The number of ticks that can pass between 
# sending a request and getting an acknowledgement
syncLimit=2

# the directory where the snapshot is stored.
# do not use /tmp for storage, /tmp here is just 
# example sakes.
dataDir=/root/zookeeper/data

# the port at which the clients will connect
clientPort=2181  
  • 启动ZooKeeper单节点服务器进程,查看是否正常
    在Zookeeper目录下的bin文件加下,存放着各种操作命令,如下:
    这里写图片描述
    其中.sh均为linux系统下的命令,.cmd为windows系统下命令,zkCli.sh是启动zookeeper客户端命令。
    启动:
    cd /zookeeper-3.4.5/bin
    ./zkServer.sh start

  • 使用jps查看进程,会发现多出来一条QuorumPeerMain进程。

ZooKeeper Distributed模式

在有了单节点的zookeeper后,配置zookeeper分布式只需再次基础上做出修改即好。
  • 增加ZooKeeper配置文件
    在conf/zoo.cfg中增加配置信息:
  server.1=hadoopm:2888:3888  
  server.2=hadoop_s1:2888:3888  
  server.3=hadoop_s2:2888:3888  

server后面的数字即为各个zookeeper的编号,在后面需要为zookeeper设置编号。

  • 远程复制分发安装文件
    在zookeeper存储目录下(/usr/local/),将配置好的文件zookeeper-3.4.5通过scp命令发送到集群的其他主机:
scp -r zookeeper-3.4.5/ root@hadoop_s1:/usr/local
scp -r zookeeper-3.4.5/ root@hadoop_s2:/usr/local
  • 设置myid
    在我们配置的dataDir指定的目录下面,创建一个myid文件,里面内容为一个数字,用来标识当前主机,conf/zoo.cfg文件中配置的server.X中X即为此数字。
root@hadoopm:echo "1" > /root/zookeeper/data/myid
root@hadoop_s1:echo "2" > /root/zookeeper/data/myid
root@hadoop_s2:echo "3" > /root/zookeeper/data/myid
  • 启动ZooKeeper集群
    依次在各个节点启动Zookeeper,然后可以用./zkServer.sh status来查看状态
root@hadoopm:/usr/local/zookeeper-3.4.5/bin# ./zkServer.sh status
JMX enabled by default
Using config: /usr/local/zookeeper-3.4.5/bin/../conf/zoo.cfg
Mode: follower

root@hadoop_s1:/usr/local/zookeeper-3.4.5/bin# ./zkServer.sh status
JMX enabled by default
Using config: /usr/local/zookeeper-3.4.5/bin/../conf/zoo.cfg
Mode: leader

root@hadoop_s2:/usr/local/zookeeper-3.4.5/bin# ./zkServer.sh status
JMX enabled by default
Using config: /usr/local/zookeeper-3.4.5/bin/../conf/zoo.cfg
Mode: follower

至此,Zookeeper集群安装完毕,可以为以后的Hbase集群等工作打下基础。

参考:ZooKeeper-3.3.4集群安装配置

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值