伪分布式安装zookeeper(在一台机器上运行三个zk服务)

一. 环境变量的配置

1.上传安装包

使用XFTP或者使用scp将安装包apache-zookeeper-3.6.3-bin.tar.gz上传到/root/softwares下

2. 解压安装

tar -zxvf apache-zookeeper-3.6.3-bin.tar.gz -C /usr/local

3. 更名

 cd /usr/local/
 mv apache-zookeeper-3.6.3-bin zookeeper-3.6.3

4. 配置环境变量

vim /etc/profile  
export ZOOKEEPER_HOME=/usr/local/zookeeper-3.6.3
export PATH=$PATH:$ZOOKEEPER_HOME/bin

5. 使环境变量生效

source /etc/profile

二. 集群模式的配置

1. 修改zoo.cfg文件

cd $ZOOKEEPER_HOME/conf/  
#  复制出zoo.cfg文件
#copy三方zk的配置文件:
cp zoo_sample.cfg zoo1.cfg
cp zoo_sample.cfg zoo2.cfg
cp zoo_sample.cfg zoo3.cfg
#创建文件dataDir,dataLogDir
cd $ZOOKEEPER_HOME
mkdir {dataDir1,dataLogDir1}  
mkdir {dataDir2,dataLogDir2} 
mkdir {dataDir3,dataLogDir3} 
#配置zoo1.cfg的文件内容
vim zoo1.cfg
tickTime=2000
initLimit=10
syncLimit=5
dataDir=/usr/local/zookeeper-3.6.3/dataDir1
dataLogDir=/usr/local/zookeeper-3.6.3/dataLogDir1
clientPort=2181
server.1=hh:2287:3387
server.2=hh:2288:3388
server.3=hh:2289:3389
配置zoo2.cfg的文件内容
tickTime=2000
initLimit=10
syncLimit=5
dataDir=/usr/local/zookeeper-3.6.3/dataDir2
dataLogDir=/usr/local/zookeeper-3.6.3/dataLogDir2
clientPort=2182
server.1=hh:2287:3387
server.2=hh:2288:3388
server.3=hh:2289:3389
配置zoo3.cfg的文件内容
tickTime=2000
initLimit=10
syncLimit=5
dataDir=/usr/local/zookeeper-3.6.3/dataDir3
dataLogDir=/usr/local/zookeeper-3.6.3/dataLogDir3
clientPort=2183
server.1=hh:2287:3387
server.2=hh:2288:3388
server.3=hh:2289:3389

# 解析 Server.id=ip:port1:port2
# id:		服务器的id号,对应zkData/myid文件内的数字
# ip: 		服务器的ip地址
# port1:	follower与leader交互的port
# port2:	选举期间使用的port

# 注意:此配置文件中,不支持汉字注释

2. 创建myid

# 在$ZOOKEEPER_HOME/zkData/目录下添加myid文件,内容为server的id号  
cd $ZOOKEEPER_HOME/dataDir1
echo "1" > myid
cd $ZOOKEEPER_HOME/dataDir2
echo "2" > myid
cd $ZOOKEEPER_HOME/dataDir3
echo "3" > myid

3. 启动服务

在每一个节点启动zkServer的服务

# 启动,分别使用不同的配置文件启动zk服务(在zk的home根目录)
zkServer.sh start conf/zoo1.cfg
zkServer.sh start conf/zoo2.cfg
zkServer.sh start conf/zoo3.cfg
# 查看状态,分别使用不同的配置文件查看zk服务(在zk的home根目录)
zkServer.sh status conf/zoo1.cfg
zkServer.sh status conf/zoo2.cfg
zkServer.sh status conf/zoo3.cfg
# 停止状态,分别使用不同的配置文件停止zk服务(在zk的home根目录)
zkServer.sh status conf/zoo1.cfg
zkServer.sh status conf/zoo2.cfg
zkServer.sh status conf/zoo3.cfg
posted @ 2022-10-12 21:30  sparename  阅读(84)  评论(0)    收藏  举报