3、需要提前在虚拟机上装好jdk1.7及以上版本

图片 1

     
经过前生机勃勃篇小说《zookeeper伪集群豆蔻梢头》的开卷,相信我们对zookeeper集群已经有早晚的询问了,接下去大家再争辩zookeeper真集群。其实真集群和伪集群依旧有过多近似的后生可畏部分的,笔者将效仿3台集群服务而且对里面生龙活虎台集群服务的构造实行教学,接下去两台操作基本大同小异。

   
 铺垫:

    1、 本身创立3台虚构机,Linux版本为CentOS7,工具为vmware12

             
2、外界链接设想机的工具为小xmanager5,这几个工具只是利于一些,你也得以不用

     3、必要超前在设想机上装好jdk1.7及以上版本,小编利用的是1.8本子的,假诺不会装jdk,能够参谋小编的另意气风发篇文章《Linux下的jdk安装》

             
4、自个儿将3台设想机创设好,获取到的外网地址分别为192.168.0.124,192.168.0.129,192.168.0.127,小编分别取别称称叫CentOS1,**CentOS3,**CentOS4**

**    
 ** 5、接下去的求证中,要是有关联关系的地点,小编会加粗並且用平等颜色举办标记

  搭建:

   
 1、修改zookeeper下的zoo.cfg文件,具体内容如下: 

tickTime=2000
syncLimit=10
initLimit=5
dataDir=/home/d5000/zk/data
clientPort=3001
dataLogDir=/home/d5000/zk/log
server.1 =
192.168.0.124:2887:3887
server.2 =
192.168.0.129:2887:3887
server.3 =
192.168.0.127:2887:3887

因为是集群,所以3台机器的端口号能够完全生龙活虎致,能够共用多个zoo.cfg文件

             
2、在3台设想机上独家创立/home/d5000/zk目录,况且在zk下创办data目录,用于存放dataDir构造的投射文件;接下去将zookeeper也传扬zk目录下,那或多或少与伪集群风度翩翩致

             
3、在**CentOS1**机器的/home/d5000/zk/data下创建myid文件,内容是1

                 
 在**CentOS3**机器的/home/d5000/zk/data下创建myid文件,内容是2

                 
 在**CentOS4**机器的/home/d5000/zk/data下创建myid文件,内容是3; 

    
 4、分别给3台机械zookeeper权限,不然怎么运行呢?能够先给zookeeper四个起头权限,进入/home/d5000/zk/zookeeper/bin,实施chmod
777  zkServer.sh

 

时至明天,集群创制实现,真叫那些轻松呀,开欢悦心的进展测量检验,分别打开运行,  
./ zkServer.sh start
,第朝气蓬勃台报错,第二台报错,第三台依然报错,何况错误新闻豆蔻梢头致,都以zookeeper
no route to
host,上网生机勃勃查发掘,有2个可能产生那个难题的面世,多少个是防火墙,另二个是hostname。

 排查难点:

         1、分别查看3台机器防火墙是不是关闭:firewall-cmd
–state,发掘防火墙确实并未有关闭,果决施行关闭systemctl stop
firewalld.service

         2、修改**CentOS1**机器,执行hostname  server.1 命令

**    ** 修改**CentOS3**机器,执行hostname
 server.2 命令**


**           **  
 修改**CentOS4**机器,执行hostname
 server.3 命令**


**       **  3、重启虚构机,init 6    
接下去重启服务

         4,结果照旧报雷同的乖谬  zookeeper no route to host,瞬间懵逼

    

                                                    

**  ———————————————————————–以下都以零星,省略意气风发万字————————————————————————-


 

由此多方努力,最终在左右一定的虚构机知识后才察觉,systemctl stop
firewalld.service关闭的防火墙是临时的,只要服务朝气蓬勃重启防火墙立马又生效,还恐怕有特别hostname也风度翩翩律:

    聊到底改正   
 

      1、深透禁止使用防火墙:systemctl disable firewalld.service 

              2、修改CentOS1机器/etc/hostname文件,内容为server.1

         修改CentOS3机器/etc/hostname文件,内容为server.2

                 
 修改CentOS4机器/etc/hostname文件,内容为server.3(永远改正)

             
 3、运行第风华正茂台、第二台开采仍然有错误新闻,可是现在的错误音讯意见转变为connect
refuesd(回绝链接),继续运营第三台服务器,开采没有报错音信,并且测量检验后开收罗群服务平常,第生龙活虎                   
台报错是因为第二第三台服务器并未有运转引致,第二台报错是因为第三台集群服务没运转导致。这个不当完全无妨碍集群

    

       上面提供一下最简易的测验,在192.168.0.124实行  telent
 192.168.0.127 3001       telent  192.168.0.129 3001  
借使都能链接成功,表达各自的劳动已经能够健康运营,何况能够进行通讯,接下去能够通过代码进行进一层圆满的测量检验。

成效如图:图片 1

 

                                    完毕