Zookeeper 集群安装
负载均衡(Load Balance)是分布式系统架构设计中必须考虑的因素之一,它通常是指,将请求/数据【均匀】分摊到多个操作单元上执行,负载均衡的关键在于【均匀】。常见互联网分布式架构如上,分为客户端层、反向代理nginx层、站点层、服务层、数据层。
- 现在使用最多的基于软件的负载均衡是Nginx和ZooKeeper:
- Nginx是著名的反向代理服务器,也被广泛的作为负载均衡服务器
- ZooKeeper是分布式协调服务框架,有时也被用来做负载均衡
Nginx

Nginx的负载均衡配置
(1)把多个web server配置到nginx中,用户访问Nginx时,就会自动被分配到某个web server。
(2)当网站规模变大,通常会进行服务拆分,各个服务独立部署,通过远程调用方式协同工作。
(3)为了保证稳定性,每个服务不会只使用一台服务器,也会作为一个集群存在,那么子集群也可以使用Nginx负载均衡。
ZooKeeper

ZooKeeper的负载均衡模式
(1)ZooKeeper作为一个服务的注册中心,每个服务在其注册中心登记,每台服务器知道自己是属于哪个服务,在服务器启动时,自己向所属服务进行登记
(2)服务的调用者到注册中心里面查找:能提供所需服务的服务器列表,然后自己根据负载均衡算法,从中选取一台服务器进行连接。
(3)调用者取到服务器列表后,就可以缓存到自己内部,省得下次再取,当服务器列表发生变化,例如某台服务器宕机下线,或者新加了服务器,ZooKeeper会自动通知调用者重新获取服务器列表
使用场景
使用Nginx,随着整个系统的演进, 服务 的数量会 增加 、每个服务集群中的 服务器 数量会 增加
这时就会有一些小麻烦,例如
(1)配置维护的成本变高,因为节点太多
(2)单点故障的风险增加了,因为热点服务的访问量很高,如果这个服务集群内的负载均衡服务出现问题,这个服务将失效
第一个问题,可以通过自己开发程序解决,但只是降低复杂度,并没有实际解决
第二个问题,可以通过双机高可用部署方案,使用另一台nginx负载均衡服务器随时待命,只是成本较高
ZooKeeper安装
下载:zookeeper-3.3.6.tar.gz
解压复制到三个文件夹

修改配置
vi ../../zookeeper1/conf/zoo.cfg
initLimit=
syncLimit=
tickTime=
dataDir=/home/xupp/zookeeper/zookeeper0/data_default/
dataLogDir=/home/xupp/zookeeper/zookeeper0/log_default/
clientPort=
server.=192.168.20.90::
server.=192.168.20.90::
server.=192.168.20.90::
initLimit=
syncLimit=
tickTime=
dataDir=/home/xupp/zookeeper/zookeeper1/data_default/
dataLogDir=/home/xupp/zookeeper/zookeeper1/log_default/
clientPort=
server.=192.168.20.90::
server.=192.168.20.90::
server.=192.168.20.90::
initLimit=
syncLimit=
tickTime=
dataDir=/home/xupp/zookeeper/zookeeper2/data_default/
dataLogDir=/home/xupp/zookeeper/zookeeper2/log_default/
clientPort=
server.=192.168.20.90::
server.=192.168.20.90::
server.=192.168.20.90::
创建对应文件夹data_default和log_default
创建myid文件 写入对应的服务编号 server.0 对应 0


启动
../../zookeeper2/bin/zkServer.sh start
停止
../../zookeeper2/bin/zkServer.sh stop
连接服务
../bin/zkCli.sh -server 127.0.0.1:

