zookeeper集群搭建

9 篇文章 0 订阅
2 篇文章 0 订阅

简介

本篇是从实战出发,搭建zookeeper集群。zookeeper可以当做一个内存数据库(但是只是存少量配置数据,不能存大量数据),主要是对项目配置做集中管理、服务的注册发现、分布式锁等等。

前置条件

准备奇数台虚拟机,最少3台,我这里准备了4台,目的是偶数台比较复杂,方便以后学习用。
node01、node02、node03、node04这4台虚拟机

  • 配置好ip、hostname等等
  • 安装好jdk,我这里是jdk1.8,并配置好环境变量。shell命令jps可用即可。

安装zookeeper

官网下载二进制安装文件

新版本的安装文件名中含有bin,所以我下载的是zookeeper-3.7.0-bin.tar.gz

[root@node01 ~]# cd soft
[root@node01 soft]# wget https://downloads.apache.org/zookeeper/current/apache-zookeeper-3.7.0-bin.tar.gz

解压并移动到指定目录

我移动到了/opt/mmm/zk目录下

[root@node01 soft]# tar -zxvf apache-zookeeper-3.7.0-bin.tar.gz
[root@node01 soft]# mv apache-zookeeper-3.7.0-bin /opt/mmm/zk/

复制并修改配置文件

[root@node01 zk]# cd apache-zookeeper-3.7.0-bin/conf
[root@node01 conf]# cp zoo_sample.cfg zoo.cfg
[root@node01 conf]# vi zoo.cfg
##zookeeper的数据存放目录
dataDir=/var/mmm/zk
##集群配置
server.1=node01:2888:3888
server.2=node02:2888:3888
server.3=node03:2888:3888
server.4=node04:2888:3888

配置myid

每个节点都有自己的myid,与zoo.cfg中的server.x=node0x:2888:3888相对应

[root@node01 conf]# mkdir -p /var/mmm/zk
[root@node01 conf]# echo 1 > /var/mmm/zk/myid

配置zookeeper的环境变量

[root@node01 conf]# vi /ect/profile
export JAVA_HOME=/usr/java/default
export ZOOKEEPER_HOME=/opt/mmm/zk/apache-zookeeper-3.7.0-bin
export PATH=$PATH:$JAVA_HOME/bin:$ZOOKEEPER_HOME/bin
[root@node01 conf]# source /ect/profile

分发zookeeper安装目录和环境变量文件到其它节点

执行scp命令,并输入其它节点的密码即可
最后执行source /ect/profile 使环境变量生效

[root@node01 conf]# cd ../../
[root@node01 zk]# scp -r apache-zookeeper-3.7.0-bin node02:·pwd·
[root@node01 zk]# scp -r apache-zookeeper-3.7.0-bin node03:·pwd·
[root@node01 zk]# scp -r apache-zookeeper-3.7.0-bin node04:·pwd·
[root@node01 zk]# scp /etc/profile node02:/etc/
[root@node01 zk]# scp /etc/profile node03:/etc/
[root@node01 zk]# scp /etc/profile node04:/etc/

其它节点配置myid

[root@node02 ~]# echo 2  > /var/mmm/zk/myid
[root@node03 ~]# echo 3  > /var/mmm/zk/myid
[root@node04 ~]# echo 4  > /var/mmm/zk/myid

启动zookeeper

[root@node01 ~]# zkServer.sh start
[root@node02 ~]# zkServer.sh start
[root@node03 ~]# zkServer.sh start
[root@node04 ~]# zkServer.sh start

客户端连接

[root@node01 ~]# zkCli.sh
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值