Zookeeper的简介这里我就不说了,在接下来的几篇文章会涉及zookeeper环境搭建,watcher以及相关配置说明,

三种操作zookeeper的方式(原生API方式,zkclient,Curator),分布式锁等进行说明。

环境安装

一般来说,zookeeper安装方式有三种,单机模式和集群模式以及伪集群模式。

1.单机模式:Zookeeper只运行在一台服务器上,适合测试环境;

2.伪集群模式:就是在一台物理机上运行多个Zookeeper 实例。

3.集群模式:Zookeeper运行于一个集群上,适合生产环境,

这里演示 集群模式,使用zookeeper-3.4.5.tar.gz 在VMware上开启三个linux机器

Ip分别是

server.0=192.168.0.120

server.1=192.168.0.111

server.2=192.168.0.117

关闭防火墙(service iptables stop)

上传zookeeper-3.4.5.tar.gz 到相对应的文件夹

并解压到 /usr/local/software/zookeeper-3.4.5

进入conf目录,修改配置文件

复制 zoo_sample.cfg文件并改名为zoo.cfg  命令: cp  zoo_sample.cfg  zoo.cfg
修改zoo.cfg文件

修改为 /usr/local/zk/data(创建命令为 mkdir  -p  /usr/local/zk/data)

在末尾添加(这个ip设置成你的ip即可)

server.0=192.168.0.120:2888:3888

server.1=192.168.0.111:2888:3888

server.2=192.168.0.117:2888:3888

退出保存

在/usr/local/zk/data 文件夹下创建myid文件 并修改myid的内容 为下面相对应的值

server.0=192.168.0.120   即192.168.0.120 上的zk 的myid 0

server.1=192.168.0.111   即192.168.0.111上的zk 的myid 1

server.2=192.168.0.117   即192.168.0.117上的zk 的myid 2

把zk的几个变量添加到环境变量中

source /etc/profile

其他两个机器上的操作类似,最后开启三个zk服务器

zkServer.sh start

到这里,基本环境已经搭建完毕 。

关于zookeeper的数据结构(类似于linux的树形结构,读的性能很强大 一秒 10W+)

每一个节点被称为znode,znode可以有子节点,并且每个znode可以存储数据(但是:临时节点不可以有子节点)

每个节点都可以被监控,包含znode本身的数据变化,以及znode下的子节点的变化,都可以进行监控,这也是ZK的核心特性(后面会讲到)

从我们的安装过程,可以看出,zookeeper包含一个Leader(负责写) ,2个flower(负责读,参与leader的选举),其实还包含一个watcher(后面说)

我们可以直接通过 zkCli.sh命令 进入客户端进行操作

基本操作命令:

另外,我们可以通过eclipse 集成zookeeper插件来查看相关 数据

Step 1. 在 Eclipse 菜单打开Help -> Install New Software…

Step 2. 添加 url   http://www.massedynamic.org/eclipse/updates/

Step 3. 选择插件并安装运行

Step 4. 在 Eclipse 菜单打开Window->Show View->Other…->ZooKeeper 3.2.2

