centos7.3上部署zookeeper集群环境

一、前期准备

1、下载zookeeper安装包

zookeeper官方下载地址:http://www-eu.apache.org/dist/zookeeper/

zookeeper-3.5.3-beta.tar.gz

2、准备好要安装的集群环境的目标机器

3、将下载好的压缩包拷贝到集群机器中

----可利用shell软件的rz命令进行拷贝

4、安装JDK,可参照:https://blog.csdn.net/xuexi_39/article/details/82854735

5、创建hadoop用户并赋予管理员权限

二、解压zookeeper到目标安装目录中

1、将压缩包解压到/usr/local目录下

tar -xvf zookeeper-3.5.3-beta.tar.gz -C /usr/local/

2、重命名zookeeper文件名名称

mv zookeeper-3.5.3-beta  zookeeper

三、将zookeeper目录赋予所有者及权限归属为hadoop用户

chown -hR hadoop /usr/local/zookeeper/   # 修改所有者为hadoop
chgrp -hR hadoop /usr/local/zookeeper/   # 修改所属组为hadoop

四、添加系统环境变量

1、打开vim /etc/profile在底部添加如下信息

#zookeeper environment
export ZOOKEEPER_HOME=/usr/local/zookeeper
export PATH=$ZOOKEEPER_HOME/bin:$PATH

2、source /etc/profile 使得添加的环境变量信息立即生效

3、使用echo $ZOOKEEPER_HOME检测环境变量是否生效

4、集群中的其它分支节点重复以上步骤,保证环境变量配置成功

五、修改zookeeper配置文件

1、将配置文件zoo_sample.cfg 复制一份重命名为 zoo.cfg

2、在/usr/local/zookeeper目录中新增data及datalog文件夹

mkdir /usr/local/zookeeper/data
​
mkdir /usr/local/zookeeper/datalog

​

3、打开zoo.cfg,并修改以下内容:

ticketTime=2000 #服务器之间或客户端与服务器之间维持心跳的时间间隔,每隔tickTime时间就会发送一个心跳。
initLimit=10 #配置 Zookeeper 接受客户端(此客户端不是用户连接 Zookeeper 服务器的客户端,而是 Zookeeper 服务器集群中连接到 Leader 的 Follower 服务器)初始化连接时最长能忍受多少个心跳时间间隔数。当已超过initLimit个tickTime长度后 Zookeeper 服务器还没有收到客户端的返回信息,则表明客户端连接失败。总的时间长度就是 initLimit * tickTime 秒。
syncLimit=5 #配置 Leader 与 Follower 之间发送消息,请求和应答时间长度,最长不能超过多少个 tickTime 的时间长度,总的时间长度就是 syncLimit * tickTime 秒。
clientPort=2181 #Zookeeper服务器监听的端口,以接受客户端的访问请求。
dataDir=/usr/local/zookeeper/data #Zookeeper 保存数据的目录,默认情况下,Zookeeper 将写数据的日志文件也保存在这个目录里。
dataLogDir=/usr/local/zookeeper/datalog #dataLogDir:若没提供的话则用dataDir。zookeeper的持久化都存储在这两个目录里。dataLogDir里是放到的顺序日志(WAL)。而dataDir里放的是内存数据结构的snapshot,便于快速恢复。为了达到性能最大化,一般建议把dataDir和dataLogDir分到不同的磁盘上,以充分利用磁盘顺序写的特性。
#server.A=B:C:D:其中 A 是一个数字,表示这个是第几号服务器;B 是这个服务器的 ip 地址;C 表示的是这个服务器与集群中的 Leader 服务器交换信息的端口;D 表示的是万一集群中的 Leader 服务器挂了,需要一个端口来重新进行选举,选出一个新的 Leader,此端口就是用来执行选举时服务器相互通信的端口。如果是伪集群的配置方式,由于 B 都是一样,所以不同的 Zookeeper 实例通信端口号不能一样,所以要给它们分配不同的端口号。2888端口是zookeeper服务相互通信使用的,3888端口是zookeeper服务选举使用的
server.1=192.168.251.28:2888:3888
server.2=192.168.251.29:2888:3888
server.3=192.168.251.30:2888:3888

4、将配置文件远程拷贝到其它分支节点对应的文件目录中

scp zoo.cfg hadoop@dataserver1:/usr/local/zookeeper/conf
scp zoo.cfg hadoop@dataserver2:/usr/local/zookeeper/conf

5、添加myid文件

echo "1" >> /usr/local/zookeeper/data/myid
echo "2" >> /usr/local/zookeeper/data/myid
echo "3" >> /usr/local/zookeeper/data/myid

六、启动zookeeper

1、进入/usr/local/zookeeper/bin目录中

2、执行./zkServer.sh start命令,启动zookeeper服务

3、分别启动集群中所有的zookeeper服务

4、查看zookeeper状态

猜你喜欢

转载自blog.csdn.net/xuexi_39/article/details/82867995