博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
ZooKeeper 部署
阅读量:4957 次
发布时间:2019-06-12

本文共 4205 字,大约阅读时间需要 14 分钟。

集群模式

  1.  准备好三台互联网的 Linux 服务器,IP分别为192.169.0.1、192.168.0.2,192.168.0.3。并且每台服务器都安装了 Java 运行环境

  2. 下载  安装包,解压到一个目录,比如 /opt/zookeeper/ 目录下,同时约定 %ZK_HOME% 代表该目录

  3. 配置文件 zoo.cfg,初次使用 ZooKeeper,需要将 %ZK_HOME%/conf 目录下的 zoo_sample.cfg 文件拷贝一份为 zoo.cfg 并且按照如下代码进行简单配置即可:

    tickTime=2000dataDir=/opt/zookeeper/data/zkdataLogDir=/opt/zookeeper/logs/zkclientPort=2181initLimit=5syncLimit=2server.1=192.168.0.1:2888:3888server.2=192.168.0.2:2888:3888server.3=192.168.0.3:2888:3888
    • 集群模式下,集群中的每台机器都需要感知到整个集群是有哪几台机器组成,在配置文件中按照 server.id=host:port:port 配置,每一行都代表一个机器配置,其中 id 被称为 Server ID ,用来标识该机器在集群中的机器序列号,并且在每台 ZooKeeper 机器上都需要在数据目录 (dataDir=/opt/zookeeper/data/zk) 下创建一个 myid 文件,该文件只有一行内容,并且是一个数字,即对应于每台机器上的 Server ID 数字

    • 集群模式下,所有机器上的 zoo.cfg 文件的内容应该是一致的

    • myid 文件中只有一个数字,即一个 Server ID 。例如 server.1 的 myid 文件内容就是“1”。确保每台服务器的 myid 文件中的数字不同,并且和自己所在机器的 zoo.cfg 中  server.id=host:port:port 的 id 值一致, id 范围是 1~255

  4. 创建 myid 文件

  5. 按照相同的步骤,为其他服务器都配置好 zoo.cfg 和 myid 文件

  6. 启动服务,使用 %ZK_HOME%/bin 目录下的 zkServer.sh 脚本启动 ZooKeeper

    ➜ sh zkServer.sh startZooKeeper JMX enabled by defaultUsing config: /Users/chars/development/zookeeper/zookeeper-1/bin/../conf/zoo.cfg-n Starting zookeeper ... STARTED

     

  7. 验证服务器,输入 telnet 192.168.0.1 2181 后再输入 stat 命令进行服务器启动验证

    ➜ telnet 127.0.0.1 2181Trying 127.0.0.1...Connected to localhost.Escape character is '^]'.statZookeeper version: 3.4.9-1757313, built on 08/23/2016 06:50 GMTClients: /127.0.0.1:64573[0](queued=0,recved=1,sent=0)Latency min/avg/max: 0/0/0Received: 1Sent: 0Connections: 1Outstanding: 0Zxid: 0x1300000000Mode: leaderNode count: 43

     

单机模式

  1. 单机模式和集群模式配置上唯一的区别就在机器列表上,在单机模式的 zoo.cfg 文件中,只有 server.1 这一项
    tickTime=2000dataDir=/opt/zookeeper/data/zkdataLogDir=/opt/zookeeper/logs/zkclientPort=2181initLimit=5syncLimit=2server.1=192.168.0.1:2888:3888

     

  2. 验证服务器,输入 telnet 127.0.0.1 2181 后再输入 stat 命令进行服务器启动验证

    ➜ telnet 127.0.0.1 2181Trying 127.0.0.1...Connected to localhost.Escape character is '^]'.statZookeeper version: 3.4.9-1757313, built on 08/23/2016 06:50 GMTClients: /127.0.0.1:64623[0](queued=0,recved=1,sent=0)Latency min/avg/max: 0/0/0Received: 1Sent: 0Connections: 1Outstanding: 0Zxid: 0x1300000003Mode: standaloneNode count: 39

     

  3. 单机模式集群模式下输出的服务器验证信息基本一致,只有 Mode 属性不一样单机模式显示的是 standalone ,集群模式显示的是 leader,还有可能显示的是 follower

伪集群模式

  1. 准备好三个 %ZK_HOME% ,/opt/zookeeper-1/、 /opt/zookeeper-2/、 /opt/zookeeper-3/

  2. 配置 zookeeper-1 的 zoo.cfg

    tickTime=2000dataDir=/opt/zookeeper/data/zk1dataLogDir=/opt/zookeeper/logs/zk1clientPort=2181initLimit=5syncLimit=2server.1=localhost:2888:3888server.2=localhost:2889:3889server.3=localhost:2890:3890

     

  3. 配置 zookeeper-2的 zoo.cfg

    tickTime=2000dataDir=/opt/zookeeper/data/zk2dataLogDir=/opt/zookeeper/logs/zk2clientPort=2182initLimit=5syncLimit=2server.1=localhost:2888:3888server.2=localhost:2889:3889server.3=localhost:2890:3890

     

  4. 配置 zookeeper-3的 zoo.cfg
    tickTime=2000dataDir=/opt/zookeeper/data/zk3dataLogDir=/opt/zookeeper/logs/zk3clientPort=2183initLimit=5syncLimit=2server.1=localhost:2888:3888server.2=localhost:2889:3889server.3=localhost:2890:3890
  5. 依次启动 zookeeper-1 、zookeeper-2 、zookeeper-3

  6. 验证服务器,输入 telnet 127.0.0.1 2181 后再输入 stat 命令进行服务器启动验证

    ➜ telnet 127.0.0.1 2181Trying 127.0.0.1...Connected to localhost.Escape character is '^]'.statZookeeper version: 3.4.9-1757313, built on 08/23/2016 06:50 GMTClients: /127.0.0.1:64867[0](queued=0,recved=1,sent=0)Latency min/avg/max: 0/0/0Received: 1Sent: 0Connections: 1Outstanding: 0Zxid: 0x1300000003Mode: followerNode count: 39

     

  7. 验证服务器,输入 telnet 127.0.0.1 2182 后再输入 stat 命令进行服务器启动验证

    ➜ telnet 127.0.0.1 2182Trying 127.0.0.1...Connected to localhost.Escape character is '^]'.statZookeeper version: 3.4.9-1757313, built on 08/23/2016 06:50 GMTClients: /127.0.0.1:64878[0](queued=0,recved=1,sent=0)Latency min/avg/max: 0/0/0Received: 1Sent: 0Connections: 1Outstanding: 0Zxid: 0x1400000000Mode: leaderNode count: 39

     

  8. 验证服务器,输入 telnet 127.0.0.1 2183 后再输入 stat 命令进行服务器启动验证

    ➜ telnet 127.0.0.1 2183Trying 127.0.0.1...Connected to localhost.Escape character is '^]'.statZookeeper version: 3.4.9-1757313, built on 08/23/2016 06:50 GMTClients: /127.0.0.1:64881[0](queued=0,recved=1,sent=0)Latency min/avg/max: 0/0/0Received: 1Sent: 0Connections: 1Outstanding: 0Zxid: 0x1300000003Mode: followerNode count: 39

转载于:https://www.cnblogs.com/cmdra/p/5907441.html

你可能感兴趣的文章