zookeeper搭建(单机模式和集群模式)

目录

单机模式:

集群搭建


单机模式:

1.新建data和logs目录(data目录用来存放数据库快照,logs目录用来存放日志文件)

复制代码
[root@master dev]# mkdir -p /home/apps/zookeeper/data
[root@master dev]# mkdir -p /home/apps/zookeeper/logs

2.找到zookeeper目录下的 conf 配置文件夹

复制代码
[root@master dev]# cd /home/apps/zookeeper/conf/
[root@master conf]# ll

total 16
-rw-r--r--. 1 root root  535 May  4  2020 configuration.xsl
-rw-r--r--. 1 root root 2712 May  4  2020 log4j.properties
-rw-r--r--. 1 root root  922 May  4  2020 zoo_sample.cfg
-rw-r--r--. 1 root root  152 Jan 15 13:05 zoo.cfg.dynamic.next

3.重命名 zoo_sample.cfg 为zoo.cfg

复制代码
[root@master conf]# mv zoo_sample.cfg zoo.cfg

4.用vi命令打开zoo.cfg文件

复制代码
[root@master conf]# vi zoo.cfg

# The number of milliseconds of each tick
tickTime=2000  #Zookeeper 服务器之间或客户端与服务器之间维持心跳的时间间隔,单位为毫秒
# The number of ticks that the initial
# synchronization phase can take
initLimit=10 #表示允许从服务器连接到leader并完成数据同步的时间,总的时间长度就是 initLimit * tickTime 秒
# The number of ticks that can pass between
# sending a request and getting an acknowledgement
syncLimit=5 #配置 Leader 与 Follower 之间发送消息,请求和应答时间长度,最长不能超过多少个 tickTime 的时间长度,总的时间长度就是 syncLimit * tickTime 秒 
# the directory where the snapshot is stored.
# do not use /tmp for storage, /tmp here is just
# example sakes.
dataDir=/home/apps/zookeeper/data #Zookeeper 保存数据的数据库快照的位置
dataLogDir=/home/apps/zookeeper/logs #事务日志日志路径,若没提供的话则用dataDir
# the port at which the clients will connect
clientPort=2181 #Zookeeper服务器监听的端口,以接受客户端的访问请求
# the maximum number of client connections.
# increase this if you need to handle more clients
#maxClientCnxns=60 # 限制连接到ZK上的客户端数量,并且限制并发连接数量,值为0表示不做任何限制
#
# 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 # 自动清理日志,该参数设置保留多少个快照文件和对应的事务日志文件,默认为3,如果小于3则自动调整为3
# Purge task interval in hours
# Set to "0" to disable auto purge feature
#autopurge.purgeInterval=1

5.配置完之后就可以直接启动Zookeeper。

复制代码
[root@master conf]# cd /home/apps/zookeeper/bin
[root@master bin]# ./zkServer.sh start

ZooKeeper JMX enabled by default
Using config: /home/apps/zookeeper/bin/../conf/zoo.cfg
Starting zookeeper ... STARTED

启动成功

6.可以使用 status 命令查看zookeeper状态

复制代码
[root@master bin]# ./zkServer.sh status

集群搭建:

1.解压压缩包

复制代码
tar -zxvf /opt/software/apache-zookeeper-3.5.7-bin.tar.gz -C /opt/module/

2.进入zookeeper下面的conf,编辑zoo开头文件(修改框起来的):

复制代码
cd /opt/module/zookeeper/conf

vim zoo_sample.cfg

3.进入到zookeeper下,新建data目录

复制代码
mkdir data

进入data目录,新建myid文件

复制代码
cd /opt/module/zookeeper/data

vim myid

在myid文件中写入1:

4.分发文件:

分发给bigdata2:

复制代码
scp -r /opt/module/zookeeper root@bigdata2:/opt/module/

分发给bigdata3:

复制代码
scp -r /opt/module/zookeeper root@bigdata3:/opt/module/

5.修改bigdata2和bigdata3中zookeeper下面data目录中的myid文件

bigdata2:

复制代码
[root@bigdata2 /] cd /opt/module/zookeeper/data

编辑myid:

复制代码
[root@bigdata2 data]vim myid

将原来的1修改为2:

bigdata3:

复制代码
[root@bigdata2 /]cd /opt/module/zookeeper/data

修改myid文件:

复制代码
[root@bigdata2 data]vim myid

将原来的1修改为3:

5.启动并查看

启动zookeeper:

复制代码
[root@bigdata1 /]sh /opt/module/zookeeper/bin/zkServer.sh start
复制代码
[root@bigdata2 /]sh /opt/module/zookeeper/bin/zkServer.sh start
复制代码
[root@bigdata3 /]sh /opt/module/zookeeper/bin/zkServer.sh start

查看状态:

相关推荐
物随心转2 分钟前
Arm的协处理器
linux·arm开发
小婷要努力4 分钟前
Linux常用命令速查表
linux·运维·服务器
微风◝9 分钟前
AlmaLinux9-网络管理篇-更改网络接口名称
linux·运维·网络
song50110 分钟前
鸿蒙 Flutter 图像编辑:原生图像处理与滤镜开发
图像处理·人工智能·分布式·flutter·华为·交互
CQ_YM11 分钟前
Linux标准IO
linux·系统编程·标准io
zl_dfq14 分钟前
Linux 之 【简易版的命令行解释器】(getcwd、strtok)
linux
怀旧,15 分钟前
【Linux系统编程】10. 进程控制(下)
linux·运维·服务器
技术破壁人16 分钟前
《SkyWalking 分布式链路追踪实战》—— 快速定位微服务性能瓶颈!
分布式·微服务·skywalking
Evan芙18 分钟前
DNS域名三级结构,DNS服务工作原理,涉及递归和迭代查询原理总结
linux·运维·服务器
九河云20 分钟前
华为云 GaussDB 分布式架构解析:企业级数据库高可用与性能调优方案
分布式·架构·华为云·云计算·gaussdb