集群 配置:

192.168.32.80  192.168.32.81  192.168.32.82

server 1:
zjtest7-redis:/opt/zookeeper/conf# cat zoo.cfg | grep -v "^#"
tickTime=2000
initLimit=10
syncLimit=5
dataDir=/opt/zookeeper/server1/data
dataLogDir=/opt/zookeeper/server1/logs
clientPort=2181
server.1=192.168.32.80:2888:3888
server.2=192.168.32.81:2888:3888
server.3=192.168.32.82:2888:3888 server 2: zjtest7-redis2:/opt/zookeeper/conf# cat zoo.cfg | grep -v "^#"
tickTime=2000
initLimit=10
syncLimit=5
dataDir=/opt/zookeeper/server2/data
dataLogDir=/opt/zookeeper/server2/logs
clientPort=2181
server.1=192.168.32.80:2888:3888
server.2=192.168.32.81:2888:3888
server.3=192.168.32.82:2888:3888 server 3: zjtest7-haproxy:/opt/zookeeper/conf# cat zoo.cfg | grep -v "^#"
tickTime=2000
initLimit=10
syncLimit=5
dataDir=/opt/zookeeper/server3/data
dataLogDir=/opt/zookeeper/server3/logs
clientPort=2181
server.1=192.168.32.80:2888:3888
server.2=192.168.32.81:2888:3888
server.3=192.168.32.82:2888:3888 一个zookeeper 集群 只有一个leader: 类似master/slave模式 /**192.168.32.80 follower
zjtest7-redis:/opt/zookeeper/conf# telnet 192.168.32.80 2181
Trying 192.168.32.80...
Connected to 192.168.32.80.
Escape character is '^]'.
stat
Zookeeper version: 3.4.8--1, built on 02/06/2016 03:18 GMT
Clients:
/192.168.32.80:54168[0](queued=0,recved=1,sent=0)
/127.0.0.1:59950[1](queued=0,recved=23550,sent=23550) Latency min/avg/max: 0/0/111
Received: 25815
Sent: 25814
Connections: 2
Outstanding: 0
Zxid: 0x10000000b
Mode: follower
Node count: 4
Connection closed by foreign host. /***192.168.32.81 leader zjtest7-redis:/opt/zookeeper/conf# telnet 192.168.32.81 2181
Trying 192.168.32.81...
Connected to 192.168.32.81.
Escape character is '^]'.
stat
Zookeeper version: 3.4.8--1, built on 02/06/2016 03:18 GMT
Clients:
/192.168.32.80:40376[0](queued=0,recved=1,sent=0) Latency min/avg/max: 0/0/0
Received: 2
Sent: 1
Connections: 1
Outstanding: 0
Zxid: 0x10000000b
Mode: leader
Node count: 4
Connection closed by foreign host. /*******192.168.32.82
zjtest7-redis:/opt/zookeeper/conf# telnet 192.168.32.82 2181
Trying 192.168.32.82...
Connected to 192.168.32.82.
Escape character is '^]'.
stat
Zookeeper version: 3.4.8--1, built on 02/06/2016 03:18 GMT
Clients:
/192.168.32.80:56173[0](queued=0,recved=1,sent=0) Latency min/avg/max: 0/0/0
Received: 2
Sent: 1
Connections: 1
Outstanding: 0
Zxid: 0x10000000b
Mode: follower
Node count: 4
Connection closed by foreign host.
zjtest7-redis:/opt/zookeeper/conf# 客户端提交请求之后,先发送到leader,leader作为接收者,广播到每个server znode :
节点/NameService/Server1 唯一路径(Node),且携带数据 即是目录又是文件 临时节点,不能有子节点 znode节点变化的时候,可以出发事件 zookeeper 节点:znode 每个watcher 就是服务器集群中的一台机器 zookeeper 应用场景: zk 保存Storm集群的所有数据 Storm集群:Zookeeper作为nimbus(master)和supervisor(slave)的中间枢纽,
保存Storm集群和作业的所有信息,并负责nimbus和supervisor的全部通信,
Fast faill 。 Zookeeper 作为master和slave之间唯一的通道, 消息提交到master上,master会把消息发送给zookeeper,zk在分发到每个slave 发布与订阅即所谓的配置管理,顾名思义就是将数据发布到zk节点上,供订阅者动态获取数据,
实现配置信息的集中式管理和动态更新。例如全局的配置信息,地址列表等就非常适合使用。 每天节点自动从zk获取 一个节点是全局唯一的path zk 创建节点: 客户端访问: redis01:/root# cd /zookeeper/server1
redis01:/zookeeper/server1# cd bin/
redis01:/zookeeper/server1/bin# ./zkCli.sh -server localhost:2181 2 )创建一个新的 znode ,使用 create /zk myData 。这个命令创建了一个新的 znode 节点“ zk ”以及与它关联的字符串: 在leader 上创建: create /zk myData 会自动同步到所有服务器 在folloer上创建:也会同步到leader 一个节点上的数据发生变化后,通知其他节点 watch 监听节点变化 zk集群上相同的znode数据一定是相同的

1、Zookeeper熟悉和用途综述的更多相关文章

  1. zookeeper 官方文档——综述

      Zookeeper: 一个分布式应用的分布式协调服务   zookeeper 是一个分布式的,开源的协调服务框架,服务于分布式应用程序.   它暴露了一系列基础操作服务,因此,分布式应用能够基于这 ...

  2. Zookeeper从入门到精通(开发详解,案例实战,Web界面监控)

    ZooKeeper是Hadoop的开源子项目(Google Chubby的开源实现),它是一个针对大型分布式系统的可靠协调系统,提供的功能包括:配置维护.命名服务.分布式同步.组服务等. Zookee ...

  3. ZooKeeper_基础知识学习

    ZooKeeper是Hadoop的开源子项目(Google Chubby的开源实现),它是一个针对大型分布式系统的可靠协调系统,提供的功能包括:配置维护.命名服务.分布式同步.组服务等. Zookee ...

  4. ZooKeeper的十二连问,你顶得了嘛?

    前言 一线大厂ZooKeeper的十二连问,你顶得了嘛? 本文已经收录到github ❝ https://github.com/whx123/JavaHome ❞ 1. 面试官:工作中使用过Zooke ...

  5. Zookeeper基础原理&应用场景详解

    简单了解Zookeeper Tips: 如果之前对Zookeeper不了解的话,这里大概留个印象就好了 Zookeeper是一个分布式协调服务,可以用于元数据管理.分布式锁.分布式协调.发布订阅.服务 ...

  6. JS原生第二篇 (帅哥)

    1.1 Javascript 作用  1.  网页特效 2. 用户交互 3. 表单验证 Js  就是可以用来控制   结构  和 样式 . 1.2  体验js   认识常用的三个输出语句.  都属于 ...

  7. hbase调优配置项笔记

    gc配置 hbase-env.sh export HBASE_OPTS="$HBASE_OPTS -XX:+UseConcMarkSweepGC" export HBASE_OPT ...

  8. 第36章 SDIO—SD卡读写测试

    第36章     SDIO—SD卡读写测试 全套200集视频教程和1000页PDF教程请到秉火论坛下载:www.firebbs.cn 野火视频教程优酷观看网址:http://i.youku.com/f ...

  9. VirtualBox上LInux命令初步学习

    大二的寒假已经接近了尾声,寒假期间我初步使用了VirtualBox虚拟机软件,并安装了ubuntu的操作系统进行了Linux语言的学习.然而寒假期间的学习没有太多的计划,纯粹是为了完成作业而应付性的学 ...

随机推荐

  1. SharePoint需要开启的网站集功能

    1. 管理网站功能 2. 网站集功能

  2. ClassLoader简单介绍

    要理解ClassLoader,我们可以通过what.how两个方面来解释 一.what:什么事ClassLoader? 1.ClassLoader可以是将class文件加载到JVM方法区. 2.Cla ...

  3. dedecms的入门使用

    前段时间(其实也很远了)一直在学习dedecms,这里对前段时间的学习做一个总结. dedecms学习网址:http://help.dedecms.com/v53

  4. JavaScript基础知识----基本语法

    JavaScript 语句 JavaScript 语句向浏览器发出的命令.语句的作用是告诉浏览器该做什么. 分号 ; 分号用于分隔 JavaScript 语句. 通常我们在每条可执行的语句结尾添加分号 ...

  5. [LeetCode]题解(python):022-Generate Parentheses

    题目来源: https://leetcode.com/problems/generate-parentheses/ 题意分析: 题目输入一个整型n,输出n对小括号配对的所有可能性.比如说,如果输入3, ...

  6. 字符串-06. IP地址转换(20)

    #include<iostream> #include<string> #include<cmath> using namespace std; int main( ...

  7. 高级UNIX环境编程

    常规文件 只有索引节号(i-number,是一批i-node的索引),i-node不含文件名及数据字节,包括文件类型,链接数量,uid,gid,访问权限,字节数,最后访问时间,最后修改时间,信息节点最 ...

  8. nginx配置ssl加密(单双向认证、部分https)

    nginx配置ssl加密(单双向认证.部分https) nginx下配置ssl本来是很简单的,无论是去认证中心买SSL安全证书还是自签署证书,但最近公司OA的一个需求,得以有个机会实际折腾一番.一开始 ...

  9. github的.md格式文件

    md文件是github改良了markdown的语法,用来显示在项目首页的文件.在官方的网址说的很清楚: GitHub uses what we're calling "GitHub Flav ...

  10. ZigBee研究之旅(二)

    在学习ZigBee设备CC2530模块时,编程后程序无法运行,但又十分确定程序的真确性的情况下,看看是不是project栏下的option选项配置的有问题,我是经常在这里出问题,一开始找不到原因,特此 ...