ZooKeeper的安装与部署

很文博客hinven.com 2018年4月20日10:08:43技术教程评论2761442字阅读模式

ZooKeeper是一个分布式的,开放源码的分布式应用程序协调服务,是Google的Chubby一个开源的实现,是Hadoop和Hbase的重要组件。它是一个为分布式应用提供一致性服务的软件,提供的功能包括:配置维护、域名服务、分布式同步、组服务等。
ZooKeeper的目标就是封装好复杂易出错的关键服务,将简单易用的接口和性能高效、功能稳定的系统提供给用户。
ZooKeeper包含一个简单的原语集,[1] 提供Java和C的接口。
ZooKeeper代码版本中,提供了分布式独享锁、选举、队列的接口,代码在zookeeper-3.4.3\src\recipes。其中分布锁和队列有Java和C两个版本,选举只有Java版本。

1.资料

  • github(https://github.com/apache/zookeeper)
  • org官方文档(https://zookeeper.apache.org/)
  • 最新release 3.5.3(https://github.com/apache/zookeeper/releases)

2.安装

0.安装JDK

1.下载相应版本

2.解压到指定目录

3.单机安装/集群安装

conf目录下提供了配置的样例zoo_sample.cfg,要将zk运行起来,需要将其名称修改为zoo.cfg。
打开zoo.cfg,可以看到默认的一些配置。

  • tickTime
    时长单位为毫秒,为zk使用的基本时间度量单位。例如,1 * tickTime是客户端与zk服务端的心跳时间,2 * tickTime是客户端会话的超时时间。
    tickTime的默认值为2000毫秒,更低的tickTime值可以更快地发现超时问题,但也会导致更高的网络流量(心跳消息)和更高的CPU使用率(会话的跟踪处理)。
  • clientPort
    zk服务进程监听的TCP端口,默认情况下,服务端会监听2181端口。
  • dataDir
    无默认配置,必须配置,用于配置存储快照文件的目录。如果没有配置dataLogDir,那么事务日志也会存储在此目录。
  • 集群配置,如:
    tickTime=2000
    dataDir=/home/myname/zookeeper
    clientPort=2181
    initLimit=5
    syncLimit=2
    server.1=192.168.229.160:2888:3888
    server.2=192.168.229.161:2888:3888
    server.3=192.168.229.162:2888:3888

4.运行

在Windows环境下,直接双击zkServer.cmd即可。在Linux/mac环境下,进入bin目录,执行命令

  1. > ./zkServer.sh start

5.连接

如果是连接同一台主机上的zk进程,那么直接运行bin/目录下的zkCli.cmd(Windows环境下)或者zkCli.sh(linux环境下),即可连接上zk。
直接执行zkCli.cmd或者zkCli.sh命令默认以主机号 127.0.0.1,端口号 2181 来连接zk,如果要连接不同机器上的zk,可以使用 -server 参数,例如:

  1. > bin/zkCli.sh -server 192.168.0.1:2181

可以使用以下命令来连接一个zk集群:

  1. > bin/zkCli.sh -server 192.168.229.160:2181,192.168.229.161:2181,192.168.229.162:2181

6.关闭

  1. > ./zkServer.sh stop

weinxin
扫一扫更精彩
大家的支持是我更新的动力!!!
Ctrl+C+V,快速安装ss和brook 技术教程

Ctrl+C+V,快速安装ss和brook

大部分人买VPS也不过就是当作学习服务器用,大部分就是自用,盈利开机场的,可以不看此文了。 如果是自用,几个人用,稳定应该才是第一位的,至于什么BBR,加速之类的,我自己的压根就没装,实在是没有必要。...
介绍几款 Docker 镜像 技术教程

介绍几款 Docker 镜像

Docker(https://www.docker.com/) 是一个开放源代码软件项目,让应用程序布署在软件容器下的工作可以自动化进行,借此在 Linux 操作系统上,提供一个额外的软件抽象层,以及...
广告也精彩
匿名

发表评论

匿名网友

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen:

确定