一、zookeeper集群搭建
1:上传zookeeper-3.4.13.tar.gz到/myfile/tool(自己定义的存放工具的目录)目录下:
2:解压zookeeper,执行如下命令:
[root@linhaijing tool]# tar zxf zookeeper-3.4.13.tar.gz
解压后如下图:
3: 复制zookeeper到/myfile/programfiles/solr_cloud(自己定义的solr集群的目录)目录下,执行如下命令:
[root@linhaijing tool]# cp -r zookeeper-3.4.13 /myfile/programfiles/solr_cloud/zookeeper01
[root@linhaijing tool]# cp -r zookeeper-3.4.13 /myfile/programfiles/solr_cloud/zookeeper02
[root@linhaijing tool]# cp -r zookeeper-3.4.13 /myfile/programfiles/solr_cloud/zookeeper03
复制结果如图所示:
4:接着执行如下步骤:
注:touch myid:表示新建myid文件
[root@linhaijing solr_cloud]# cd zookeeper01
[root@linhaijing zookeeper01]# mkdir data
[root@linhaijing zookeeper01]# touch myid
编辑myid文件:输入1保存退出。
或者另一种快捷命令方式:
注:echo 2 > data/myid :表示将2写入文件myid中,同时会新建文件myid
[root@linhaijing zookeeper02]# mkdir data
[root@linhaijing zookeeper02]# echo 2 > data/myid
5:进入zookeeper01/conf文件夹,执行命令:mv zoo_sample.cfg zoo.cfg,修改zoo_sample.cfg的文件名为zoo.cfg
6:编辑zoo.cfg文件,按如下红框中进行配置:
注意:以下三类端口号在一个文件中不能重复,但可以自己定义,只要不同就行。
7: 重复步骤456,完成zookeeper02和zookeeper03的配置
注: zookeeper02中data/myid文件中内容为:2
zoo.cfg中clientPort为:2182
zookeeper03中data/myid文件中内容为::3
zoo.cfg中clientPort为:2183
其他按照 zookeeper01的进行配置即可。
zookeeper02的zoo.cfg文件配置 :
zookeeper03的zoo.cfg文件配置 :
8:准备启动这三个zookeeper节点,写批处理文件:
进入/myfile/programfiles/solr_cloud目录下,编辑新建的start-zookeepers.sh脚本文件:
[root@linhaijing solr_cloud]# vim start-zookeepers.sh
cd zookeeper01/bin
./zkServer.sh start
cd ../../
cd zookeeper02/bin
./zkServer.sh start
cd ../../
cd zookeeper03/bin
./zkServer.sh start
cd ../../
保存退出后,进行授权,u表示当前用户可以启动:
[root@linhaijing solr_cloud]# chmod u+x start-zookeepers.sh
如下图所示:
9:启动,执行命令:
[root@linhaijing solr_cloud]# ./start-zookeepers.sh
运行结果如下图所示表示:
10:测试
分别进入zookeeper01/bin; zookeeper02/bin; zookeeper03/bin下执行命令:./zkServer.sh status,出现以下结果表示集群搭建成功。follower表示从节点,leader表示主节点,主从节点的分配随机。
11:可能会遇到的问题
**修改第8步新建的start-zookeepers.sh文件,里面的start改为:start-foreground,可在控制台查看出错的原因;
cd zookeeper01/bin
./zkServer.sh start-foreground
cd ../../
cd zookeeper02/bin
./zkServer.sh start-foreground
cd ../../
cd zookeeper03/bin
./zkServer.sh start-foreground
cd ../../
**地址被占用错误:java.net.BindException: Address already in use
解决办法: sudo netstat -nltp | grep 2181 可以查看当前占用的端口号;sudo kill -9 3071 删除该进程;
**无法连接错误:java.net.ConnectException: Connection refused (Connection refused)
解决办法:关闭防火墙,并设置重启不启动防火墙;因为本集群搭建在一台服务器上,确保zoo.cfg文件中ip和端口号按规则都写正确
**也可以打开三个xhell窗口,分别同时启动来进行测试**
======以下于你或许是个好消息======
好消息就是:欢迎访问下面的博客网站哈哈哈......
网站名称:Java学习笔记网 (点击进入)
url:https://www.javaxxbj.com/ (点击进入)
网站特点:
- java主要网站的导航目录
- 你可以记录自己的博客,并可以控制显示和隐藏,可利于管理啦!!!
- 可以添加收藏各个网站的链接!!!
- 甚至也可以文章收藏,点赞,关注,查看我的消息等功能哦!!1
看一小点点的截图:
或可一试哦!