中间件-单机版部署ZooKeeper

8/4/2020 中间件

本文主要讲解下一台服务器如何部署ZooKeeper服务。

# 前言

ZooKeeper是一个高性能的分布式一致系统,在分布式系统中有着广泛的应用。今天简单介绍下如何搭建最简单的ZooKeeper集群。

# 下载地址

官网下载地址:https://zookeeper.apache.org/releases.html#download

这里以zookeeper-3.4.10版本为例,在同一个服务器下部署。

# 部署

# 配置JAVA环境

  • 官网下载

地址: https://www.oracle.com/java/technologies/javase-downloads.html

这里我以JDK1.8为例

  • 解压
$ tar zxf jdk-8u251-linux-x64.tar.gz
1
  • 配置环境变量

这里我解压后放到家目录下的3rd目录,如果是其他目录,请根据实际修改。

$ vim ~/.bash_profile

export JAVA_HOME=$HOME/3rd/jdk1.8.0_251
export PATH=$JAVA_HOME/bin:$JAVA_HOME/jre/bin:$PATH
export CLASSPATH=.:$JAVA_HOME/lib:$JAVA_HOME/jre/lib:$CLASSPATH

export PATH=$JAVA_HOME/bin:$PATH
1
2
3
4
5
6
7
  • 生效环境变量
$ source ~/.bash_profile
1

# 验证环境变量是否生效

$ which java
~/3rd/jdk1.8.0_171/bin/java
1
2

# 解压后复制为三个文件夹

zk-3.4.10-kafka-5001
zk-3.4.10-kafka-5002
zk-3.4.10-kafka-5003
1
2
3

# 创建数据文件夹

$ mkdir -p /opt/jaysonzhang/3rd/zookeeper/zkdata/zkdata1/snapshot/
$ mkdir -p /opt/jaysonzhang/3rd/zookeeper/zkdata/zkdata1/log/
$ mkdir -p /opt/jaysonzhang/3rd/zookeeper/zkdata/zkdata2/snapshot/
$ mkdir -p /opt/jaysonzhang/3rd/zookeeper/zkdata/zkdata2/log/
$ mkdir -p /opt/jaysonzhang/3rd/zookeeper/zkdata/zkdata3/snapshot/
$ mkdir -p /opt/jaysonzhang/3rd/zookeeper/zkdata/zkdata3/log/
1
2
3
4
5
6

# 配置文件分别修改(只列出必须修改的地方)

1.节点1 配置文件

注意server.1server.2server.3里面的端口需要跟clientPort端口不一样,只要端口不被占用即可,一般可以分别加100。

$ vi zk-3.4.10-kafka-5001/conf/zoo.cfg
# example sakes.
dataDir=/opt/jaysonzhang/3rd/zookeeper/zkdata/zkdata1/snapshot/
# the port at which the clients will connect
clientPort=5001
#事务日志指向内存文件系统
dataLogDir=/opt/jaysonzhang/3rd/zookeeper/zkdata/zkdata1/log/
server.1=10.10.10.10:5101:5201
server.2=10.10.10.10:5102:5202
server.3=10.10.10.10:5103:5203
1
2
3
4
5
6
7
8
9
10

2.节点2 配置文件

$ vi zk-3.4.10-kafka-5002/conf/zoo.cfg
# example sakes.
dataDir=/opt/jaysonzhang/3rd/zookeeper/zkdata/zkdata2/snapshot/
# the port at which the clients will connect
clientPort=5002
#事务日志指向内存文件系统
dataLogDir=/opt/jaysonzhang/3rd/zookeeper/zkdata/zkdata2/log/
server.1=10.10.10.10:5101:5201
server.2=10.10.10.10:5102:5202
server.3=10.10.10.10:5103:5203
1
2
3
4
5
6
7
8
9
10

3.节点3配置文件

$ vi zk-3.4.10-kafka-5003/conf/zoo.cfg
# example sakes.
dataDir=/opt/jaysonzhang/3rd/zookeeper/zkdata/zkdata3/snapshot/
# the port at which the clients will connect
clientPort=5003
#事务日志指向内存文件系统
dataLogDir=/opt/jaysonzhang/3rd/zookeeper/zkdata/zkdata3/log/
server.1=10.10.10.10:5101:5201
server.2=10.10.10.10:5102:5202
server.3=10.10.10.10:5103:5203
1
2
3
4
5
6
7
8
9
10

# 启动

$ cd zk-3.4.10-kafka-5001/bin/;sh zkServer.sh start
$ cd -;
$ cd zk-3.4.10-kafka-5002/bin/;sh zkServer.sh start
$ cd -;
$ cd zk-3.4.10-kafka-5003/bin/;sh zkServer.sh start
1
2
3
4
5

这样,ZooKeeper搭建完毕,开始玩起来吧。

是不是很简单?相信你学会了。


欢迎关注我的公众号testerzhang,原创技术文章第一时间推送。

公众号二维码

Last Updated: 1/1/2022, 11:13:04 PM