搭建zookeeper伪集群
来源:互联网 发布:淘宝隐形眼镜可靠吗 编辑:程序博客网 时间:2024/06/05 08:49
搭建伪集群
1.安装jdk
2.安装rz上传命令
yum install lrzsz
3.上传zookeeper的解压包到虚拟机(手动选择解压包的位置进行上传)
rz
4.使用命令解压上传的压缩包
tar zxvf zookeeper-3.4.6.tar.gz
5.进入解压完成的目录
cd zookeeper-3.4.6
6.创建data目录,将conf下zoo_sample.cfg文件名改为zoo.cfg
mkdir datacd confmv zoo_sample.cfg zoo.cfg
7.返回根目录,为了方便管理,找起来比较容易,建立/usr/local/zookeeper-cluster目录,将解压后的Zookeeper复制到以下三个目录:
/usr/local/zookeeper-cluster/zookeeper-1
/usr/local/zookeeper-cluster/zookeeper-2
/usr/local/zookeeper-cluster/zookeeper-3
mkdir /usr/local/zookeeper-clustercp -r zookeeper-3.4.6 /usr/local/zookeeper-cluster/zookeeper-1cp -r zookeeper-3.4.6 /usr/local/zookeeper-cluster/zookeeper-2cp -r zookeeper-3.4.6 /usr/local/zookeeper-cluster/zookeeper-3
8.配置每一个Zookeeper 的dataDir(zoo.cfg) clientPort 分别为2181, 2182 , 2183
修改/usr/local/zookeeper-cluster/zookeeper-1/conf/zoo.cfg
vi /usr/local/zookeeper-cluster/zookeeper-1/conf/zoo.cfg修改:clientPort=2181dataDir=/usr/local/zookeeper-cluster/zookeeper-1/data退出保存:wq
修改/usr/local/zookeeper-cluster/zookeeper-2/conf/zoo.cfg
vi /usr/local/zookeeper-cluster/zookeeper-2/conf/zoo.cfg修改:clientPort=2182dataDir=/usr/local/zookeeper-cluster/zookeeper-2/data退出保存:wq
修改/usr/local/zookeeper-cluster/zookeeper-3/conf/zoo.cfg
vi /usr/local/zookeeper-cluster/zookeeper-3/conf/zoo.cfg修改:clientPort=2183dataDir=/usr/local/zookeeper-cluster/zookeeper-3/data退出保存:wq
9.在每个zookeeper的 data 目录下创建一个 myid 文件,内容分别是1、2、3 。这个文件就是记录每个服务器的ID
——-知识点小贴士——
如果你要创建的文本文件内容比较简单,我们可以通过echo 命令快速创建文件格式为: echo 内容 >文件名例如我们为第一个zookeeper指定ID为1,则输入命令
cd /usr/local/zookeeper-cluster/zookeeper-1/dataecho 1 > myidcd /usr/local/zookeeper-cluster/zookeeper-2/dataecho 2 > myidcd /usr/local/zookeeper-cluster/zookeeper-3/dataecho 3 > myid
10.在每一个zookeeper 的 zoo.cfg配置客户端访问端口(clientPort)和集群服务器IP列表。ip填自己的
server.1=192.168.31.135:2881:3881server.2=192.168.31.135:2882:3882server.3=192.168.31.135:2883:3883
11.启动
/usr/local/zookeeper-cluster/zookeeper-1/bin/zkServer.sh start/usr/local/zookeeper-cluster/zookeeper-2/bin/zkServer.sh start/usr/local/zookeeper-cluster/zookeeper-3/bin/zkServer.sh start
状态查询
/usr/local/zookeeper-cluster/zookeeper-1/bin/zkServer.sh status/usr/local/zookeeper-cluster/zookeeper-2/bin/zkServer.sh status/usr/local/zookeeper-cluster/zookeeper-3/bin/zkServer.sh status
选主流程
当leader崩溃或者leader失去大多数的follower,这时候zk进入恢复模式,恢复模式需要重新选举出一个新的leader,让所有的Server都恢复到一个正确的状态。Zk的选举算法有两种:一种是基于basic paxos实现的,另外一种是基于fast paxos算法实现的。系统默认的选举算法为fast paxos。先介绍basic paxos流程:1 .选举线程由当前Server发起选举的线程担任,其主要功能是对投票结果进行统计,并选出推荐的Server;2 .选举线程首先向所有Server发起一次询问(包括自己);3 .选举线程收到回复后,验证是否是自己发起的询问(验证zxid是否一致),然后获取对方的id(myid),并存储到当前询问对象列表中,最后获取对方提议的leader相关信息(id,zxid),并将这些信息存储到当次选举的投票记录表中;4. 收到所有Server回复以后,就计算出zxid最大的那个Server,并将这个Server相关信息设置成下一次要投票的Server;5. 线程将当前zxid最大的Server设置为当前Server要推荐的Leader,如果此时获胜的Server获得n/2 + 1的Server票数, 设置当前推荐的leader为获胜的Server,将根据获胜的Server相关信息设置自己的状态,否则,继续这个过程,直到leader被选举出来。
通过流程分析我们可以得出:要使Leader获得多数Server的支持,则Server总数必须是奇数2n+1,且存活的Server的数目不得少于n+1.
“`
- zookeeper伪集群搭建
- zookeeper 伪集群搭建
- zookeeper伪集群搭建
- Zookeeper伪集群搭建
- zookeeper伪集群搭建
- zookeeper伪集群搭建
- 搭建zookeeper伪集群
- zookeeper 搭建伪集群
- ZooKeeper伪集群环境搭建
- zookeeper: 单机搭建伪集群
- zookeeper伪分布式集群搭建
- zookeeper伪集群环境搭建
- Zookeeper集群搭建(伪集群)
- zookeeper伪分布式集群环境搭建
- [dubbo实战] dubbo+zookeeper伪集群搭建
- Zookeeper在windows搭建伪集群
- Windows下zookeeper伪集群环境搭建
- zookeeper手把手搭建伪分布集群环境
- 【jQuery入门】(1)---初次接触Jquery
- apache 三种工作模式和httpd.conf配置重点讲解
- Kalman滤波(三)
- Collection 和 Map
- 字符的转换
- 搭建zookeeper伪集群
- pycharm配置
- HTML中超链接原来还有这种操作??
- 自组织特征映射SOM(Self-organizing feature Map)
- Android基础:Fragment
- bind和多态
- Spring 解析xml代码提取
- 汉诺塔
- 第一章 离散时间信号与系统