Zookeeper单机安装
安装 Linux
安装 Jdk
上传 Zookeeper
官方资源包可在 zookeeper.apache.com
解压 tar -zxf zookeeper-3.4.6.tar.gz
Zookeeper 目录结构
- bin:放置运行脚本和工具脚本,如果是 Linux 环境还会有有 zookeeper 的运 行日志 zookeeper.out
- conf:zookeeper 默认读取配置的目录,里面会有默认的配置文件
- contrib:zookeeper 的拓展功能
- dist-maven:zookeeper的 maven 打包目录
- docs:zookeeper 相关的文档
- lib:zookeeper 核心的 jar
- recipes:zookeeper 分布式相关的 jar 包
- src:zookeeper 源码
配置Zookeeper
Zookeeper 在启动时默认的去 conf 目录下查找一个名称为 zoo.cfg 的配置文件。 在 zookeeper 应用目录中有子目录 conf。其中有配置文件模板:zoo_sample.cfg cp zoo_sample.cfg zoo.cfg。zookeeper 应用中的配置文件为 conf/zoo.cfg。 修改配置文件 zoo.cfg - 设置数据缓存路径
启动 Zookeeper
默认加载配置文件:./zkServer.sh start:默认的会去 conf 目录下加载 zoo.cfg 配置文件。
指定加载配置文件:./zkServer.sh start 配置文件的路径。
Zookeeper集群安装
6.1Zookeeper 集群中的角色介绍
Zookeeper 集群中的角色主要有以下三类:
2.2集群的设计目的
1.最终一致性:client 不论连接到哪个 Server,展示给它都是同一个视图,这是 zookeeper 最重要的性能。
2 .可靠性:具有简单、健壮、良好的性能,如果消息 m 被到一台服务器接受,那么它 将被所有的服务器接受。
3 .实时性:Zookeeper 保证客户端将在一个时间间隔范围内获得服务器的更新信息,或 者服务器失效的信息。但由于网络延时等原因,Zookeeper 不能保证两个客户端能同时得到 刚更新的数据,如果需要最新数据,应该在读数据之前调用 sync()接口。
4 .等待无关(wait-free):慢的或者失效的 client 不得干预快速的 client 的请求,使得每 个 client 都能有效的等待。
5.原子性:更新只能成功或者失败,没有中间状态。
6 .顺序性:包括全局有序和偏序两种:全局有序是指如果在一台服务器上消息 a 在消息 b 前发布,则在所有 Server 上消息 a 都将在消息 b 前被发布;偏序是指如果一个消息 b 在消 息 a 后被同一个发送者发布,a 必将排在 b 前面。
6.3新建虚拟机
6.4配置网络
6.5安装JDK
6.6安装zk集群
说明:zk集群中有三台主机zkserver,是在同一个虚拟机启动三个zkserver,保证端口号不一样就行---伪集群
6.6.1上传安装包
6.6.2解压zk的安装包
6.6.3创建zk的安装目录
6.6.4拷贝zk进行安装
6.6.5zk1中创建data目录
6.6.6配置服务器编号
6.6.7拷贝zk的配置文件
将zoo_simple.cfg 拷贝 重新命名为 zoo.cfg
6.6.8配置zoo.cfg
企业微信截图_16315880386915.png
1.新建data目录
2.访问端口
3.表示是三台服务器
2888内部通信端口
3888选举端口
6.6.9复制zk1两份
zookeeper 目录 scp -r zookeeper root@node01:/usr/local/zookeeper
6.6.10 data文件夹下创建myid文件
touch myid >>0
node02为data下myid>>1
node03为 data下myid>>2
6.6.11修改zoo.cfg
分别修改zk2和zk3的zoo.cfg文件中的内容
Zk2:
Zk3:
6.6.12关闭防火墙
service iptables stop
5.3.4.12启动三个zk服务
zookeeper/bin/zkServer.sh start
网友评论