ZooKeeper

ZooKeeper是一个分布式的,开放源码的分布式应用程序协调服务,是Google的Chubby一个开源的实现,是Hadoop和Hbase的重要组件。它是一个为分布式应用提供一致性服务的软件,提供的功能包括:配置维护、域名服务、分布式同步、组服务等。(百度百科)

1、下载与解压

下载:apache-zookeeper-3.5.5.tar.gz

解压:tar -xzvf apache-zookeeper-3.5.5.tar.gz -C /usr/local/zookeeper

进入:cd /usr/local/zookeeper/apache-zookeeper-3.5.5/

目录: 

命令:

2、启动

2.1、单个节点启动

2.1.1、配置

cat conf/zoo.cfg

dataDir=/var/zookeeper

clientPort=2181

2.1.2、启动

bin/zkServer.sh start

查看进程:

未发现服务成功启动!查看日志如下:

cat logs/zookeeper-root-server-localhost.out

错误: 找不到或无法加载主类 org.apache.zookeeper.server.quorum.QuorumPeerMain

查看cat README.md文件:需要mvn打包源码生成jar包,注意跳过测试类(太耗时!)

mvn clean install -DskipTests

再次启动:

bin/zkServer.sh start

2.1.3、客户端连接

连接服务端:

bin/zkCli.sh -server localhost:2181

查看节点:

[zk: localhost:2181(CONNECTED) 4] ls /

[zookeeper]

创建节点:

[zk: localhost:2181(CONNECTED) 5] create /zk_test my_data

Created /zk_test

[zk: localhost:2181(CONNECTED) 6] ls /

[zk_test, zookeeper]

[zk: localhost:2181(CONNECTED) 7] get /zk_test

my_data

修改节点:

[zk: localhost:2181(CONNECTED) 8] set /zk_test junk

[zk: localhost:2181(CONNECTED) 9] get /zk_test

junk

删除节点:

[zk: localhost:2181(CONNECTED) 11] delete /zk_test

junk

2.2、多个节点启动

2.2.1、配置

序号

服务与端口

数据目录

1

192.168.220.13:2181

/var /zookeeper

2

192.168.220.14:2181

/var /zookeeper

3

192.168.220.15:2181

/var /zookeeper

zoo.cfg配置文件:

# The number of milliseconds of each tick

tickTime=2000

# The number of ticks that the initial

# synchronization phase can take

initLimit=10

# The number of ticks that can pass between

# sending a request and getting an acknowledgement

syncLimit=5

# the directory where the snapshot is stored.

# do not use /tmp for storage, /tmp here is just

# example sakes.

dataDir=/var/zookeeper

# the port at which the clients will connect

clientPort=2181

server.1=192.168.229.13:2888:3888

server.2=192.168.229.14:2888:3888

server.3=192.168.229.15:2888:3888

# the maximum number of client connections.

# increase this if you need to handle more clients

#maxClientCnxns=60

#

# Be sure to read the maintenance section of the

# administrator guide before turning on autopurge.

#

# http://zookeeper.apache.org/doc/current/zookeeperAdmin.html#sc_maintenance

#

# The number of snapshots to retain in dataDir

#autopurge.snapRetainCount=3

# Purge task interval in hours

# Set to "0" to disable auto purge feature

#autopurge.purgeInterval=1

分别在每个服务器/var /zookeeper下创建myid文件,内容如下:

1,2,3(对应zoo.cfg中的server.x)。

端口说明:

1、2181:对cline端提供服务

2、3888:选举leader使用

3、2888:集群内机器通讯使用(Leader监听此端口)

zk各节点防火墙设置:

-A INPUT -m state --state NEW -m tcp -p tcp --dport 2181 -j ACCEPT

-A INPUT -m state --state NEW -m tcp -p tcp --dport 2888 -j ACCEPT

-A INPUT -m state --state NEW -m tcp -p tcp --dport 3888 -j ACCEPT

2.2.2、启动

登录各节点启动服务:bin/zkServer.sh start

节点操作:bin/zkCli.sh -server 192.168.229.13:2181

[zk: 192.168.229.13:2181(CONNECTED) 5] ls /

[admin, brokers, cluster, config, consumers, controller, controller_epoch, isr_change_notification, latest_producer_id_block, log_dir_event_notification, zookeeper]

[zk: 192.168.229.13:2181(CONNECTED) 6] create /zk_test zk_test_data

Created /zk_test

[zk: 192.168.229.13:2181(CONNECTED) 7] ls /

[admin, brokers, cluster, config, consumers, controller, controller_epoch, isr_change_notification, latest_producer_id_block, log_dir_event_notification, zk_test, zookeeper]

[zk: 192.168.229.13:2181(CONNECTED) 8] get /zk_test

zk_test_data

[zk: 192.168.229.13:2181(CONNECTED) 9] set /zk_test my_data

[zk: 192.168.229.13:2181(CONNECTED) 10] get /zk_test

my_data

[zk: 192.168.229.13:2181(CONNECTED) 11]

