Zookeeper的安装部署,zookeeper参数配置说明,集群搭建,查看集群状态

本文涉及的产品
服务治理 MSE Sentinel/OpenSergo,Agent数量 不受限
云原生网关 MSE Higress,422元/月
注册配置 MSE Nacos/ZooKeeper,118元/月
简介: 1、Zookeeper的安装部署7.1 Zookeeper工作机制7.1.1、Zookeeper集群角色Zookeeper集群的角色:  Leader 和  follower (Observer)zk集群最好配成奇数个节点只要集群中有半数以上节点存活,集群就能提供服务 7.2 Zookeeper部署7.2.1 机器准备1/ 安装到3台虚拟机上,准备的三台服务器地址是:C

1、Zookeeper的安装部署

7.1 Zookeeper工作机制

7.1.1、Zookeeper集群角色

Zookeeper集群的角色:  Leader 和  follower (Observer)

zk集群最好配成奇数个节点

只要集群中有半数以上节点存活,集群就能提供服务

 

7.2 Zookeeper部署

7.2.1 机器准备

1/ 安装到3台虚拟机上,准备的三台服务器地址是:

C:\Windows\System32\drivers\etc\hosts中配置的内容如下:

 

192.168.106.80      hadoop

192.168.106.81      hadoop2

192.168.106.82      hadoop3

如果想同时能够操作三台服务器,可以进行如下配置:

2/ 安装好JDK

3/ 上传安装包。上传用工具。

4/ 解压

su - hadoop(切换到hadoop用户),如果直接是root用户则不需要这样切换

tar -zxvf zookeeper-3.4.5.tar.gz(解压)

5/ 重命名

mv zookeeper-3.4.5 zookeeper(重命名文件夹zookeeper-3.4.5为zookeeper)

可以删除里面一些源码工程相关的文件,剩下的是这些:

7.2.2修改环境变量

(注意:3台zookeeper都需要修改)

1/ su – root(切换用户到root)

2/ vi /etc/profile(修改文件)

3/ 添加内容:

export ZOOKEEPER_HOME=/home/hadoop/zookeeper

export PATH=PATH:ZOOKEEPER_HOME/bin

4/ 加载环境配置:

source /etc/profile

5/ 修改完成后切换回hadoop用户:

su - hadoop

 

7.2.3 修改Zookeeper配置文件

1、用root用户操作

cd zookeeper/conf

cp zoo_sample.cfg zoo.cfg

 

2、vi zoo.cfg

 

3、添加内容:

# The number of milliseconds of each tick

tickTime=2000

# The number of ticks that the initial

# synchronization phase can take

initLimit=10

# The number of ticks that can pass between

# sending a request and getting an acknowledgement

syncLimit=5

# the directory where the snapshot is stored.

# do not use /tmp for storage, /tmp here is just

# example sakes.

dataDir=/home/tuzq/software/zookeeper/zkdata

dataLogDir=/home/tuzq/software/zookeeper/log

# the port at which the clients will connect

clientPort=2181

#

# 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=1

server.1= hadoop:2888:3888

server.2= hadoop2:2888:3888

server.3= hadoop3:2888:3888

 

参数说明:

tickTimezookeeper中使用的基本时间单位, 毫秒值.

initLimit: zookeeper集群中的包含多台server, 其中一台为leader, 集群中其余的serverfollower initLimit参数配置初始化连接时, followerleader之间的最长心跳时间. 此时该参数设置为5, 说明时间限制为5tickTime, 5*2000=10000ms=10s.

syncLimit: 该参数配置leaderfollower之间发送消息, 请求和应答的最大时间长度. 此时该参数设置为2, 说明时间限制为2tickTime, 4000ms.

dataDir: 数据存放目录. 可以是任意目录.但是我喜欢这么干

dataLogDir: log目录, 同样可以是任意目录. 如果没有设置该参数, 将使用和dataDir相同的设置

clientPort: 监听client连接的端口号.

server.X=A:B:C 其中X是一个数字, 表示这是第几号server. A是该server所在的IP地址. B配置该server和集群中的leader交换消息所使用的端口. C配置选举leader时所使用的端口. 由于配置的是伪集群模式, 所以各个serverB, C参数必须不同.


4、创建文件夹:

cd /home/tuzq/software/zookeeper/

mkdir zkdata

mkdir -m 755 log

 

5、在data文件夹下新建myid文件,myid的文件内容为:

cd zkdata

echo 1 > myid

7.2.4 分发安装包到其他机器

scp -r /root/apps root@hadoop2:/root/

scp -r /root/apps root@hadoop3:/root/

 

7.2.5 修改其他机器的配置文件

1、修改myid文件

