zookeeper集群架构

本文详细介绍了如何规划和搭建Zookeeper集群,包括在node1节点的安装配置,myid文件的修改,以及集群的启动步骤。在启动过程中,特别提醒了当集群节点数量不足时可能出现的服务停止问题。
摘要由CSDN通过智能技术生成

一.集群规划:

在hosts节点上部署zookeeper:

 vim /etc/hosts
192.168.2.101 node1
 192.168.2.102 node2
 192.168.2.103 node3

二.在node1节点上安装zookeeper并配置环境

1.在安装根目录下新建zkdata文件夹

mkdir zkdata

2.重命名zookeeper-3.4.10/conf目录下zoo_sample.cfg为zoo.cfg

mv zoo_sample.cfg zoo.cfg

3.配置zoo.cfg

vim zoo.cfg
tickTime=2000
initLimit=10
syncLimit=5
dataDir=/opt/module/zookeeper-3.4.10/zkdata
dataLogDir=/opt/module/zookeeper-3.4.10/zkdata/logs
clientPort=2181
server.1=node1:2888:3888
server.2=node2:2888:3888
server.3=node3:2888:3888
maxClientCnxns=300

4.创建myid文件编写内容

cd /opt/module/zookeeper-3.4.10/zkdata/
touch myid
echo 1 > myid 
cat myid

5.zookeeper日志配置

vim log4j.properties(conf文件夹下)
zookeeper.root.logger=INFO,ROLLINGFILE 
zookeeper.log.file=zookeeper.log
log4j.appender.ROLLINGFILE=org.apache.log4j.DailyRollingFileAppender
log4j.appender.ROLLINGFILE.MaxFileSize=10MB
log4j.appender.ROLLINGFILE.MaxBackupIndex=10

6.修改zoo.cfg

dataLogDir=/opt/module/zookeeper-3.4.10/zkdata/logs

7.修改zkEnv.sh

 vim zkEnv.sh(bin文件夹下)
if [ "x${ZOO_LOG_DIR}" = "x" ]
then
#日志输出路径 不需mkdir zookeeper启动时自动创建
    ZOO_LOG_DIR="/opt/module/zookeeper/zkdata/logs"
fi
if [ "x${ZOO_LOG4J_PROP}" = "x" ]
then
    ZOO_LOG4J_PROP="INFO,ROLLINGFILE"
fi

三.分发zookeeper

scp -r /opt/module/zookeeper-3.4.10 root@node2:/opt/module/
scp -r /opt/module/zookeeper-3.4.10 root@node3:/opt/module/

四.修改node2node3节点上的myid

echo 2 > /opt/module/zookeeper-3.4.10/zkdata/myid
cat myid
echo 3 > /opt/module/zookeeper-3.4.10/zkdata/myid
cat myid

五.启动zookeeper

分别在三台服务器上输入命令启动zookeeper

bin/zkServer.sh start

!!!当集群中节点只剩一台或不足半数时会出现
This ZooKeeper instance is not currently serving requests
错误提示

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值