十一、Linux二进制安装zookeeper集群

十一、Linux二进制安装zookeeper集群

1 下载

官网下载:zookeeper官网下载
百度网盘:百度网盘下载
在这里插入图片描述
在这里插入图片描述

2 安装zookeeper集群

解压

cd /opt/zookeeper/
tar -zxvf apache-zookeeper-3.9.2-bin.tar.gz

修改文件目录

mv apache-zookeeper-3.9.2-bin zookeeper-3.9.2

在这里插入图片描述
创建数据存放目录

mkdir /opt/zookeeper/zookeeper-3.9.2/data

修改配置文件

cd /opt/zookeeper/zookeeper-3.9.2/conf/
cp zoo_sample.cfg zoo.cfg 
vi zoo.cfg

直接替换配置文件

# The number of milliseconds of each tick
tickTime=2000
# The number of ticks that the initial
# synchronization phase can take
initLimit=30000
# The number of ticks that can pass between
# sending a request and getting an acknowledgement
syncLimit=10
# the directory where the snapshot is stored.
# do not use /tmp for storage, /tmp here is just
# example sakes.
dataDir=/opt/zookeeper/zookeeper-3.9.2/data
# 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=2000
maxSessionTimeout=60000000
#
# Be sure to read the maintenance section of the
# administrator guide before turning on autopurge.
#
# https://zookeeper.apache.org/doc/current/zookeeperAdmin.html#sc_maintenance
#
# The number of snapshots to retain in dataDir
autopurge.snapRetainCount=10
# Purge task interval in hours
# Set to "0" to disable auto purge feature
autopurge.purgeInterval=1

snapCount=3000000

preAllocSize=131072

## Metrics Providers
#
# https://prometheus.io Metrics Exporter
#metricsProvider.className=org.apache.zookeeper.metrics.prometheus.PrometheusMetricsProvider
#metricsProvider.httpHost=0.0.0.0
#metricsProvider.httpPort=7000
#metricsProvider.exportJvmInfo=true


server.1=192.168.200.161:2888:3888
server.2=192.168.200.162:2888:3888
server.3=192.168.200.163:2888:3888

配置文件解析

# zookeeper 数据目录
dataDir=/opt/zookeeper-3.6.3/data
# 3台服务器的配置
# 这里可以使用IP,也可以使用主机名,但使用主机名时要配置好hosts文件。
server.1=ta01:2888:3888:
server.2=ta02:2888:3888
server.3=ta03:2888:3888

#配置snapshot文件清理策略
# 开启清理事务日志和快照文件的功能,单位是小时。默认是0,表示不开启自动清理功能。
autopurge.purgeInterval=1

# 指定了需要保留的文件数目。默认是保留3个
autopurge.snapRetainCount=10

限制snapshot数量

# 每snapCount次事务日志输出后,触发一次快照(snapshot)ZooKeeper会生成一个snapshot文件和事务日志文件。 默认是100000。
snapCount=3000000

tickTime=2000
ZK中的一个时间单元。ZK中所有时间都是以这个时间单元为基础,进行整数倍配置的。例如,session的最小超时时间是2*tickTime。 默认值2000,单位毫秒。

initLimit=10
Follower在启动过程中,会从Leader同步所有最新数据,然后确定自己能够对外服务的起始状态。Leader允许F在 initLimit 时间内完成这个工作。通常情况下,我们不用太在意这个参数的设置。如果ZK集群的数据量确实很大了,F在启动的时候,从Leader上同步数据的时间也会相应变长,因此在这种情况下,有必要适当调大这个参数了。
initLimit=30000

syncLimit=10
在运行过程中,Leader负责与ZK集群中所有机器进行通信,例如通过一些心跳检测机制,来检测机器的存活状态。如果L发出心跳包在syncLimit之后,还没有从F那里收到响应,那么就认为这个F已经不在线了。注意:不要把这个参数设置得过大,否则可能会掩盖一些问题。 建议设置为10。

maxClientCnxns :
单个客户端与单台服务器之间的连接数的限制,是ip级别的,默认是60,如果设置为0,那么表明不作任何限制。请注意这个限制的使用范围,仅仅是单台客户端机器与单台ZK服务器之间的连接数限制,不是针对指定客户端IP,也不是ZK集群的连接数限制,也不是单台ZK对所有客户端的连接数限制。
建议设置为2000

maxSessionTimeout=60000000
Session超时时间限制,如果客户端设置的超时时间不在这个范围,那么会被强制设置为最大或最小时间。默认的Session超时时间是在2 * tickTime ~ 20 * tickTime 这个范围

preAllocSize=131072
预先开辟磁盘空间,用于后续写入事务日志。默认是64M,每个事务日志大小就是64M。如果ZK的快照频率较大的话,建议适当减小这个参数。单位kb。


service.N =YYY:A:B
N:代表服务器编号(也就是myid里面的值)
YYY:服务器地址
A:表示 FlowerLeader的通信端口,简称服务端内部通信的端口(默认2888B:表示 是选举端口(默认是3888

创建myid文件
注意:echo 的值是需要和上面的 server.1=node161:2888:3888 对应的。比如我的 node161 这台服务器就是 1 node162 这台服务器就是 2

echo 1 > /opt/zookeeper/zookeeper-3.9.2/data/myid
echo 2 > /opt/zookeeper/zookeeper-3.9.2/data/myid
echo 3 > /opt/zookeeper/zookeeper-3.9.2/data/myid

配置环境变量

vi /etc/profile
export ZOOKEEPER_HOME=/opt/zookeeper/zookeeper-3.9.2
export PATH=$PATH:$ZOOKEEPER_HOME/bin
source /etc/profile

启动zookeeper

cd /opt/zookeeper/zookeeper-3.9.2/bin/

启动

./zkServer.sh start

停止

./zkServer.sh stop

查看状态

./zkServer.sh status

注意:启动会稍微慢一些,启动后稍等一下再去查询状态
在这里插入图片描述

3 设置开机自启

zookeeper注册服务脚本

vi /etc/systemd/system/zookeeper.service
[Unit]
Description=zookeeper.service
After=network.target

[Service]
Type=forking
User=root
Group=root
Environment="PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/local/java/jdk1.8.0_371/bin"
ExecStart=/opt/kafka/zookeeper-3.9.2/bin/zkServer.sh start
ExecStop=/opt/kafka/zookeeper-3.9.2/bin/zkServer.sh stop
ExecReload=/opt/kafka/zookeeper-3.9.2/bin/zkServer.sh restart
Restart=on-failure
                                                                                                                  
[Install]
WantedBy=multi-user.target
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值