iis服务器助手广告广告
返回顶部
首页 > 资讯 > 精选 >ZooKeeper在单机和集群环境下怎么安装搭建及使用
  • 119
分享到

ZooKeeper在单机和集群环境下怎么安装搭建及使用

2023-06-29 01:06:39 119人浏览 安东尼
摘要

这篇文章主要讲解了“ZooKeeper在单机和集群环境下怎么安装搭建及使用”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“ZooKeeper在单机和集群环境下怎么安装搭建及使用”吧!1、下载首

这篇文章主要讲解了“ZooKeeper在单机和集群环境下怎么安装搭建及使用”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“ZooKeeper在单机和集群环境下怎么安装搭建及使用”吧!

1、下载

首先我们下载最新稳定版本的zookeeper

2、解压

下载完成后,我们解开压缩包

3、创建配置文件

解压后的路径下找到conf文件夹,进入conf文件夹复制zoo_sample.cfg,命名为zoo.cfg

# 每个tick的毫秒数。后面的initLimit和syncLimit都以tick为单位tickTime=2000#初始化同步阶段时长initLimit=10# 同步确认时长syncLimit=5# 快照存储路径,不要使用/tmp。这里使用只是为了示例dataDir=/tmp/zookeeper# 客户端端口好clientPort=2181#可连接的client的最大数#如果需要处理更多的clinet,请增加此数量#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

对于学习来说,一般无需做修改。生产环境,需要修改dataDir。其他参数后续调优。

4、单机启动ZooKeeper

在ZooKeeper根目录下执行 bin/zkServer.sh start

➜  zookeeper-3.4.12 bin/zkServer.sh startZooKeeper JMX enabled by defaultUsing config: /Users/yimingli/dev/tool/zookeeper-3.4.12/bin/../conf/zoo.cfgStarting zookeeper ... STARTED

5、通过客户端连接ZooKeeper

➜  zookeeper-3.4.12 bin/zkCli.sh

6、通过客户端执行基本命令

创建znode,名为/my_test,携带数据testData

[zk: localhost:2181(CONNECTED) 0] create /my_test testData

查看znode信息

[zk: localhost:2181(CONNECTED) 2] get /my_test

返回如下:

testDatacZxid = 0x2e9ctime = Mon Oct 29 10:50:46 CST 2018mZxid = 0x2e9mtime = Mon Oct 29 10:50:46 CST 2018pZxid = 0x2e9cversion = 0dataVersion = 0aclVersion = 0ephemeralOwner = 0x0dataLength = 8numChildren = 0

修改znode数据

[zk: localhost:2181(CONNECTED) 3] set /my_test testDataV2

创建子znode

[zk: localhost:2181(CONNECTED) 0] create /my_test/tester1 testData

列出子znode

[zk: localhost:2181(CONNECTED) 5] ls  /my_test[tester1]

删除znode

有子节点的znode不能直接删除,否则会报错。

[zk: localhost:2181(CONNECTED) 6] delete /my_testNode not empty: /my_test

我们删除/my_test/tester1。

[zk: localhost:2181(CONNECTED) 8] delete /my_test/tester1

再次查看该znode。

[zk: localhost:2181(CONNECTED) 9] get /my_test/tester1Node does not exist: /my_test/tester1

已经被成功删除了。

7、集群配置和启动

我们配置和启动一个三台server的集群。

修改zoo.cfg文件

tickTime=2000dataDir=/var/lib/zookeeperclientPort=2181initLimit=5syncLimit=2server.1=ip1:2888:3888server.2=ip2:2888:3888server.3=ip3:2888:3888

initLimit,zookeeper用来限制zookeeper服务器连接到leader的时长。

syncLimit,一个服务器多久在leader那里过期。

以上两种过期时间,单位都是tickTime,

本例initLimit时长为5个tickTime=5*2000ms=10秒

server.x列出了所有的zookeeper服务。集群启动它通过查看data下面的myid来知道自己是哪台服务器。

2888用来连接其它server。3888用来leader选举。

复制2份zookeeper到另外两台server上。

在配置的dataDir路径下创建myid文件,文件内容为对应自己的server.x的x值。比如zoo1这台sever,myid文件中内容为1.

启动每个zookeeper

查看本机状态,是leader还是follower

➜  zookeeper-3.4.12 bin/zkServer.sh status

至此我们已经把zookeeper集群启动起来了,并且做了验证,有一台是leader,另外两台是follower。

我们还可以做个实验,看zookeeper集群是否工作正常。

连接其中一台server,创建一个znode。

➜  zookeeper-3.4.12 bin/zkCli.sh -server ip1:2181[zk: ip1:2181(CONNECTED) 10] create /zk_test my_data

连接另外一台server,列出所有根节点下znode。

➜  zookeeper-3.4.12 bin/zkCli.sh -server ip2:2181[zk: ip2:2181(CONNECTED) 10] ls /

输出如下:

[zk_test]

可以看到集群已经能够正常工作,server间可以正常进行数据的复制。

客户端连接集群方法如下:

➜  zookeeper-3.4.12 bin/zkCli -server ip1:2181,ip2:2181,ip3:2181

客户端会自动随机选择集中一台连接。

感谢各位的阅读,以上就是“ZooKeeper在单机和集群环境下怎么安装搭建及使用”的内容了,经过本文的学习后,相信大家对ZooKeeper在单机和集群环境下怎么安装搭建及使用这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是编程网,小编将为大家推送更多相关知识点的文章,欢迎关注!

--结束END--

本文标题: ZooKeeper在单机和集群环境下怎么安装搭建及使用

本文链接: https://www.lsjlt.com/news/321713.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • ZooKeeper在单机和集群环境下怎么安装搭建及使用
    这篇文章主要讲解了“ZooKeeper在单机和集群环境下怎么安装搭建及使用”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“ZooKeeper在单机和集群环境下怎么安装搭建及使用”吧!1、下载首...
    99+
    2023-06-29
  • ZooKeeper入门教程二在单机和集群环境下的安装搭建及使用
    目录1、下载2、解压3、创建配置文件4、单机启动ZooKeeper5、通过客户端连接ZooKeeper6、通过客户端执行基本命令7、集群配置和启动小结:通过本篇学习掌握zookeep...
    99+
    2022-11-13
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作