ZooKeeper搭建集群的更多相关文章

  1. Zookeeper搭建集群及协同

    Zookeeper搭建集群及协同 协同的实现 首先启动一个zkCli客户端(zkCLi-1),创建一个workers节点. create /workers 使用ls监控当前节点. ls -w /wor ...

  2. Zookeeper分布式集群搭建

    实验条件:3台安装linux的机子,配置好Java环境. 步骤1:下载并分别解包到每台机子的/home/iHge2k目录下,附上下载地址:http://mirrors.cnnic.cn/apache/ ...

  3. 初始zookeeper与集群搭建实例

    zookeeper是什么 Zookeeper,一种分布式应用的协作服务,是Google的Chubby一个开源的实现,是Hadoop的分布式协调服务,它包含一个简单的原语集,应用于分布式应用的协作服务, ...

  4. 虚拟机搭建Zookeeper服务器集群完整笔记

    虚拟机搭建Zookeeper服务器集群完整笔记 本笔记主要记录自己搭建Zookeeper服务器的全过程,默认已经安装部署好Centos7. 一.虚拟机下Centos无法联网解决方案 1.首先调整虚拟机 ...

  5. window环境搭建zookeeper,kafka集群

    为了演示集群的效果,这里准备一台虚拟机(window 7),在虚拟机中搭建了单IP多节点的zookeeper集群(多IP节点的也是同理的),并且在本机(win 7)和虚拟机中都安装了kafka. 前期 ...

  6. 搭建zookeeper+kafka集群

      搭建zookeeper+kafka集群 一.环境及准备 集群环境:   软件版本: 部署前操作: 关闭防火墙,关闭selinux(生产环境按需关闭或打开) 同步服务器时间,选择公网ntpd服务器或 ...

  7. win10环境下搭建zookeeper伪集群

    一.下载zookeeper https://mirrors.tuna.tsinghua.edu.cn/apache/zookeeper/ 这里笔者下载的是zookeeper-3.3.6 二.配置zoo ...

  8. 初识ZooKeeper与集群搭建实例

    原文链接:http://www.linuxidc.com/Linux/2015-02/114230.htm zookeeper是什么 Zookeeper,一种分布式应用的协作服务,是Google的Ch ...

  9. Zookeeper+ActiveMQ集群搭建

    搭建三台虚拟机安装centos7.要提前安装好jdk环境 1.环境准备,搭建三台虚拟机ip分别是 192.168.192.130 192.168.192.131 192.168.192.134 Zoo ...

随机推荐

  1. java 查询指定月份的工作日(不包括法定节假日)

    /** * 日期工具类 用于获取指定月份的工作日(除去周末和法定节假日) */ public class DateUtils { public static void main(String[] ar ...

  2. pytest——pycharm中右击运行(run)没有问题,在terminal中运行pytest报错:E ModuleNotFoundError: No module named

    参考了这个解决办法:https://blog.csdn.net/qq_36829091/article/details/82180866 我的是Windows,linux的和Windows的解决办法有 ...

  3. ql自动化测试之路-概述篇

    前言:本节主要讲解自动化测试的基本概述,包括分层自动化测试.自动化测试中用到的工具.以及关于自动化测试的想法 一.分层自动化测试 上图是经典的测试金字塔.用它来形容目前测试投入的价值是比较适合的,同样 ...

  4. Django操作cookie

    浏览器清空cookie快捷键:ctrl+shift+delete,cookie中包含csrf认证信息 获取Cookie request.COOKIES['key'] request.COOKIES.g ...

  5. C语言基础知识(一)——关键字

    存储类别说明符变量:auto.register.static.extern._Thread_local.typedef 存储类型限定符:const.volatile.restrict._Atomic ...

  6. 设计模式系列之单例模式(Singleton Pattern)——确保对象的唯一性

    模式概述 模式定义 模式结构图 饿汉式单例与懒汉式单例 饿汉式单例 懒汉式单例 模式应用 模式在JDK中的应用 模式在开源项目中的应用 模式总结 主要优点 适用场景 说明:设计模式系列文章是读刘伟所著 ...

  7. 统计元音(hdu20)

    输入格式:输入一个整型,再循环输入带空格的字符串. 思考:先用scanf()函数输入一个整型,后面直接来个大循环,带空格字符串输入直接用gets()函数. 注意:由于scanf()里面多加了%c,&a ...

  8. k3s-安装

    k3s介绍 K3S是一个轻量级的K8S集群,它是Rancher Lab开发的一个新的产品, 目的是在资源有限的设备上面跑K8S.它的最大特点就是小,二进制包只有40MB,只需要512MB的内存就能跑起 ...

  9. html5拖动监听

    在拖动目标上触发事件 (源元素): ondragstart - 用户开始拖动元素时触发 ondrag - 元素正在拖动时触发 ondragend - 用户完成元素拖动后触发 释放目标时触发的事件: o ...

  10. 第3章_关系数据库标准语言(SQL)_006_由元组关系演算到SQL Command_001_蕴含式 (其中有对EXISTS的分析)

    前序的链接:元组关系演算 六. 蕴含式 ===>1. 什么是“蕴含式”===>设p.q为两个命题.复合命题“如果p,则q”称为p与q的蕴含式,记作p→q,并称p为蕴含式的前件,q为后件.定 ...