Zookeeper系列1 快速入门的更多相关文章

  1. SpringBoot系列: RestTemplate 快速入门

    ====================================相关的文章====================================SpringBoot系列: 与Spring R ...

  2. Flask开发系列之快速入门

    Flask开发系列之快速入门 文档 一个最小的应用 调试模式 路由 变量规则 构造 URL HTTP 方法 静态文件 模板渲染 访问请求数据 环境局部变量 请求对象 文件上传 Cookies 重定向和 ...

  3. BIML 101 - ETL数据清洗 系列 - BIML 快速入门教程 - 序

    BIML 101 - BIML 快速入门教程 做大数据的项目,最花时间的就是数据清洗. 没有一个相对可靠的数据,数据分析就是无木之舟,无水之源. 如果你已经进了ETL这个坑,而且预算有限,并且有大量的 ...

  4. BIML 101 - ETL数据清洗 系列 - BIML 快速入门教程 - 连接数据库执行SQL语句

    BIML 101 - BIML 快速入门教程 第一节 连接数据库执行SQL语句 本小节将用BIML建一个简单的可以执行的包. 新建一个biml文件,贴入下面的代码 1 <Biml xmlns=& ...

  5. Maven系列之快速入门

    文章结构 唯快不破---Maven快速入门 稳打稳扎---Maven核心知识 实用为先---Maven如何建立Web项目  1   唯快不破---Maven快速入门       1.1 Maven项目 ...

  6. Quartz.NET开源作业调度框架系列(一):快速入门step by step

    Quartz.NET是一个被广泛使用的开源作业调度框架 , 由于是用C#语言创建,可方便的用于winform和asp.net应用程序中.Quartz.NET提供了巨大的灵活性但又兼具简单性.开发人员可 ...

  7. SpringBoot系列: JdbcTemplate 快速入门

    对于一些小的项目, 我们没有必要使用MyBatis/JPA/Hibernate等重量级技术, 直接使用Spring JDBC 即可, Spring JDBC 是对 jdbc的简单封装, 很容易掌握. ...

  8. Quartz.NET开源作业调度框架系列(一):快速入门step by step-转

    Quartz.NET是一个被广泛使用的开源作业调度框架 , 由于是用C#语言创建,可方便的用于winform和asp.net应用程序中.Quartz.NET提供了巨大的灵活性但又兼具简单性.开发人员可 ...

  9. BIML 101 - ETL数据清洗 系列 - BIML 快速入门教程 - 将文本文件(csv)数据导进数据库

    第二节 将文本文件数据导进数据库 该小节介绍如何用BIML生成ssis包,将货币文本导入到数据库currency的表中. SSIS组件: Connection Manager组建管理connectio ...

随机推荐

  1. sequelize查询数据的日期格式化

    首先确定时区 const sequelize = new Sequelize(config.database, config.username, config.password, { host: co ...

  2. SpringMVC复习

    第一天 springmvc.xml 一个配置文件,SpringMVC本身就是Spring的子项目,对Spring兼容性很好,不需要做很多配置. 这里只配置一个Controller扫描就可以了,让Spr ...

  3. HTML禁止鼠标右键的代码

    禁止鼠标右键,把Demo的图片全都设为表格的背景,表格的大小与图片的大小一样.这样做看起来是一样的,主要是防止鼠标经过图片时会出现另存的按钮.禁止鼠标右键的代码很简单:<script LANGU ...

  4. 数据访问安全--数据库遮罩及断词 Data Masking & Tokenization

    现在大数据时代几乎无隐私,各政府部门各公司都要求实名制(动不动手机认证,身份证号码认证),但又无力确保数据安全,称为乱象. 其实在2011年,我们就接触过数据库遮罩断词产品,一个澳大利亚公司产品. 简 ...

  5. 有哪些你不知道的python小工具

    python作为越来越流行的一种编程语言,不仅仅是因为它语言简单,有许多现成的包可以直接调用. python中还有大量的小工具,让你的python工作更有效率. 1.- 快速共享 - HTTP服务器 ...

  6. uva-10041-水题

    题意:有个人想找到个房子住,并且他经常去其他街道,输入n条街,给这个人选择一条街,使得他去其他街道的距离总和最小. 排序,双重for #include <string> #include& ...

  7. 《面向对象程序设计(java)》第七周学习总结

    1.实验目的与要求 (1)进一步理解4个成员访问权限修饰符的用途: (2)掌握Object类的常用API用法: (3)掌握ArrayList类用法与常用API: (4)掌握枚举类使用方法: (5)结合 ...

  8. zookeeper 集群部署

    参考: https://www.cnblogs.com/linuxprobe/p/5851699.html

  9. leetcode581

    public class Solution { public int FindUnsortedSubarray(int[] nums) { , end = -, min = nums[n - ], m ...

  10. pyqt5.0 GraphicsView框架

    场景(The Scene) QGraphicsScene提供图形视图场景.该场景具有以下职责: 提供用于管理大量图元的快速界面(锅) 将事件传播到每个图元(把螃蟹烧熟了) 管理图元状态,例如选择和焦点 ...