到hadoop2上:修改myid为:2

到hadoop3上:修改myid为:3

 

7.2.6 启动(每台机器)

注:

1、事先将三台服务器的防火墙都关掉

2、全网统一hosts映射

先配好一台上的hosts

在hadoop机器中的hosts文件中做如下修改:

[root@hadoop zkdata]# cat /etc/hosts

127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4

::1         localhost localhost.localdomain localhost6 localhost6.localdomain6

192.168.106.80      hadoop

192.168.106.81      hadoop2

192.168.106.82      hadoop3

 

然后:

scp /etc/hosts  hadoop2:/etc

scp /etc/hosts  hadoop3:/etc

 

 

查看hadoop2中的hosts文件中的内容

[root@hadoop2 zkdata]# cat /etc/hosts

127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4

::1         localhost localhost.localdomain localhost6 localhost6.localdomain6

192.168.106.80      hadoop

192.168.106.81      hadoop2

192.168.106.82      hadoop3

 

3、然后一台一台地启动

bin/zkServer.sh start

创建日志文件目录,如果没有这个日志文件将会报错

mkdir -p /home/tuzq/software/zookeeper/log

 

或者编写一个脚本来批量启动所有机器:

for host in " hadoop hadoop2 hadoop3"

do

ssh $host "source /etc/profile;/home/tuzq/software/zookeeper/bin/zkServer.shstart"

 

vim startupZK.sh

chmod +x startupZK.sh

#!/bin/bash

for host in "hadoop hadoop2 hadoop3"

do

    ssh $host "source /etc/profile;/home/tuzq/software/zookeeper/bin/zkServer.sh   start"

done

 

7.2.7 查看集群状态

1、jps(查看进程)

2、zkServer.sh status(查看集群状态,主从信息)

 

分别查看hadoop hadoop2 hadoop3这三台服务器上的zookeeper的状态


相关实践学习
基于MSE实现微服务的全链路灰度
通过本场景的实验操作,您将了解并实现在线业务的微服务全链路灰度能力。
目录
打赏
0
0
0
0
58
分享
相关文章
【SpringCloud Alibaba系列】一文全面解析Zookeeper安装、常用命令、JavaAPI操作、Watch事件监听、分布式锁、集群搭建、核心理论
一文全面解析Zookeeper安装、常用命令、JavaAPI操作、Watch事件监听、分布式锁、集群搭建、核心理论。
【SpringCloud Alibaba系列】一文全面解析Zookeeper安装、常用命令、JavaAPI操作、Watch事件监听、分布式锁、集群搭建、核心理论
大数据-54 Kafka 安装配置 环境变量配置 启动服务 Ubuntu配置 ZooKeeper
大数据-54 Kafka 安装配置 环境变量配置 启动服务 Ubuntu配置 ZooKeeper
190 3
大数据-54 Kafka 安装配置 环境变量配置 启动服务 Ubuntu配置 ZooKeeper
Hadoop-30 ZooKeeper集群 JavaAPI 客户端 POM Java操作ZK 监听节点 监听数据变化 创建节点 删除节点
Hadoop-30 ZooKeeper集群 JavaAPI 客户端 POM Java操作ZK 监听节点 监听数据变化 创建节点 删除节点
132 1
Hadoop-29 ZooKeeper集群 Watcher机制 工作原理 与 ZK基本命令 测试集群效果 3台公网云服务器
Hadoop-29 ZooKeeper集群 Watcher机制 工作原理 与 ZK基本命令 测试集群效果 3台公网云服务器
89 1
Hadoop-28 ZooKeeper集群 ZNode简介概念和测试 数据结构与监听机制 持久性节点 持久顺序节点 事务ID Watcher机制
Hadoop-28 ZooKeeper集群 ZNode简介概念和测试 数据结构与监听机制 持久性节点 持久顺序节点 事务ID Watcher机制
100 1
Hadoop-27 ZooKeeper集群 集群配置启动 3台云服务器 myid集群 zoo.cfg多节点配置 分布式协调框架 Leader Follower Observer
Hadoop-27 ZooKeeper集群 集群配置启动 3台云服务器 myid集群 zoo.cfg多节点配置 分布式协调框架 Leader Follower Observer
114 1
Hadoop-26 ZooKeeper集群 3台云服务器 基础概念简介与环境的配置使用 架构组成 分布式协调框架 Leader Follower Observer
Hadoop-26 ZooKeeper集群 3台云服务器 基础概念简介与环境的配置使用 架构组成 分布式协调框架 Leader Follower Observer
89 0
微服务分布式系统架构之zookeeper与dubbo-2
微服务分布式系统架构之zookeeper与dubbo-2

热门文章

最新文章