动物园管理员配置及集群搭建

  

接下来我们将启动一个单实例的饲养员然后在此基础上搭建一个最简单的饲养员集群,为了贯彻最简单的理念,我们的集群将共只有三个节点,并且他们都在同一台机器上。

  

好了,让我们开始干吧!

  

单实例

  
1。解压安装包并复制配置文件
  

<代码>焦油-xvzf zookeeper-3.4.12.tar。广州
解压后到相依之目录下,复制一份配置文件:
<代码> cp zoo_sample。cfg zoo.cfg

  
2。修改dataDir h5> 虽然是可选的,最好还是把数据移出/tmp目录,我在动物园管理员的安装目录下创建了一个数据目录,到动物园管理员目录下执行:
<代码>
mkdir数据然后修改zoo.cfg文件中的dataDir,我修改后的文件内容为:

  
 <代码> tickTime=2000
  initLimit=10
  syncLimit=5
  dataDir=/home/ym/管理员/zookeeper-3.4.12/数据
  clientPort=2181  
  
3。启动实例
  

到本目录下执行:
<代码>。/zkServer。sh开始
出现以下内容表示成功了:

  
 <代码> [ym@localhost本]美元。/zkServer。sh开始
  动物园管理员JMX默认启用
  使用配置:/home/ym/zookeeper/zookeeper-3.4.12/bin/. ./conf/zoo.cfg
  动物园管理员开始……开始 
  

集群搭建

  
1。修改配置文件
  

首先,从上面的单实例配置文件动物园。cfg复制一份:
<代码> cp动物园。cfg zoo1.cfg
修改其中内容为:

  
 <代码> tickTime=2000
  initLimit=10
  syncLimit=5
  dataDir=/home/ym/管理员/zookeeper-3.4.12/data1
  clientPort=2182
  server.1=127.0.0.1:2222:2223
  server.2=127.0.0.1:3333:3334
  server.3=127.0.0.1:4444:4445  
  

创建zoo2.cfg和zoo3.cfg:

  
 <代码> cp zoo1。cfg zoo2.cfg
  cp zoo1。cfg zoo3.cfg  
  

修改zoo2.cfg和zoo3.cfg中clientPort分别为2183年和2184年,dataDir分别指向data2和data3,修改后内容分别为:
data2.cfg

  
 <代码> tickTime=2000
  initLimit=10
  syncLimit=5
  dataDir=/home/ym/管理员/zookeeper-3.4.12/data2
  clientPort=2183
  server.1=127.0.0.1:2222:2223
  server.2=127.0.0.1:3333:3334
  server.3=127.0.0.1:4444:4445  
  

data3.cfg   

 <代码> tickTime=2000
  initLimit=10
  syncLimit=5
  dataDir=/home/ym/管理员/zookeeper-3.4.12/data3
  clientPort=2183
  server.1=127.0.0.1:2222:2223
  server.2=127.0.0.1:3333:3334
  server.3=127.0.0.1:4444:4445  
  

每一个server.n项指定了编号为n的饲养员服务器使用的地址和端口号。每个server.n项通过冒号分隔为三部分,第一部分为服务器n的IP地址或主机名(主机名),第二部分和第三部分为TCP端口号,分别用于仲裁通信和群首选举。因为我们在同一个机器上运行三个服务器进程,所以我们需要在每一项中使用不同的端口号。通常,我们在不同的服务器上运行每个服务器进程,因此每个服务器项的配置可以使用相同的端口号。

  
2创建数据目录
  

到动物园管理员安装目录下执行:

  
 <代码> mkdir data1
  mkdir data2
  mkdir data3  
  

当启动一个服务器时,我们需要知道启动的是哪个服务器。一个服
务器通过读取数据目录下一个名为myid的文件来获取服务器ID信息。可
以通过以下命令来创建这些文件:

  
 <代码>回声1比;data1/myid
  回声2比;data2/myid
  回声3比;data3/myid  
  
3启动实例
  

打开三个终端,到动物园管理员目录下分别执行:

  
 <代码> bin/zkServer。sh . ./conf/zoo1.cfg开始
  bin/zkServer。sh . ./conf/zoo2.cfg开始
  bin/zkServer。sh开始. ./conf/zoo3.cfg  
  
4使用zkCli.sh访问集群h5> <代码> bin/zkCli。sh - server 127.0.0.1:2182、127.0.0.1:2183 127.0.0.1:2184
会出现如下信息:

  
 <代码> [myid:]——信息[…]-会话建立
  完成在服务器本地主机/127.0.0.1:2182… 
  

表面客户端连接到了端口为2182的饲养员服务器上。

  

使用ctrl + c停止并重新使用上述命令进行连接,如此往复几次会发现连接的端口在2182年,2183年,2184年来回改变。

  

参考:《动物园管理员——分布式过程协同技术》

动物园管理员配置及集群搭建