这段时间一直在忙工作上的事,原来准备更新Zookeeper的文章,一直没有时间。看着这个专栏一直空着,还是抽了点时间准备继续写下去。这一篇开始,我们来看看如何搭建zookeeper服务。


先从简单的看起吧。我们先从一台机器上搭建一个zookeeper实例服务开始。这里,我们下载的是3.4.10版本。

首先我们进行解压缩:

tar -xzvf zookeeper-3.4.10.tar.gz


然后我们就可以看到生成了一个zookeeper-3.4.10文件夹,这个文件夹中有我们想要的文档、源码和二进制可执行程序等所有的东西。



对于我们来说,只需要关注bin目录和conf目录。

bin目录:包含一些脚本文件,用于启动zookeeper服务,连接zookeeper服务和设置环境变量等;

conf目录:存放一些配置文件,包含zookeeper服务器的配置和日志的相关配置。


接下来我们就看看如何启动zookeeper服务。首先在conf目录下有一个配置文件zoo_sample.cfg,这个配置文件是zookeeper配置文件的样本。如果我们在启动zookeeper服务的时候没有自行指定配置文件,那么将会默认使用conf/目录下的zoo.cfg配置文件,因此如果我们不想自己写配置文件,那么可以直接将zoo_sample.cfg改名为zoo.cfg并直接使用。


我们进入到zookeeper的配置文件内部,看看都有哪些配置:


其中:

tickTime:Zookeeper 服务器之间或客户端与服务器之间心跳的时间间隔。
dataDir:Zookeeper 保存数据的目录,默认情况下,Zookeeper 将写数据的日志文件也保存在这个目录里。
clientPort:Zookeeper 服务器监听端口,用来接受客户端的访问请求。

maxClientCnxns:zookeeper能够接收的最大客户端连接数。


这时候我们切换到bin目录,并使用自带的zkServer.sh脚本启动服务,如下所示:



从上面的截图可以看到,我们在使用zkServer.sh的时候,可以携带一些参数,如start、stop、restart、start-foreground(用于在前台输出一些信息,但是一旦退出控制台服务就会停止)、status。


我们可以使用status参数来查看zookeeper的状态。


从上可以看出,这个zookeeper是处于standalone状态。


接下来,就是客户端工具来连接服务了,如下所示

使用./zkCli.sh即可,如果zookeeper服务不是在本机和2181端口,那么还要进行指定,使用./zkCli.sh -server ip:port即可。



至此,基于单服务器的单实例zookeeper服务变部署完成,日常开发情况下可以帮助我们替代所有需要使用到zookeeper的地方。而在现网环境或者说生产环境下,我们就不能简单的使用一个zookeeper服务了,这时候就需要搭建zookeeper集群,下一章我们将详细讲述如何进行部署,敬请期待,谢谢。


如果想了解我最新的博文,请关注我的博客。如果想看到更多相关技术文章并愿意支持我继续写下去,欢迎给我打赏,对您的打赏我表示感谢。吐舌头





Logo

更多推荐