Zookeeper的安装配置和简单使用-yellowcong
来源:互联网 发布:剑三捏脸数据清丽成女 编辑:程序博客网 时间:2024/06/05 02:07
折腾了一下zookeeper,Zookeeper是由Apache Handoop的子项目发展而来, ZooKeeper本质上是一个分布式的小文件存储系统,zookeeper仿照了google的chubby,因为google的chubby是不开源的。可以用于分布式系统的文件配置,服务发现,类似的还有Etcd,Etcd可以说是zookeeper的简化版本,类是的服务发现项目还有Consul、doozer。Doozer在国外是比较火的,我们在做项目中, 比较常用的是Etcd,zookeeper和consul三个项目
下载安装
官方下载地址:http://www.apache.org/dyn/closer.cgi/zookeeper/,用户可以自行选择一个速度较快的镜像来下载即可。
#下载安装包,我下载的是3.4.10版本的wget http://mirror.bit.edu.cn/apache/zookeeper/zookeeper-3.4.10/zookeeper-3.4.10.tar.gz#解压zookeeper,就完成了安装操作tar -zxvf zookeeper-3.4.10.tar.gz
目录结构
- bin目录
zk的可执行脚本目录,包括zk服务进程,zk客户端,等脚本。其中,.sh是Linux环境下的脚本,.cmd是Windows环境下的脚本。 - conf目录
配置文件目录。zoo_sample.cfg为样例配置文件,需要修改为自己的名称,一般为zoo.cfg。log4j.properties为日志配置文件。 - lib
zk依赖的包。 - contrib目录
一些用于操作zk的工具包。 - recipes目录
zk某些用法的代码示例
各个目录下的文件,如下图
Zookeeper启动
启动前,需要添加一个zoo.cfg的配置文件,在Windows环境下,直接双击zkServer.cmd即可。在Linux环境下,进入bin目录,执行命令
#启动前,需要添加一个zoo.cfg的配置文件cp zoo_sample.cfg zoo.cfg#直接启动./zkServer.sh start#启动的时候,查看后台信息./zkServer.sh start-foreground#查看zookeeper 运行状态ps -ef |grep zookeeper
这个启动中,报错了,说zoo.cfg配置文件没有找到的情况
正常启动
grep: /usr/local/zookeeper/zookeeper-3.4.10/bin/../conf/zoo.cfg: 没有那个文件或目录
配置文件没有,所以导致了启动报错的情况,启动前,需要添加一个zoo.cfg的配置文件
#启动前,需要添加一个zoo.cfg的配置文件cp zoo_sample.cfg zoo.cfg
配置文件说明
需要将conf目录下的,conf目录下提供了配置的样例zoo_sample.cfg,要将zk运行起来,需要将其名称修改为zoo.cfg。
- tickTime
- 时长单位为毫秒,为zk使用的基本时间度量单位。例如:
- 1 、tickTime是客户端与zk服务端的心跳时间
- 2、 tickTime是客户端会话的超时时间。
- 3、 tickTime的默认值为2000毫秒,更低的tickTime值可以更快地发现超时问题,但也会导致更高的网络流量(心跳消息)和更高的CPU使用率(会话的跟踪处理)。
- 时长单位为毫秒,为zk使用的基本时间度量单位。例如:
- clientPort
- zk服务进程监听的TCP端口,默认情况下,服务端会监听2181端口。
- dataDir
- 无默认配置,必须配置,用于配置存储快照文件的目录。如果没有配置
- dataLogDir 那么事务日志也会存储在此目录。
- initLimit 用来配置客户端初始化,可以接受多少个心跳监测
- 比如配置的是10 ,10*tickTime (2000默认),默认20s没有连接上集群的配置,就不尝试了,连接失败
- syncLimit 用来配置Leader和follwer之间,允许多少个请求应答长度
- 比如默认配置是5、 5*tickTime (2000默认),表示默认10s钟,Leader和Follwer之间如果消息5次没有发送成功就不尝试了
- server.NUM=IP:port1:port2 (server.1=127.0.0.1:2222:2225)
- NUM表示本机为第几号服务器;IP为本机ip地址;
- port1为leader与follower通信端口;
- port2为参与竞选leader的通信端口
- 多个实例的端口配置不能重复
#zoo_sample.cfg配置文件# The number of milliseconds of each ticktickTime=2000# The number of ticks that the initial# synchronization phase can takeinitLimit=10# The number of ticks that can pass between# sending a request and getting an acknowledgementsyncLimit=5# the directory where the snapshot is stored.# do not use /tmp for storage, /tmp here is just# example sakes.#数据目录dataDir=/tmp/zookeeper#日志目录dataLogDir=/xxxx/xx# the port at which the clients will connectclientPort=2181# 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#server.NUM=IP:port1:port2 NUM表示本机为第几号服务器;IP为本机ip地址;#port1为leader与follower通信端口;port2为参与竞选leader的通信端口#多个实例的端口配置不能重复server.1=127.0.0.1:2222:2225server.2=127.0.0.1:3333:3335server.3=127.0.0.1:4444:4445
登录zookeeper
./zkCli.sh -server 127.0.0.1:2181
拒绝连接
由于iptables使用的是2181端口,可能是端口没有开放问问题导致没有连接上
解决办法
#添加规则iptables -I INPUT -p tcp -m tcp --dport 2181 -m state --state NEW,ESTABLISHED -j ACCEPT#保存service iptables save #重启生效service iptables restart#登录成功后,会有提示是zk: xxx connected ./zkCli.sh -server 127.0.0.1:2181
简单操作
#创建节点create /test test1#获取节点数据get /test#更新节点set /test test2#删除节点delete /test#递归删除数据,将子目录的数据也删除掉rmr /test #查看节点ls / #查看输入过的命令history
具体的api操作,说实话,功能还不少
使用ZooKeeper四字命令
使用命令的方法
#查看配置信息echo conf|en localhost 2181#查看连接信息echo cons|en 192.168.1.1 2181
阅读全文
0 0
- Zookeeper的安装配置和简单使用-yellowcong
- Zookeeper之Curator框架简单使用-yellowcong
- Zookeeper安装和简单使用
- Nginx之简单使用及配置-yellowcong
- Jenkins之安装及简单使用-yellowcong
- ZooKeeper的安装和配置
- Zookeeper的安装和配置
- Zookeeper的安装和配置
- zookeeper的安装和配置
- zookeeper的安装和配置
- Zookeeper的安装和配置
- ZooKeeper的安装和配置
- zookeeper-3.4.6的安装和简单使用
- Maven之安装和Eclipse配置-yellowcong
- zookeeper简单配置使用
- Zookeeper的安装和使用
- Zookeeper的安装和使用
- 分布式zookeeper+dubbo的简单配置使用
- 7614_最低通行费
- Python 学习笔记 多进程 multiprocessing
- C++ 浮点型四舍五入
- eclipse中使用git命令行操作的配置方法
- 用JavaScript调用.exe文件 兼容浏览器
- Zookeeper的安装配置和简单使用-yellowcong
- Python 模块
- python 爬虫入门(5) url异常处理 ; cookie使用 ;cookielib
- elasticsearch 5.x 版本插件安装
- https的安全传输原理
- [日常训练] 三角形
- mysql数据库根据datetime数据查询某一时间区间的数据数量
- 总结:Web中关于JPEG 、PNG和GIF的区别
- 各大OJ题目分类