
Zookeeper
wbj0110
这个作者很懒,什么都没留下…
展开
-
Zookeeper简介
Zookper: 一种分布式应用的协作服务 Zookper是一种分布式的,开源的,应用于分布式应用的协作服务。它提供了一些简单的操作,使得分布式应用可以基于这些接口实现诸如同步、配置维护和分集群或者命名的服务。Zookper很容易编程接入,它使用了一个和文件树结构相似的数据模型。可以使用Java或者C来进行编程接入。 众所周知,分布式的系统协作服务很难有让人满意的产品。这些协作服务产...原创 2013-11-06 09:16:51 · 120 阅读 · 0 评论 -
深入浅出Zookeeper之四Create请求和处理
客户端接口 Java代码 public String create(final String path, byte data[], List<ACL> acl, CreateMode createMode) throws KeeperException, InterruptedException ...原创 2015-01-29 10:34:04 · 195 阅读 · 0 评论 -
深入浅出Zookeeper之五 Leader选举
前面几篇文章简单介绍了zookeeper的单机server client处理。接下来几篇文章会介绍分布式部署下zookeeper的实现原理。我们假设有3台server的集群,zoo.cfg配置如下 Xml代码 tickTime=2000 dataDir=/home/admin/zk-data clientPort=2181 #Learner初始化连接到...原创 2015-01-30 09:00:48 · 186 阅读 · 0 评论 -
深入浅出Zookeeper之六 Leader/Follower初始化
前一篇介绍了Leader选举,这一篇介绍选举成功之后Leader和Follower之间的初始化。 先看Leader端操作 Java代码 case LEADING: LOG.info("LEADING"); try { //初始化Leader对...原创 2015-01-30 09:02:57 · 390 阅读 · 0 评论 -
深入浅出Zookeeper之七分布式CREATE事务处理
前面几篇文章讲了follower和leader之间如何选举和初始化的,这一篇将以之前描述过的CREATE请求作为例子来描述在集群环境下是如何处理事务的。 关于client和zookeeper server的描述前几篇文章已经涉及了。这里不就不再赘述了。假设client和某一个follower建立了连接,并发送了CREATE请求。在follower端,IO线程拿到请求开始执行处理链,Follo...原创 2015-01-30 09:03:22 · 284 阅读 · 0 评论 -
Zookeeper与paxos算法
一、 zookeeper是什么 官方说辞:Zookeeper 分布式服务框架是Apache Hadoop 的一个子项目,它主要是用来解决分布式应用中经常遇到的一些数据管理问题,如:统一命名服务、状态同步服务、集群管理、分布式应用配置项的管理等。 好抽象,我们改变一下方式,先看看它都提供了哪些功能,然后再看看使用它的这些功能能做点什么。 二、 ...原创 2013-10-09 09:19:08 · 90 阅读 · 0 评论 -
Zookeeper在引擎离线数据处理系统的运用以及遇到过的问题
时至今日,zookeeper在分布式的应用场景已经多越来越多了, 比如解决hbase的hmaster单点问题,分布式锁,分布式队列,集群机器监控等等。zookeeper提供的功能包括:配置维护、名字服务、分布式 同步、组服务等。而在引擎后台数据处理系统里怎么使用zookeeper的呢?以及在使用过程中遇到那些问题呢? 首先,介绍一下zookeeper zookeeper简介 ...原创 2015-03-02 10:22:06 · 202 阅读 · 0 评论 -
Zookeeper注册节点的掉线自动重新注册及测试方法
在一套分布式的online services系统中,各service通常不会放在一台服务器上,而是通过Zookeeper这样的东西,将自己的service信息注册到上面,service的使用者通过Zookeeper来发现各service的信息,从而可以将request发送到不同的service上去处理。 如上图所示,两个Service Provider 1和2分别在192.168.1.5...原创 2015-03-02 10:58:36 · 341 阅读 · 0 评论 -
分布式服务框架 Zookeeper -- 管理分布式环境中的数据
安装和配置详解 本文介绍的 Zookeeper 是以 3.2.2 这个稳定版本为基础,最新的版本可以通过官网 http://hadoop.apache.org/zookeeper/来获取,Zookeeper 的安装非常简单,下面将从单机模式和集群模式两个方面介绍 Zookeeper 的安装和配置。 单机模式 单机安装非常简单,只要获取到 Zookeeper 的压缩包并解压到某个目录如:/h...原创 2015-03-02 11:34:59 · 129 阅读 · 0 评论 -
Spark技术内幕:Master基于ZooKeeper的High Availability(HA)源码实现
如果Spark的部署方式选择Standalone,一个采用Master/Slaves的典型架构,那么Master是有SPOF(单点故障,Single Point of Failure)。Spark可以选用ZooKeeper来实现HA。 ZooKeeper提供了一个Leader Election机制,利用这个机制可以保证虽然集群存在多个Master但是只有一个是Active的,其他...原创 2015-03-02 12:02:43 · 112 阅读 · 0 评论 -
跟着实例学习ZooKeeper的用法: 临时节点
使用Curator也可以简化Ephemeral Node (临时节点)的操作。 临时节点驻存在ZooKeeper中,当连接和session断掉时被删除。 比如通过ZooKeeper发布服务,服务启动时将自己的信息注册为临时节点,当服务断掉时ZooKeeper将此临时节点删除,这样client就不会得到服务的信息了。 PersistentEphemeralNode类代表临时节点。 通过下...原创 2015-03-02 17:01:06 · 648 阅读 · 0 评论 -
Zookeeper开源客户端框架Curator简介与示例
简介 Curator最初由Netflix的Jordan Zimmerman开发, Curator提供了一套Java类库, 可以更容易的使用ZooKeeper. 所谓ZooKeeper技巧(ZooKeeper Recipes),也可以称之为解决方案, 或者叫实现方案, 是指ZooKeeper的使用方法, 比如分布式的配置管理, Leader选举等 ...原创 2015-03-10 10:39:25 · 160 阅读 · 0 评论 -
为什么不应该使用ZooKeeper做服务发现
【编者的话】本文作者通过ZooKeeper与Eureka作为Service发现服务(注:WebServices体系中的UDDI就是个发现服务)的优劣对比,分享了Knewton在云计算平台部署服务的经验。本文虽然略显偏激,但是看得出Knewton在云平台方面是非常有经验的,这篇文章从实践角度出发分别从云平台特点、CAP原理以及运维三个方面对比了ZooKeeper与Eureka两个系统作为发布服务...原创 2015-03-30 11:50:32 · 922 阅读 · 0 评论 -
深入浅出Zookeeper之三Exists请求和处理
前一篇介绍了zookeeper的client和server之间session是如何建立的。在DataMonitor的例子中,DataMonitor通过exists异步接口和server端交互,本文将介绍exists操作是如何完成。 dataMonitor开始exist操作 Java代码 public void exists(final String path...原创 2015-01-29 10:31:29 · 576 阅读 · 0 评论 -
深入浅出Zookeeper之二Session建立
上一篇,小编给大家介绍了zookeeper server端的启动。这一篇将来说一下client和server端是如何建立session的。通过官网的DataMonitor例子来说明。通过Session建立这个例子,可以大概知道client端和server端是如何处理请求的,之间是如何通信的。 官网Datamonitor的代码: Executor Java代码 p...原创 2015-01-29 10:28:43 · 179 阅读 · 0 评论 -
Zookeeper工作原理
ZooKeeper是一个分布式的,开放源码的分布式应用程序协调服务,它包含一个简单的原语集,分布式应用程序可以基于它实现同步服务,配置维护和命名服务等。Zookeeper是hadoop的一个子项目,其发展历程无需赘述。在分布式应用中,由于工程师不能很好地使用锁机制,以及基于消息的协调机制不适合在某些应用中使用,因此需要有一种可靠的、可扩展的、分布式的、可配置的协调机制来统一系统的状态。Zook...原创 2013-11-06 09:17:19 · 74 阅读 · 0 评论 -
zookeeper使用和原理探究
zookeeper介绍zookeeper是一个为分布式应用提供一致性服务的软件,它是开源的Hadoop项目中的一个子项目,并且根据google发表的<The Chubby lock service for loosely-coupled distributed systems>论文来实现的,接下来我们首先来安装使用下这个软件,然后再来探索下其中比较重要一致性算法。 zookeep...原创 2013-12-23 12:35:57 · 165 阅读 · 0 评论 -
从远程调用框架认识Zookeeper
远程调用是系统或进程间的通信机制,是分布式系统开发的核心技术。远程调用技术可以将一组计算机系统形成一个网络系统,对外提供整体服务,那么这一群的计算机系统就构成了一个更大型、性能更高的计算机系统。 远程调用服务的架构设计总述 首先我们要深入理解以下几个问题:为什么应用软件服务里需要一个远程调用服务?远程调用服务解决了软件设计中的什么问题? 笔者曾写过一篇关于分布式网站架构设计的文章,...原创 2015-01-28 10:22:03 · 95 阅读 · 0 评论 -
Zookeeper与paxos算法
一、 zookeeper是什么 官方说辞:Zookeeper 分布式服务框架是Apache Hadoop 的一个子项目,它主要是用来解决分布式应用中经常遇到的一些数据管理问题,如:统一命名服务、状态同步服务、集群管理、分布式应用配置项的管理等。 好抽象,我们改变一下方式,先看看它都提供了哪些功能,然后再看看使用它的这些功能能做点什么。 二、 ...原创 2015-01-28 11:28:27 · 109 阅读 · 0 评论 -
zookeeper启动脚本的bug
最近使用zookeeper发现, 首次启动zookeeper时, 都会遇到一个错误: $ bin/zkServer.sh start JMX enabled by default Using config: /home/nauhcud/workspace/zookeeper/zookeeper/bin/../conf/zoo.cfg Starting zookeeper .....原创 2014-03-04 09:16:07 · 202 阅读 · 0 评论 -
zookeeper初探
原理: ZK是Apache Hadoop的一个子项目(分布式服务框架),主要用来解决分布式集群中应用系统的一致性问题,它能提供基于类似于文件系统的目录节点树方式的数据存储,但是ZK并不是用来专门存储数据的,它的作用主要是用来维护和监控你存储的数据的状态变化(统一命名服务、状态同步服务、集群管理、分布式应用配置项的管理等)。通过监控这些数据状态的变化,从而可以达到基于数据的集群管理。 ...原创 2014-03-04 09:16:30 · 120 阅读 · 0 评论 -
ZooKeeper概述
ZooKeeper 分布式应用的分布式协调服务。 ZooKeeper为分布式应用(distributed applications)提供开源的,分布式的协调服务。分布式应用使用ZooKeeper提供的一组简单的原语来构建更高层次的服务,比如同步,配置维护,组和命名。ZooKeeper容易编程,数据模型类似于文件系统的目录树结构。ZooKeeper背后的动机就是为了解除分...原创 2014-03-06 11:32:26 · 106 阅读 · 0 评论 -
图解zookeeper FastLeader选举算法
zookeeper配置为集群模式时,在启动或异常情况时会选举出一个实例作为Leader。其默认选举算法为FastLeaderElection。 不知道zookeeper的可以考虑这样一个问题:某个服务可以配置为多个实例共同构成一个集群对外提供服务。其每一个实例本地都存有冗余数据,每一个实例都可以直接对外提供读写服务。在这个集群中为了保证数据的一致性,需要有一个Leader来协调一些事务。那么问...原创 2015-01-28 16:48:41 · 124 阅读 · 0 评论 -
Paxos算法详解
Paxos解决的是分布式环境中的一致性问题。可以理解为:N个服务器要确定一个值Value等于多少,只要有多于半数的服务器还是存活并可以有效通信,那么这个值就可以通过Paxos算法确定下来,并且该值是唯一的。典型的问题如:选主。 这个算法中有三个角色,提案者(proposer),接受者(acceptor)和学习者(learner)。每个服务器都可以兼职任何几种角色。在算法开始之前,每个prop...原创 2015-01-28 17:11:08 · 208 阅读 · 0 评论 -
ZooKeeper原理及使用
ZooKeeper是Hadoop Ecosystem中非常重要的组件,它的主要功能是为分布式系统提供一致性协调(Coordination)服务,与之对应的Google的类似服务叫Chubby。今天这篇文章分为三个部分来介绍ZooKeeper,第一部分介绍ZooKeeper的基本原理,第二部分介绍ZooKeeper提供的Client API的使用,第三部分介绍一些ZooKeeper典型的应用场景。...原创 2015-01-28 17:55:00 · 97 阅读 · 0 评论 -
ZooKeeper
1 Zookeeper介绍 Zookeeper是一个分布式的协调服务,为分布式应用程序提供synchronization、configuration maintenance、groups和nameing服务。 Zookeeper是一个有众多服务器节点组成的集群,这些节点中有一个主节点(leader),leader是通过leader selection自动地从服务器节点中选举出来。Zook...原创 2015-01-29 09:30:30 · 109 阅读 · 0 评论 -
深入浅出Zookeeper之一Server启动
大名鼎鼎的Zookeeper是解决分布式问题的神器。小编最近简单阅读了代码,分享一下。有不对之处,还请大家指出。 整篇文章将分多个系列完成,因为涉及点比较多,很难在一片文章内搞定。关于zookeeper的使用场景,大家参考http://rdc.taobao.com/team/jm/archives/1232。api使用参考官网手http://zookeeper.apache.org/doc/t...原创 2015-01-29 09:58:41 · 503 阅读 · 0 评论 -
zookeeper-01:软件的安装
ZooKeeper是Hadoop的正式子项目,它是一个针对大型分布式系统的可靠协调系统,提供的功能包括:配置维护、名字服务、分布式同步、组服务等。ZooKeeper的目标就是封装好复杂易出错的关键服务,将简单易用的接口和性能高效、功能稳定的系统提供给用户。 以上内容摘自baidu百科! 下面我们一起来看看zookeeper的安装和一些简单的配置。 1、单机环境下zook...原创 2014-04-20 12:03:27 · 94 阅读 · 0 评论