CentOS 7安装zookeeper

单机安装

CentOS 7环境单机安装zookeeper

1、下载ZK

zookeeper下载页面:https://zookeeper.apache.org/releases.html
这里下载二进制版本,不需要编译, 以安装路径 /usr/local/soft 为例

cd /usr/local/soft
wget https://mirror.bit.edu.cn/apache/zookeeper/zookeeper-3.7.1/apache-zookeeper-3.7.1-bin.tar.gz

2、解压

tar -xzvf apache-zookeeper-3.7.1-bin.tar.gz

3、修改配置文件

进入conf目录并拷贝zoo_sample.cfg改名为zoo.cfg

cd apache-zookeeper-3.7.1-bin/conf
cp zoo_sample.cfg zoo.cfg

端口号默认2181,配置文件zoo.cfg里面的dataDir要修改,如果不改,需要创建这个目录 mkdir -p /tmp/zookeeper

mkdir -p /usr/local/zookeeper/apache-zookeeper-3.7.1-bin/data
tickTime=2000
initLimit=10
syncLimit=5
dataDir=/usr/local/zookeeper/apache-zookeeper-3.7.1-bin/data
clientPort=2181

4、配置zk环境变量

配置后在任意目录之下可以使用bin中的命令

vim /etc/profile
# 文件末尾增加如下配置
export ZOOKEEPER_HOME=/usr/local/soft/apache-zookeeper-3.7.1-bin
export PATH=$PATH:$ZOOKEEPER_HOME/bin

# 让profile文件生效
source /etc/profile

如果没有安装jdk,需要先安装jdk并通过vi /etc/profile命令配置java环境变量

export JAVA_HOME=/usr/local/java/jdk1.8.0_131
export JRE_HOME=$JAVA_HOME/jre
export CLASSPATH=$JAVA_HOME/lib:$JRE_HOME/lib:$CLASSPATH
export PATH=$JAVA_HOME/bin:$JRE_HOME/bin:$PATH

export ZOOKEEPER_HOME=/usr/local/soft/apache-zookeeper-3.7.1-bin
export PATH=$PATH:$ZOOKEEPER_HOME/bin

5、启动ZK

进入到apache-zookeeper-3.6.1-bin的bin文件夹,查看启动脚本zkServer.sh

./zkServer.sh help

zkServer.sh start # 启动
zkServer.sh start-foreground # 前端启动
zkServer.sh status # 查看状态
zkServer.sh stop # 停止

zookeeper默认端口 2181

输出日志:

[root@localhost local]# zkServer.sh start
ZooKeeper JMX enabled by default
Using config: /usr/local/soft/apache-zookeeper-3.7.1-bin/bin/../conf/zoo.cfg
Starting zookeeper ... STARTED
[root@localhost local]# 

查看是否启动成功

ps -ef | grep zookeeper

其他命令

命令描述
./zkServer.sh status查看zk的运行状态
./zkCli.sh客户端链接zk
lsls 查看节点
get /节点名字get 获取节点数据和更新信息
create [-s] [-e] path data aclcreate 创建节点 e 临时节点 s 顺序节点
delete path [version] 删除节点

docker安装zk

(1)打开

(2)搜索zookeeper镜像,版本选择: 3.7.1

(3)拉取镜像

docker pull zookeeper:3.7.1

(4)运行zookeeper container

docker run -d --name jack-zk-server -p 2281:2181 zookeeper:3.7.1

(5)查看启动结果

docker ps
lsof -i:2281

源码启动zk

(1)下载源码

https://www.apache.org/dyn/closer.lua/zookeeper/zookeeper-3.7.1/apache-zookeeper-3.7.1.tar.gz

(2)maven构建

在源码根目录下执行如下命令

mvn mvn clean clean install install ‐‐DskipTests

 (3)导入到idea中

(4)创建zoo.cfg文件并配置

tickTime=2000
initLimit=10
syncLimit=5
dataDir=D:\\install\\dev\\zookeeper\\zk-standalone\\data
clientPort=2181

(5)寻找启动类

bin/zkServer.cmd  或  bin/zkServer.sh,也就是服务端启动的时候,会通过QuorumPeerMain进行启动

ZOOMAIN=org.apache.zookeeper.server.quorum.QuorumPeerMain

(6)配置启动类

(6) 标记resouces目录

(7) 日志输出

a- 将conf文件下的log.properties文件复制到zookeeper-server的resources文件夹下

b- 在zookeeper-server的pom.xml中添加slf4j的依赖

<dependency>
    <groupId>org.slf4j</groupId>
    <artifactId>slf4j-simple</artifactId>
    <version>1.7.25</version>
    <scope>compile</scope>
</dependency>

(8)启动zk server-standalone

CentOS 7集群搭建

准备三台服务器或者三台虚拟机分别是:
192.168.1.101
192.168.1.102
192.168.1.103
然后在三台服务器按上面单机步骤分别安装zookeeper

下载

wget http://mirrors.hust.edu.cn/apache/zookeeper/zookeeper-3.6.1/apache-zookeeper-3.6.1-bin.tar.gz

解压到 /usr/local/soft 下

mv /usr/local/soft/apache-zookeeper-3.6.1 /usr/local/soft/zookeeper

修改配置文件

vim /usr/local/soft/zookeeper/conf/zoo.cfg
initLimit=10
syncLimit=5
dataDir=/usr/local/soft/zookeeper/data
clientPort=2181
server.1=192.168.1.101:2888:3888
server.2=192.168.1.102:2888:3888
server.3=192.168.1.103:2888:3888

创建数据存储目录

mkdir -p /usr/local/soft/zookeeper/data

创建myid文件, id 与 zoo.cfg 中的序号对应

#在192.168.1.101机器上执行
echo 1 > /usr/local/soft/zookeeper/data/myid
#在192.168.1.102机器上执行
echo 2 > /usr/local/soft/zookeeper/data/myid
#在192.168.2.103机器上执行
echo 3 > /usr/local/soft/zookeeper/data/myid

配置环境变量

vim /etc/profile

在最后加上

export ZK_HOME=/usr/local/soft/zookeeper
export PATH=$ZK_HOME/bin:$PATH

强制生效

source /etc/profile

分别启动

zkServer.sh start

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值