从零搭建hadoop集群之zookeeper集群安装

1. 从官方渠道获取对应的zookeeper的安装包

http://archive.apache.org/dist/zookeeper/

zookeeper-3.4.10.tar.g

2. 上传zookeeper安装包到 hadoop01节点的/home/hadoop/software目录下并解压

tar -zxvf zookeeper-3.4.10.tar.gz -C ../module/

3. 修改配置文件

cd /home/hadoop/module/zookeeper-3.4.10/conf

更改配置文件名称

mv zoo_sample.cfg  zoo.cfg
vim zoo.cfg
# The number of milliseconds of each tick
tickTime=2000
# The number of ticks that the initial 
# synchronization phase can take
initLimit=10
# The number of ticks that can pass between 
# sending a request and getting an acknowledgement
syncLimit=5
# the directory where the snapshot is stored.
# do not use /tmp for storage, /tmp here is just 
# example sakes.
dataDir=/home/hadoop/module/zkdata
dataLogDir=/home/hadoop/module/logs/zklog
# the port at which the clients will connect
clientPort=2181
# the maximum number of client connections.
# increase this if you need to handle more clients
#maxClientCnxns=60
#
# Be sure to read the maintenance section of the 
# administrator guide before turning on autopurge.
#
# http://zookeeper.apache.org/doc/current/zookeeperAdmin.html#sc_maintenance
#
# The number of snapshots to retain in dataDir
#autopurge.snapRetainCount=3
# Purge task interval in hours
# Set to "0" to disable auto purge feature
#autopurge.purgeInterval=1
server.1=hadoop01:2888:3888
server.2=hadoop02:2888:3888
server.3=hadoop03:2888:3888
  • tickTime:基本事件单元,这个时间是作为Zookeeper服务器之间或客户端与服务器之间维持心跳的时间间隔,每隔tickTime时间就会发送一个心跳;最小 的session过期时间为2倍tickTime
  • dataDir:存储内存中数据库快照的位置,除非另有说明,否则指向数据库更新的事务日志。注意:应该谨慎的选择日志存放的位置,使用专用的日志存储设备能够大大提高系统的性能,如果将日志存储在比较繁忙的存储设备上,那么将会很大程度上影像系统性能
  • client:监听客户端连接的端口
  • initLimit:允许follower连接并同步到Leader的初始化连接时间,以tickTime为单位。当初始化连接时间超过该值,则表示连接失败
  • syncLimit:表示Leader与Follower之间发送消息时,请求和应答时间长度。如果follower在设置时间内不能与leader通信,那么此follower将会被丢弃
  • server.A=B:C:D

        A:其中 A 是一个数字,表示这个是服务器的编号;

        B:是这个服务器的 ip 地址;

        C:Leader选举的端口;

        D:Zookeeper服务器之间的通信端口

其中 A 对应下面我们即将介绍的myid 文件。B是集群的各个IP地址,C:D 是端口配置

4. 分发安装包到所有的zookeeper节点

scp -r zookeeper-3.4.10/ hadoop@hadoop02:$PWD
scp -r zookeeper-3.4.10/ hadoop@hadoop03:$PWD

5. 所有节点配置环境变量

vim ~/.bashrc

添加以下内容

export ZOOKEEPER_HOME=/home/hadoop/module/zookeeper-3.4.10
export PATH=$PATH:$ZOOKEEPER_HOME/bin

刷新环境变量文件使新增的生效

source ~/.bashrc

6.   给每一个zookeeper server 要分配一个不重复的1-255之间的serverid,在dataDir目录中必须加入一个文件叫做myid,myid文件中放入一个serverid

mkdir /home/hadoop/module/zkdata
echo 1 > myid    #不要多出空格,不要多出空行,每个节点都要进行这个操作,值要与配置中的id对应

 7. 直接启动zookeeper   不需要初始化

        zkServer.sh start 启动

        zkServer.sh stop   停止

        zkServer.sh status  查看角色的状态

posted @ 2020-12-16 19:16  root-kai  阅读(98)  评论(0编辑  收藏  举报