千家信息网

Hadoop 部署之 ZooKeeper (二)

发表于:2026-11-02 作者:千家信息网编辑
千家信息网最后更新 2026年11月02日,一、Zookeeper功能简介ZooKeeper 是一个开源的分布式协调服务,由雅虎创建,是 Google Chubby 的开源实现。分布式应用程序可以基于 ZooKeeper 实现诸如数据发布/订阅
千家信息网最后更新 2026年11月02日Hadoop 部署之 ZooKeeper (二)

一、Zookeeper功能简介

ZooKeeper 是一个开源的分布式协调服务,由雅虎创建,是 Google Chubby 的开源实现。分布式应用程序可以基于 ZooKeeper 实现诸如数据发布/订阅、负载均衡、命名服务、分布式协调/通知、集群管理、Master 选举、配置维护,名字服务、分布式同步、分布式锁和分布式队列等功能。

二、ZooKeeper基本概念

1、集群角色

一个 ZooKeeper 集群同一时刻只会有一个 Leader,其他都是 Follower 或 Observer。

ZooKeeper 配置很简单,每个节点的配置文件(zoo.cfg)都是一样的,只有 myid 文件不一样。myid 的值必须是 zoo.cfg中server.{数值} 的{数值}部分。

ZooKeeper 默认只有 Leader 和 Follower 两种角色,没有 Observer 角色。为了使用 Observer 模式,在任何想变成Observer的节点的配置文件中加入:peerType=observer 并在所有 server 的配置文件中,配置成 observer 模式的 server 的那行配置追加 :observer

三、ZooKeeper 的安装

1、下载安装(在datanode节点安装)

下载安装包

wget http://mirror.bit.edu.cn/apache/zookeeper/zookeeper-3.4.10/zookeeper-3.4.10.tar.gz

解压安装包

tar xf zookeeper-3.4.10.tar.gzmv zookeeper-3.4.10 /usr/local/zookeepermkdir -p /home/zookeeper

zk01节点(datanode1)配置id

echo "1">/home/zookeeper/myid

zk02节点(datanode2)配置id

echo "2">/home/zookeeper/myid

zk03节点(datanode3)配置id

echo "3">/home/zookeeper/myid

2、配置ZooKeeper环境变量

编辑文件/etc/profile.d/zookeeper.sh。

# ZOOKEEPER ENVexport ZOOKEEPER_HOME=/usr/local/zookeeperexport PATH=$PATH:$ZOOKEEPER_HOME/bin

使ZK环境变量生效。

source /etc/profile.d/zookeeper.sh

3、配置 zoo.cfg

编辑文件/usr/local/zookeeper/conf/zoo.cfg。

# The number of milliseconds of each ticktickTime=2000# The number of ticks that the initial # synchronization phase can takeinitLimit=10# The number of ticks that can pass between # sending a request and getting an acknowledgementsyncLimit=5# the directory where the snapshot is stored.# do not use /tmp for storage, /tmp here is just # example sakes.dataDir=/home/zookeeper# the port at which the clients will connectclientPort=2181# the maximum number of client connections.# increase this if you need to handle more clients#maxClientCnxns=60## Be sure to read the maintenance section of the # administrator guide before turning on autopurge.## http://zookeeper.apache.org/doc/current/zookeeperAdmin.html#sc_maintenance## The number of snapshots to retain in dataDir#autopurge.snapRetainCount=3# Purge task interval in hours# Set to "0" to disable auto purge feature#autopurge.purgeInterval=1server.1=zk01:2888:3888server.2=zk02:2888:3888server.3=zk03:2888:3888

比较重要的配置如下:
dataDir=/home/zookeeper
server.1=zk01:2888:3888
server.2=zk02:2888:3888
server.3=zk03:2888:3888

4、启动各节点 ZK 服务

[root@datanode01 ~]# zkServer.sh startZooKeeper JMX enabled by defaultUsing config: /usr/local/zookeeper/bin/../conf/zoo.cfgStarting zookeeper ... STARTED[root@datanode02 ~]# zkServer.sh startZooKeeper JMX enabled by defaultUsing config: /usr/local/zookeeper/bin/../conf/zoo.cfgStarting zookeeper ... STARTED[root@datanode03 ~]# zkServer.sh startZooKeeper JMX enabled by defaultUsing config: /usr/local/zookeeper/bin/../conf/zoo.cfgStarting zookeeper ... STARTED

5、查看各节点启动状态和角色

[root@datanode01 ~]# zkServer.sh statusZooKeeper JMX enabled by defaultUsing config: /usr/local/zookeeper/bin/../conf/zoo.cfgMode: follower[root@datanode02 ~]# zkServer.sh statusZooKeeper JMX enabled by defaultUsing config: /usr/local/zookeeper/bin/../conf/zoo.cfgMode: leader[root@datanode03 ~]# zkServer.sh statusZooKeeper JMX enabled by defaultUsing config: /usr/local/zookeeper/bin/../conf/zoo.cfgMode: follower

官方文档:https://zookeeper.apache.org/doc/current/zookeeperStarted.html

配置 节点 分布式 文件 角色 服务 集群 功能 变量 只有 数值 模式 环境 重要 均衡 名字 官方 应用程序 数据 数据发布 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 互联网科技公司简介 互联网属科技 科技服务与互联网 百单互联网科技有限公司 科技互联网公司logo 苏州大垚互联网科技 中正互联网科技招聘 汉立互联网科技有限公司联系电话 湖南洣水互联网科技有限公司扣款 天速互联网络科技有限公司 成都互联网科技公司100强 顶级互联网科技成果有哪些 互联网金融中的现代科技 互联网还是高科技吗 哈尔滨屹滨互联网科技有限公司 佛山市拉法互联网科技有限公司 互联网科技公司营业执照怎么办理 互联网科技接地气 北京互联网科技类企业分布 互联网科技创业计划的风险分析 苏州找大状互联网科技有限公司 互联网科技公司电话 互联网科技股票 苏州互联网科技贷款公司 温州喔噻互联网科技有限公司 阿里互联网科技公司 厦门比较好的科技互联网公司 互联网科技与大数据专业 沐思想互联网科技有限公司 每日互联网科技新闻
0