zookeeper 集群安装和配置
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了zookeeper 集群安装和配置相关的知识,希望对你有一定的参考价值。
一、单机模式
1、解压安装
mv zookeeper-3.4.6.tar.gz /wls/ && tar zxvf zookeeper-3.4.6.tar.gz
cd /wls/zookeeper-3.4.6/conf && mv zoo_sample.cfg zoo.cfg
2、单机启动
cd /wls/zookeeper-3.4.6/bin/ && zkServer.sh start
3、登陆zk
cd /wls/zookeeper-3.4.6/bin/ && ./zkCli.sh
二、集群模式
1、修改配置文件
cd /wls/zookeeper-3.4.6/conf && mv zoo.cfg z1.cfg
修改节点1 z1 配置文件
initLimit=10
syncLimit=5
clientPort=2187
tickTime=20000
maxClientCnxns=2000
minSessionTimeout=50000
maxSessionTimeout=90000
autopurge.purgeInterval=24
autopurge.snapRetainCount=5
dataDir=/wls/zookeeper-3.4.6/servers/z1/data
zoologdir=/wls/zookeeper-3.4.6/servers/z1/log
dataLogDir=/wls/zookeeper-3.4.6/servers/z1/datalog
server.1=30.4.92.49:8887:9887
server.2=30.4.92.49:8888:9888
server.3=30.4.92.49:8889:9889
修改节点2 z2 配置文件
initLimit=10
syncLimit=5
clientPort=2188
tickTime=20000
maxClientCnxns=2000
minSessionTimeout=50000
maxSessionTimeout=90000
autopurge.purgeInterval=24
autopurge.snapRetainCount=5
dataDir=/wls/zookeeper-3.4.6/servers/z2/data
zoologdir=/wls/zookeeper-3.4.6/servers/z2/log
dataLogDir=/wls/zookeeper-3.4.6/servers/z2/datalog
server.1=30.4.92.49:8887:9887
server.2=30.4.92.49:8888:9888
server.3=30.4.92.49:8889:9889
修改节点3 z3 配置文件
initLimit=10
syncLimit=5
clientPort=2189
tickTime=20000
maxClientCnxns=2000
minSessionTimeout=50000
maxSessionTimeout=90000
autopurge.purgeInterval=24
autopurge.snapRetainCount=5
dataDir=/wls/zookeeper-3.4.6/servers/z3/data
zoologdir=/wls/zookeeper-3.4.6/servers/z3/log
dataLogDir=/wls/zookeeper-3.4.6/servers/z3/datalog
server.1=30.4.92.49:8887:9887
server.2=30.4.92.49:8888:9888
server.3=30.4.92.49:8889:9889
2、修改日志路径
调整之后日志路径为 Dzookeeper.log.dir=/wls/zookeeper-3.4.6/servers/z1/log
vim /wls/zookeeper-3.4.6/bin/zkServer.sh ,ZOO_DATADIR后面新增一行ZOO_LOG_DIR
if [ -z "$ZOOPIDFILE" ]; then
ZOO_DATADIR="$(grep "^[[:space:]]*dataDir" "$ZOOCFG" | sed -e ‘s/.*=//‘)"
ZOO_LOG_DIR="$(grep "^[[:space:]]*zoologdir" "$ZOOCFG" | sed -e ‘s/.*=//‘)"
修改/wls/zookeeper-3.4.6/bin/zkEvn.sh文件,这样zookeeper.log文件就会独立,而不是和zookeeper.out一起
if [ "x${ZOO_LOG4J_PROP}" = "x" ]
then
ZOO_LOG4J_PROP="INFO,CONSOLE"
fi
改成
if [ "x${ZOO_LOG4J_PROP}" = "x" ]
then
ZOO_LOG4J_PROP="INFO,ROLLINGFILE"
fi
3、创建数据和日志目录
z1节点
mkdir -p /wls/zookeeper-3.4.6/servers/z1/data
mkdir -p /wls/zookeeper-3.4.6/servers/z1/log
mkdir -p /wls/zookeeper-3.4.6/servers/z1/datalog
echo 1 > /wls/zookeeper-3.4.6/servers/z1/data/myid
z2节点
mkdir -p /wls/zookeeper-3.4.6/servers/z2/data
mkdir -p /wls/zookeeper-3.4.6/servers/z2/log
mkdir -p /wls/zookeeper-3.4.6/servers/z2/datalog
echo 2 > /wls/zookeeper-3.4.6/servers/z2/data/myid
z3节点
mkdir -p /wls/zookeeper-3.4.6/servers/z3/data
mkdir -p /wls/zookeeper-3.4.6/servers/z3/log
mkdir -p /wls/zookeeper-3.4.6/servers/z3/datalog
echo 3 > /wls/zookeeper-3.4.6/servers/z3/data/myid
4、修改jvm 参数
在zkServer.sh文件的49行处加入 JVMPARAM="-Xms1G -Xmx1G"
在zkServer.sh文件的112行修改 -cp "$CLASSPATH" $JVMFLAGS $JVMPARAM $ZOOMAIN "$ZOOCFG" > "$_ZOO_DAEMON_OUT" 2>&1 < /dev/null &
5、修改jmxremote参数
在zkServer.sh文件 修改 ZOOMAIN="-Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.local.only=$JMXLOCALONLY org.apache.zookeeper.server.quorum.QuorumPeerMain" 为
ZOOMAIN=" -Dcom.sun.management.jmxremote.ssl=false org.apache.zookeeper.server.quorum.QuorumPeerMain"
6、修改最大数据量,zookeeper默认对每个结点的最大数据量有一个上限是1M,如果你要设置的配置数据大于这个上限将无法写法,增加-Djute.maxbuffer=10240000参数
在zkEnv.sh文件最后添加一行 -Djute.maxbuffer=10240000
7、启动服务
/wls/zookeeper-3.4.6/bin/zkServer.sh start ../conf/z1.cfg
/wls/zookeeper-3.4.6/bin/zkServer.sh start ../conf/z2.cfg
/wls/zookeeper-3.4.6/bin/zkServer.sh start ../conf/z3.cfg
8、查看状态
/wls/zookeeper-3.4.6/bin/zkServer.sh status ../conf/z1.cfg
9、关闭服务
/wls/zookeeper-3.4.6/bin/zkServer.sh stop ../conf/z1.cfg
/wls/zookeeper-3.4.6/bin/zkServer.sh stop ../conf/z2.cfg
/wls/zookeeper-3.4.6/bin/zkServer.sh stop ../conf/z3.cfg
以上是关于zookeeper 集群安装和配置的主要内容,如果未能解决你的问题,请参考以下文章