配置 zookeeper 单机

1. 下载 zookeeper 安装包(略) /opt/software

2. 解压安装白到指定目录 /opt/module

3. 配置单机上的环境

  1. cd /opt/module/zookeeper-3.4.13/
  2. mkdir logs
  3. mkdir data
  4. vim /etc/profile
  5. # 添加
  6. export ZOOKEEPER_HOME=/opt/module/zookeeper-3.4.13/
  7. export PATH=$ZOOKEEPER_HOME/bin:$PATH
  8. source /etc/profile

Screen Shot 2021-01-15 at 15.43.43.png

  1. cd /opt/module/zookeeper-3.4.13/conf
  2. cp zoo_sample.cfg zoo.cfg
  3. vim zoo.cfg
  4. # 配置下面日志路径

Screen Shot 2021-01-15 at 15.45.41.png

4. 单机上的启动与停止

  • 启动服务:zkServer.sh start
  • 查看状态:zkServer.sh status
  • 关闭服务:zkServer.sh stop
  • 重启服务:zkServer.sh restart


Zookeeper 集群安装配置

1. 集群规划

在 hadoop-node1、hadoop-node2、hadoop-node3 三个节点上部署 zookeeper。

2. 在/opt/module/zookeeper-3.4.13/data 目录下创建文件 myid

  • myid文件中增加内容 2
  • 2 表示 与 server 对应的编号

Screen Shot 2021-01-15 at 15.50.28.png

3. 将 zookeeper 目录同步到 hadoop-node2 和 hadoop-node3 ,并修改 myid 文件内容为 3 和 4

  1. cd /opt/module
  2. xsync zookeeper/

4. 配置 zoo.cfg 文件,修改如下(增加红色的部分)

Screen Shot 2021-01-15 at 15.52.35.png
配置说明:server.A=B:C:D
A 是一个数字,表示这个是第几号服务器;
集群模式下配置一个文件 myid,这个文件在 dataDir 目录下,这个文件里面有一个数据就是 A 的值,Zookeeper 启动时读取此文件,拿到里面的数据与 zoo.cfg 里面的配置信息比较从而判断到底是哪个 server。
B 是这个服务器的 ip 地址;
C 是这个服务器与集群中的 Leader 服务器交换信息的端口;
D 是万一集群中的 Leader 服务器挂了,需要一个端口来重新进行选举,选出一个新的Leader,而这个端口就是用来执行选举时服务器相互通信的端口。

5. 同步 zoo.cfg 文件

  1. cd /opt/module/zookeeper-3.4.13/conf
  2. xsync zoo.cfg

6. 启动集群

  1. [root@hadoop-node1 bin]# ./zkServer.sh start
  2. [root@hadoop-node2 bin]# ./zkServer.sh start
  3. [root@hadoop-node3 bin]# ./zkServer.sh start

Screen Shot 2021-01-15 at 15.55.28.png
Screen Shot 2021-01-15 at 15.55.53.png Screen Shot 2021-01-15 at 15.56.03.png