Linux - Zookeeper集群安装部署

2023-12-17 16:25:02

一、简介

ZooKeeper是一个分布式的,开放源码的分布式应用程序协调服务,是Hadoop和Hbase的重要组件。它是一个为分布式应用提供一致性服务的软件,提供的功能包括:配置维护、域名服务、分布式同步、组服务等。

除了为Hadoop和HBase提供协调服务外,Zookeeper也被其它许多软件采用作为其分布式状态一致性的依赖,比如Kafka,又或者一些软件项目中,也经常能见到Zookeeper作为一致性协调服务存在。

Zookeeper不论是大数据领域亦或是其它服务器开发领域,涉及到分布式状态一致性的场景,总有它的身影存在。

二、安装

Zookeeper是一款分布式的集群化软件,可以在多台服务器上部署,并协同组成分布式集群一起工作。

1、首先,要确保已经完成了集群化环境前置准备环节的全部内容

2、【node1上操作】下载Zookeeper安装包,并解压

# 下载
wget http://archive.apache.org/dist/zookeeper/zookeeper-3.5.9/apache-zookeeper-3.5.9-bin.tar.gz

# 确保如下目录存在,不存在就创建
mkdir -p /export/server

# 解压
tar -zxvf apache-zookeeper-3.5.9-bin.tar.gz -C /export/server

3、【node1上操作】创建软链接

ln -s /export/server/apache-zookeeper-3.5.9 /export/server/zookeeper

4、【node1上操作】修改配置文件

vim /export/server/zookeeper/conf/zoo.cfg

tickTime=2000
# zookeeper数据存储目录
dataDir=/export/server/zookeeper/data
clientPort=2181
initLimit=5
syncLimit=2
server.1=node1:2888:3888
server.2=node2:2888:3888
server.3=node3:2888:3888

5、【node1上操作】配置myid

# 1. 创建Zookeeper的数据目录
mkdir /export/server/zookeeper/data

# 2. 创建文件,并填入1
vim /export/server/zookeeper/data/myid
# 在文件内填入1即可

6、【在node2和node3上操作】,创建文件夹

mkdir -p /export/server

7、【node1上操作】将Zookeeper 复制到node2和node3

cd /export/server

scp -r apache-zookeeper-3.5.9 node2:`pwd`/
scp -r apache-zookeeper-3.5.9 node3:`pwd`/

8、【在node2上操作】

# 1. 创建软链接
ln -s /export/server/apache-zookeeper-3.5.9 /export/server/zookeeper

# 2. 修改myid文件
vim /export/server/zookeeper/data/myid
# 修改内容为2

9、【在node3上操作】

# 1. 创建软链接
ln -s /export/server/apache-zookeeper-3.5.9 /export/server/zookeeper

# 2. 修改myid文件
vim /export/server/zookeeper/data/myid
# 修改内容为3

10、【在node1、node2、node3上分别执行】启动Zookeeper

# 启动命令
/export/server/zookeeper/bin/zkServer.sh start		# 启动Zookeeper

11、【在node1、node2、node3上分别执行】检查Zookeeper进程是否启动

jps

# 结果中找到有:QuorumPeerMain 进程即可

12、【node1上操作】验证Zookeeper

/export/server/zookeeper/zkCli.sh

# 进入到Zookeeper控制台中后,执行
ls /

# 如无报错即配置成功

至此Zookeeper安装完成

文章来源:https://blog.csdn.net/m0_65372269/article/details/134941241
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。