在这里插入图片描述

然后,新建两个目录。

mkdir /usr/cstor/zookeeper/data
mkdir /usr/cstor/zookeeper/log
 class="hljs-button signin active" data-title="登录复制" data-report-click="{"spm":"1001.2101.3001.4334"}">

/usr/cstor/zookeeper目录传到另外两台机器上。

scp -r /usr/cstor/zookeeper root@slave1:/usr/cstor
scp -r /usr/cstor/zookeeper root@slave2:/usr/cstor
 class="hljs-button signin active" data-title="登录复制" data-report-click="{"spm":"1001.2101.3001.4334"}">

在这里插入图片描述

然后,分别在三个节点上的/usr/local/zookeeper/data目录下创建一个文件:myid

vim /usr/cstor/zookeeper/data/myid
 class="hljs-button signin active" data-title="登录复制" data-report-click="{"spm":"1001.2101.3001.4334"}">

分别在myid上按照配置文件的server.中id的数值,在不同机器上的该文 件中填写相应过的值,如下:

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

(三)启动ZooKeeper集群

然后,启动ZooKeeper集群,进入客户端验证部署完成。分别在三个节点进入bin目录,启动ZooKeeper服务进程:

cd /usr/cstor/zookeeper/bin
./zkServer.sh start
 class="hljs-button signin active" data-title="登录复制" data-report-click="{"spm":"1001.2101.3001.4334"}">

在各机器上依次执行脚本,查看ZooKeeper状态信息,两个节点是follower状态,一个节点是leader状态:

./zkServer.sh status
 class="hljs-button signin active" data-title="登录复制" data-report-click="{"spm":"1001.2101.3001.4334"}">

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在其中一台机器上执行客户端脚本:

./zkCli.sh -server master:2181,slave1:2181,slave2:2181
 class="hljs-button signin active" data-title="登录复制" data-report-click="{"spm":"1001.2101.3001.4334"}">

在这里插入图片描述

在客户端shell下执行创建目录命令:

create /testZk ""
 class="hljs-button signin active" data-title="登录复制" data-report-click="{"spm":"1001.2101.3001.4334"}">

/testZk目录写数据:

set /testZk 'aaa'
 class="hljs-button signin active" data-title="登录复制" data-report-click="{"spm":"1001.2101.3001.4334"}">

读取/testZk目录数据:

get /testZk
 class="hljs-button signin active" data-title="登录复制" data-report-click="{"spm":"1001.2101.3001.4334"}">

删除/testZk目录:

rmr /testZk
 class="hljs-button signin active" data-title="登录复制" data-report-click="{"spm":"1001.2101.3001.4334"}">

在客户端shell下用quit命令退出客户端:

quit
 class="hljs-button signin active" data-title="登录复制" data-report-click="{"spm":"1001.2101.3001.4334"}">

在这里插入图片描述

六、实验结果

各个节点执行jps命令查看Java进程,有QuorumPeerMain进程代表该节点ZooKeeper安装成功,如图所示。

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在客户端Shell下查看ZooKeeper集群目录,输入命令:ls /,查看ZooKeeper集群目录列表结果如图所示。

在这里插入图片描述

七、实验心得

  在本次ZooKeeper部署实验中,通过搭建包含三个节点的ZooKeeper集群,进一步理解了ZooKeeper在分布式系统中的角色和功能。

  首先,实验过程涵盖了JDK的安装、ZooKeeper配置文件的修改、节点间的免密设置等步骤。配置文件设置了基础的集群参数,如tickTimeinitLimitsyncLimit等,还指定了不同节点的端口信息及数据存储目录。各节点的数据文件myid的创建也体现了ZooKeeper的分布式集群特性,通过唯一ID标识每个节点的角色。

  其次,在启动集群后,通过客户端Shell操作成功验证了集群的正常运行状态。利用ZooKeeper客户端执行了目录创建、数据写入和读取、以及目录删除的基本操作,熟悉了ZooKeeper的基本命令。

  实验结果显示各节点正常启动了ZooKeeper进程,并正确识别了Leader和Follower节点。这次实验帮助加深了对ZooKeeper集群管理和分布式协调服务的理解,为分布式应用开发奠定了基础。

:以上文中的数据文件及相关资源下载地址:
链接:https://pan.quark.cn/s/5100e953755d
提取码:amiC

data-report-view="{"mod":"1585297308_001","spm":"1001.2101.3001.6548","dest":"https://blog.csdn.net/Morse_Chen/article/details/143219921","extend1":"pc","ab":"new"}">> id="blogExtensionBox" style="width:400px;margin:auto;margin-top:12px" class="blog-extension-box"> class="blog_extension blog_extension_type2" id="blog_extension"> class="extension_official" data-report-click="{"spm":"1001.2101.3001.6471"}" data-report-view="{"spm":"1001.2101.3001.6471"}"> class="blog_extension_card_left"> class="blog_extension_card_cont"> 学习交流 | 商务合作 (备注来意) class="blog_extension_card_cont_r"> 微信名片
注:本文转载自blog.csdn.net的Francek Chen的文章"https://blog.csdn.net/Morse_Chen/article/details/143219921"。版权归原作者所有,此博客不拥有其著作权,亦不承担相应法律责任。如有侵权,请联系我们删除。
复制链接

评论记录:

未查询到任何数据!