参考:http://blog.csdn.net/lan12334321234/article/details/70049945 http://blog.csdn.net/zhangyu_ad/article/details/68942158
Zookeeper 集群安装的更多相关文章
- 1、zookeeper集群安装
前提准备3台centos7.0虚拟机 c7003:192.168.70.103 c7004:192.168.70.104 c7005:192.168.70.105 并在三台虚拟机上配置hosts为 1 ...
- 原创:centos7.1下 ZooKeeper 集群安装配置+Python实战范例
centos7.1下 ZooKeeper 集群安装配置+Python实战范例 下载:http://apache.fayea.com/zookeeper/zookeeper-3.4.9/zookeepe ...
- hbase和ZooKeeper集群安装配置
一:ZooKeeper集群安装配置 1:解压zookeeper-3.3.2.tar.gz并重命名为zookeeper. 2:进入~/zookeeper/conf目录: 拷贝zoo_sample.cfg ...
- Zookeeper集群安装Version3.5.1
Zookeeper集群安装,基于版本3.5.1, 使用zookeeper-3.5.1-alpha.tar.gz安装包. 1.安装规划 zookeeper集群模式,安装到如下三台机器 10.43.159 ...
- Zookeeper集群安装详解
Zookeeper的角色 Zookeeper集群搭建 要求:服务器集群规模不小于3个节点,各服务器之间系统时间要保持一致! 安装步骤 1.在h1节点解压,目录改名. tar –zxvf zooke ...
- ZooKeeper集群安装
ZooKeeper是Apache提供的.分布式服务协调系统,应用比較广泛. 由于项目中使用Kafka MQ,而Kafka全然使用ZooKeeper实现Kafka各组件的服务协调,包含Broker.Co ...
- Zookeeper 集群安装配置,超详细,速度收藏!
今天,栈长分享下 Zookeeper 的集群安装及配置. 下载 下载地址:http://zookeeper.apache.org/ 下载过程就不说了,我们下载了最新的zookeeper-3.4.11. ...
- centos7下zookeeper集群安装部署
应用场景:ZooKeeper是一个分布式的,开放源码的分布式应用程序协调服务,是Google的Chubby一个开源的实现,是Hadoop和Hbase的重要组件. 它是一个为分布式应用提供一致性服务的软 ...
- Zookeeper 集群安装配置
今天,栈长分享下 Zookeeper 的集群安装及配置. 下载 下载地址:http://zookeeper.apache.org/ 下载过程就不说了,我们下载了最新的zookeeper-3.4.11. ...
- zookeeper 集群安装与配置
Zookeeper安装和配置 准备工作 安装 JDK,此步略. 下载 zookeeper wget http://archive.apache.org/dist/zookeeper/zookeeper ...
随机推荐
- Linux 进程后台运行的几种方式(screen)
Ctrl+z/bg/nohup/setsid/& 在Linux中,如果要让进程在后台运行,一般情况下,我们在命令后面加上&即可,实际上,这样是将命令放入到一个作业队列中了: ./rsy ...
- SQL表连接查询(inner join(join)、full join、left join、right join、cross join)
下面列出了您可以使用的 JOIN 类型,以及它们之间的差异. JOIN: 如果表中有至少一个匹配,则返回行(join=inner join) LEFT JOIN: 即使右表中没有匹配,也从左表返回所有 ...
- HTML5 input事件检测输入框变化[转载]
原文:http://www.linuxidc.com/Linux/2015-07/119984.htm 之前一直用change事件来监听输入框内容是否发生变化,只有当输入框失去焦点时才会触发,没想到h ...
- 各大网站vip视频破解
昨天朋友问我有没有XX视频网站的会员,现在的视频网站那么多个,要是都买会员,那还得了,作为一名程序员,想看vip视频还是自己可以动手的. 然后就自己动手用vue做了个破解vip视频的网站,界面简介,不 ...
- ldap数据库--ODSEE--suffix
ldap数据库的suffix是建立ldap之间复制协议的基础,suffix的创建也可以通过管理界面进行,也可以通过命令行进行.不同点是通过管理界面创建的suffix会自动创建一条对应该suffix的匿 ...
- elasticsearch地理空间操作简单操作
创建索引库 PUT http://localhost:9200/geo { "mappings": { "poi": { "properties&qu ...
- phpcms 的getcache()函数
一直没有去研究phpcms 的getcache()函数是干嘛的,今天有空去看了一下,原来就那样. 1 function getcache($name, $filepath='', $type='fil ...
- python基础-------模块与包(二)
sys模块.logging模块.序列化 一.sys模块 sys.argv 命令行参数List,第一个元素是程序本身路径 sys.exit(n) 退出程序,正常退出时e ...
- 《Metasploit魔鬼训练营》第四章(下)
p163 XSSF 默认kali 2.0中没有xssf,先下载:https://code.google.com/archive/p/xssf/downloads 将下载下来的zip文件解压,将其中的d ...
- 深入理解js中的apply、call、bind
概述 js中的apply,call都是为了改变某个函数运行时的上下文环境而存在的,即改变函数内部的this指向. apply() apply 方法传入两个参数:一个是作为函数上下文的对象,另外一个是作 ...