Zookeeper集群安装

Zookeeper集群安装

一、 机器准备

  • 准备三台机器:4CPU 4G内存
  • 修改三台机器的hostname分别为zk01、zk02、zk03
  • 配置host

vim /etc/hosts

10.0.0.11 zk01

10.0.0.12 zk02

10.0.0.13 zk03

二、 安装jdk

rpm -ivh jdk-8u231-linux-x64.rpm

三、 下载

进入要下载的版本的目录,选择.tar.gz文件下载,这里我们选择3.5.5版本
下载链接:http://archive.apache.org/dist/zookeeper/

wget https://archive.apache.org/dist/zookeeper/zookeeper-3.5.5/apache-zookeeper-3.5.5-bin.tar.gz

四、 安装

使用tar解压要安装的目录即可
这里以解压到/opt/server,实际安装根据自己的想安装的目录修改(注意如果修改,那后边的命令和配置文件中的路径都要相应修改)

mkdir -p /opt/server
tar xf apache-zookeeper-3.5.5-bin.tar.gz -C /opt/server/
cd /opt/server
mv apache-zookeeper-3.5.5-bin zookeeper

五、 配置

1. 在主目录下创建data和logs两个目录用于存储数据和日志:

mkdir -p /data/zookeeper/{data,logs}

2. zk01的/data/zookeeper/data/myid配置如下:
echo '1' > /data/zookeeper/data/myid
3. zk02的/data/zookeeper/data/myid配置如下:
echo '2' > /data/zookeeper/data/myid
4. zk03的/data/zookeeper/data/myid配置如下:
echo '3' > /data/zookeeper/data/myid
5. 在三台zookeeper机器的conf目录下新建zoo.cfg文件,写入以下内容保存:

vim /opt/server/zookeeper/conf/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=/data/zookeeper/data
dataLogDir=/data/zookeeper/logs
# 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=10.0.0.11:2888:3888
server.2=10.0.0.12:2888:3888
server.3=10.0.0.13:2888:3888
  1. 配置说明

zookeeper服务器集群中的每台服务器都有一个唯一的ID,取值在1~255之间。通过在 dataDir目录下的myid 文件中指定
每台服务器必须添加这样的配置 server.n=hostname:port1:port2; n是服务器的ID,port1 是跟随者连接领导者的端口,port2是用于选举领导者
集群模式下还有2个参数 initLimit和syncLimit
initLimit 是跟随者与领导者进行连接和同步的时间范围,如果设定的时间范围内半数以上的跟随者未完成同步,则领导者会放弃自己的领导地位,进行一次领导选取。如果频繁发生领导选取,则可能该参数的值太小了。
syncLimit 跟随者与领导者同步的时间。如果设定的时间内,跟随者未能完成同步,会自己重启。所有关联到该跟随者的客户端将连接到另外一个跟随者。

六、 配置环境变量

vim /etc/profile

export ZOOKEEPER_HOME=/opt/server/zookeeper
export PATH=$PATH:$ZOOKEEPER_HOME/bin:$ZOOKEEPER_HOME/conf

source /etc/profile

七、 启动和停止

进入bin目录,启动、停止、重启(start、stop、restart和status)和查看当前节点状态(包括集群中是何角色)执行:

zkServer.sh start

正常启动输出结果如下

/usr/bin/java

ZooKeeper JMX enabled by default

Using config: /opt/server/zookeeper/bin/../conf/zoo.cfg

Client port found: 2181. Client address: localhost.

Mode: leader

查询是否启动成功

zkServer.sh status

样例输出

/usr/bin/java
ZooKeeper JMX enabled by default
Using config: /opt/server/zookeeper/bin/../conf/zoo.cfg
Client port found: 2181. Client address: localhost.
Mode: follower

查询启动日志

tailf -n 100 /opt/server/zookeeper/logs/zookeeper-root-server-XXX.out 
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值