zookeeper伪集群的搭建
由于公司服务器数量的限制,我们往往没有那么多的服务器用来搭建zookeeper的集群,所以产生了伪集群的搭建,也就是将多个zookeeper搭建在同一台机器上。
准备工作:
1,一台服务器,我们这里用虚拟机来代替,虚拟机上将jdk安装好。
2,将zookeeper安装包上传到虚拟机上。
3,将Zookeeper解压 ,创建data目录(存放数据的目录) ,将 conf下zoo_sample.cfg 文件改名为 zoo.cfg
4,建立/usr/local/zookeeper-cluster目录,将解压后的Zookeeper复制到以下三个目录(当然也可以自己定义目录)
[root@localhost ~]# mkdir /usr/local/zookeeper-cluster
[root@localhost ~]# cp -r zookeeper-3.4.6 /usr/local/zookeeper-cluster/zookeeper-1
[root@localhost ~]# cp -r zookeeper-3.4.6 /usr/local/zookeeper-cluster/zookeeper-2
[root@localhost ~]# cp -r zookeeper-3.4.6 /usr/local/zookeeper-cluster/zookeeper-3
5,配置每一个Zookeeper 的dataDir(zoo.cfg) clientPort 分别为2181 2182 2183
修改/usr/local/zookeeper-cluster/zookeeper-1/conf/zoo.cfg, 同理修改其他两个。
clientPort=2181
dataDir=/usr/local/zookeeper-cluster/zookeeper-1/data
配置集群:
1,在每个zookeeper的 data 目录下创建一个 myid 文件,内容分别是1、2、3 。这个文件就是记录每个服务器的ID
echo "1" > /usr/local/zookeeper-cluster/zookeeper-1/data/myid
echo "2" > /usr/local/zookeeper-cluster/zookeeper-2/data/myid
echo "3" > /usr/local/zookeeper-cluster/zookeeper-3/data/myid
2,在每一个zookeeper 的 zoo.cfg配置客户端访问端口(clientPort)和集群服务器IP列表。即在每个zoo.cfg的末尾加上(机器的ip是你自己的机器ip):
server.1=192.168.25.140:2881:3881
server.2=192.168.25.140:2882:3882
server.3=192.168.25.140:2883:3883
3,启动集群:
./zkServer.sh start
4,查看zookeeper状态
./zkServer.sh status
PS:
当集群中的主服务器挂了,集群中的其他服务器会自动进行重新选举状态,然后产生新得leader。当领导者产生后,再次有新服务器加入集群,不会影响到现任领导者。
集群中挂掉的最大数不能超过半数,不然集群就不能投票选举leader了,集群就gg了。
Dubbox连接zookeeper集群
修改服务提供者和服务调用者的spring 配置文件
<!-- 指定注册中心地址 -->
<dubbo:registry
protocol="zookeeper" address="192.168.25.140:2181,192.168.25.140:2182,192.168.25.140:2183">
</dubbo:registry>
最新文章
- nginx 添加nginx-http-concat模块
- 使用SQL Server 扩展事件来创建死锁的时间跟踪
- Gnu C的不同于标准C的语法
- Python之路,day5-Python基础
- 封装自己的printf函数
- Linux中升级更新命令yum upgrade和yum update的区别
- oracle 11g不能连接报ORA-12537+ora-609解决
- 必胜宅急送Web app设计背后的思考
- bootstrap新闻模块样式模板
- 【转】C++ stringstream介绍,使用方法与例子
- Android生存指南:Eclipse快捷键
- 多重集组合数 (DP)
- 九 Android基本知识介绍
- Numpy 基础运算1
- ios下,<;input type=";checkbox";>; 点击时出现黑色块
- SpringBoot+logback实现日志打印
- 继承Tcalendar控件,让当天日期醒目显示
- PHP 图片处理类 错误处理方法:
- 用 GSL 求解超定方程组及矩阵的奇异值分解(SVD) 2
- Python闲谈(一)mgrid慢放
热门文章
- Could not publish to the server.Please assign JRE to the server
- 可视化CNN神经网路第一层参数
- Raspberry Pi 配置
- c++ 基础知识 0001 const 知识2
- Chrome 的书签太多如何分类整理比较好
- 【转】C# Socket编程(5)使用TCP Socket
- 不得不注意tornado多进程部署的副作用
- 一个工程实例来学习 Makefile
- (转)Android 使用com.j256.ormlite
- (转)setTextColor()的参数设置方式