章节内容

上一节我们完成了:

  • ZooKeeper 的简介
  • ZooKeeper 的下载安装
  • ZooKeeper 的单机配置和启动

背景介绍

这里是三台公网云服务器,每台 2C4G,搭建一个Hadoop的学习环境,供我学习。
之前已经在 VM 虚拟机上搭建过一次,但是没留下笔记,这次趁着前几天薅羊毛的3台机器,赶紧尝试在公网上搭建体验一下。

  • 2C4G 编号 h121
  • 2C4G 编号 h122
  • 2C2G 编号 h123

Hadoop-27 ZooKeeper集群 集群配置启动 3台云服务器 myid集群 zoo.cfg多节点配置 分布式协调框架 Leader Follower Observer_服务器

集群配置

上节我们是单机启动的,现在我们要启动三台:

  • H121
  • H122
  • H123

解压安装

查看上一节过程,对ZooKeeper下载和解压安装。
你也可以使用之前封装好的 rsync-script 工具来完成 ZooKeeper 的分发。

环境变量

确保你的三台节点都配置对了环境变量

# zookeeper
export ZOOKEEPER_HOME=/opt/servers/apache-zookeeper-3.8.4-bin
export PATH=$PATH:$ZOOKEEPER_HOME/bin
  • 1.
  • 2.
  • 3.

zk配置

确保你的zk配置是正确的,且一致的

cd /opt/servers/apache-zookeeper-3.8.4-bin/conf
mv zoo_sample.cfg zoo.cfg
vim zoo.cfg
  • 1.
  • 2.
  • 3.
# 数据和日志文件夹
dataDir=/opt/servers/apache-zookeeper-3.8.4-bin/data
dataLogDir=/opt/servers/apache-zookeeper-3.8.4-bin/logs

# 集群地址
server.1=h121.wzk.icu:2888:3888
server.2=h122.wzk.icu:2888:3888
server.3=h123.wzk.icu:2888:3888

# 清理日志 1小时
autopurge.purgeInterval=1
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.

myid(重要)

这里我们单节点启动的时候,配置的是:

cd /opt/servers/apache-zookeeper-3.8.4-bin/data
echo 1 > myid
  • 1.
  • 2.

但是在其他节点上,我们需要写成2、3
比如 h122节点,应该写成:

cd /opt/servers/apache-zookeeper-3.8.4-bin/data
echo 2 > myid
  • 1.
  • 2.

比如h123节点,应该写成:

cd /opt/servers/apache-zookeeper-3.8.4-bin/data
echo 3 > myid
  • 1.
  • 2.

集群启动

  • h121 执行:zkServer.sh start
  • h122 执行:zkServer.sh start
  • h123 执行:zkServer.sh start

h121

Hadoop-27 ZooKeeper集群 集群配置启动 3台云服务器 myid集群 zoo.cfg多节点配置 分布式协调框架 Leader Follower Observer_大数据_02

h122

Hadoop-27 ZooKeeper集群 集群配置启动 3台云服务器 myid集群 zoo.cfg多节点配置 分布式协调框架 Leader Follower Observer_zookeeper_03

h123

Hadoop-27 ZooKeeper集群 集群配置启动 3台云服务器 myid集群 zoo.cfg多节点配置 分布式协调框架 Leader Follower Observer_分布式_04

查看日志

cd /opt/servers/apache-zookeeper-3.8.4-bin/logs
tail -f zookeeper-root-server-h121.wzk.icu.out
  • 1.
  • 2.

Hadoop-27 ZooKeeper集群 集群配置启动 3台云服务器 myid集群 zoo.cfg多节点配置 分布式协调框架 Leader Follower Observer_zookeeper_05

集群查看

h121

zkServer.sh status
  • 1.

我们观察到 h121 是 Follower 追随者

Hadoop-27 ZooKeeper集群 集群配置启动 3台云服务器 myid集群 zoo.cfg多节点配置 分布式协调框架 Leader Follower Observer_zookeeper_06

h122

zkServer.sh status
  • 1.

我们观察到 h122 是 Leader 领导者

Hadoop-27 ZooKeeper集群 集群配置启动 3台云服务器 myid集群 zoo.cfg多节点配置 分布式协调框架 Leader Follower Observer_服务器_07

h123

zkServer.sh status
  • 1.

我们观察到 h123 是 Follower 追随者

Hadoop-27 ZooKeeper集群 集群配置启动 3台云服务器 myid集群 zoo.cfg多节点配置 分布式协调框架 Leader Follower Observer_zookeeper_08