Zookeeper集群简单实现

来源:互联网 发布:java分布式面试 编辑:程序博客网 时间:2024/06/05 23:54

Zookeeper集群简单实现

Zookeeper简介:
ZooKeeper是一个分布式的,开放源码的分布式应用程序协调服务,是Hadoop和Hbase的重要组件。它是一个为分布式应用提供一致性服务的软件,提供的功能包括:配置维护、域名服务、分布式同步、组服务等。
ZooKeeper的目标就是封装好复杂易出错的关键服务,将简单易用的接口和性能高效、功能稳定的系统提供给用户。

好了,知道了Zookeeper是干嘛用的,现在来开始搭建Zookeeper集群。
先准备好3台虚拟机,端口分别为192.168.35.129,192.168.35.130和192.168.35.129。当然这是本人自己的,每个人都会不一样的。
这里写图片描述

由于Zookeeper 需要在JAVA环境下运行,在3台机器上分别装上JDK,并配置环境变量,本人装的是jdk1.8。

接下来在3台机器上装Zookerper。
为方便管理,将zookerper统一安装在/usr/zookerper 目录下
运行

mkdir /usr/zookeeper

进行创建目录。
下载Zookeeper压缩包,上传到机器。3台机器同时进入到压缩包所在目录,同时进行解压。

这里写图片描述

解压

将解压后的文件夹移动到/usr/zookeeper目录

mv zookeeper-3.4.5 /usr/zookeeper

进入zookeeper目录
命令:

cd /usr/zookeeper/zookeeper-3.4.5 ls

目录结果如图
这里写图片描述

运行命令

pwd

拷贝路径,进行zookeeper环境变量配置
命令

vim /etc/profile
这里写图片描述

保存退出:ESC :wq

进入zookeeper的conf目录

cd /usr/zookerper/zookeeper-3.4.5/conf

重命名文件zoo_sample.cfg为zoo.cfg

mv zoo_sample.cfg zoo.cfg
编辑zoo.cfg
vim zoo.cfg
这里写图片描述

保存退出
本人的dataDir是在/usr/zookerper/data目录。
192.168.35.129对应的server为0,192.168.35.129对应的server为1,192.168.35.129对应的server为2。

创建data目录

mkdir /usr/zookeeper/data

进行data目录

cd /usr/zookeeper/data

注意:以上操作3台机器同走的

在192.168.35.129机器上,可以先创建myid,也可以直接编辑
创建

touch myid

编辑

vim myid

直接写一个0保存退出
这里写图片描述

同样192.168.35.130编辑myid写1,192.168.35.131编辑myid写2。
到此,配置完成。

由于配置了环境变量,可在任意目录启动zookeeper,可对3台机器同时操作。
命令

zkServer.sh start

这里写图片描述

如图,启动成功。
运行命令

zkServer.sh status

查看zookeeper集群状态,如果没有问题会有一台主节点,两台从节点。
这里写图片描述

这里写图片描述

如果没有出现主从节点的结果就是有问题。停止zookeeper
命令

zkServer.sh stop

运行

zkServer.sh start-foreground

如果出现这样的错,可以是需要关闭防火墙的。

这里写图片描述

关闭防火墙
命令

/etc/init.d/iptables stop

到此Zookeeper集群搭建完成。

本人使用的命令终端是Xshell,可同时对多台机器进行操作,有需要的可到Xshell进行下载,谢谢。

原创粉丝点击