Zookeeper
Zookeeper介绍
- ZooKeeper是一个分布式的,开放源码的分布式应用程序协调服务,是Google的Chubby一个开源的实现,是Hadoop和Hbase的重要组件。它是一个为分布式应用提供一致性服务的软件,提供的功能包括:配置维护、域名服务、分布式同步、组服务等。
- ZooKeeper的目标就是封装好复杂易出错的关键服务,将简单易用的接口和性能高效、功能稳定的系统提供给用户。
- ZooKeeper包含一个简单的原语集,提供Java和C的接口。
ZooKeeper代码版本中,提供了分布式独享锁、选举、队列的接口,代码在zookeeper-3.4.3\src\recipes。其中分布锁和队列有Java和C两个版本,选举只有Java版本。
总结:Zookeeper负责服务的协调调度.当客户端发起请求时,返回正确的服务器地址
Zookeeper 下载安装
- 下载地址:http://mirrors.hust.edu.cn/apache/zookeeper/
3.5.5以后版本下载带 bin 的包
- zookeeper 依赖jdk运行
- 安装jdk 上传解压
配置环境变量
JAVA_HOME=/home/app/jdk
JAVA_BIN=/home/app/jdk/bin
PATH=$JAVA_HOME/bin:$PATH
CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export JAVA_HOME JAVA_BIN PATH CLASSPATH
将下载文件上传安装
或者直接weget地址
- 解压:
tar -xzvf zookeeper.tar.gz
- 创建文件夹:
cd zookeeper
mkdir data log
- 创建myid文件(集群):
vim data/myid
# 里面只需 写id即可不能重复
1
- 复制配置文件并改名:
cd conf
cp zoo_sample.cfg zoo.cfg
- 编辑配置文件:
vim zoo.cfg
# 指定data目录
dataDir=/home/app/zookeeper/data/
# 指定log目录
logDir=/home/app/zookeeper/log/
# 访问端口
clientPort=2181
# 集群需要指定 server.myid=ip:集群通信端口:集群选举端口
server.1=192.168.65.200:2887:3887
server.2=192.168.65.201:2887:3887
server.3=192.168.65.202:2887:3887
- 克隆虚拟机 修改ip
- 启动zookeeper 查看信息
cd zookeeper/bin/
sh zkServer.sh start #启动
sh zkServer.sh stop #停止
sh zkServer.sh status #查看信息
Zookeeper集群中leader负责监控集群状态,follower主要负责客户端链接获取服务列表信息.同时参与投票.
来源:CSDN
作者:孟囤长
链接:https://blog.csdn.net/weixin_43977098/article/details/103667639