Zookeeper——简介 & 下载 & Linux下配置安装启动 & 解读相关配置参数

Posted 张起灵-小哥

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Zookeeper——简介 & 下载 & Linux下配置安装启动 & 解读相关配置参数相关的知识,希望对你有一定的参考价值。

文章目录:

1.什么是Zookeeper?

1.1 Zookeeper工作机制

1.2 Zookeeper特点

1.3 Zookeeper数据结构

1.4 Zookeeper应用场景

1.4.1 统一命名服务

1.4.2 统一配置管理

1.4.3 统一集群管理

1.4.4 服务器动态上下线

1.4.5 软负载均衡

2.Zookeeper下载

3.Linux下配置安装启动

4.Zookeeper配置文件的相关参数


1.什么是Zookeeper?

课件相关资料全部来自 尚硅谷!!! Zookeeper 是一个开源的分布式的,为分布式框架提供协调服务的 Apache 项目, 它是一个为分布式应用提供一致性服务的软件,分布式应用程序可以基于 Zookeeper 实现诸如数据发布/订阅、负载均衡、命名服务、分布式协调/通知、集群管理、Master 选举、分布式锁和分布式队列等功能。

ZooKeeper 的目标就是封装好复杂易出错的关键服务,将简单易用的接口和性能高效、功能稳定的系统提供给用户。

1.1 Zookeeper工作机制

Zookeeper从设计模式角度来理解:是一个基于观察者模式设计的分布式服务管理框架,它 负责存储和管理大家都关心的数据 ,然后 接受观察者的注册 ,一旦这些数据的状态发生变化, Zookeeper 就将 负责通知已经在 Zookeeper 上注册的那些观察者 做出相应的反应。

1.2 Zookeeper特点

1.3 Zookeeper数据结构

ZooKeeper 数据模型的结构与 Unix 文件系统很类似 ,整体上可以看作是一棵树,每个节点称做一个 ZNode 。每一个 ZNode 默认能够存储 1MB 的数据,每个 ZNode 都可以 通过其路径唯一标识。

1.4 Zookeeper应用场景

提供的服务包括:统一命名服务、统一配置管理、统一集群管理、服务器节点动态上下线、软负载均衡等。

1.4.1 统一命名服务

1.4.2 统一配置管理

1.4.3 统一集群管理

1.4.4 服务器动态上下线

1.4.5 软负载均衡


2.Zookeeper下载

官网地址:https://zookeeper.apache.org/

按照上面截图顺序来即可,下载完之后,下面进行Linux下的安装。


3.Linux下配置安装启动

首先来到 opt 目录下,新建一个 software,将刚刚下载好的压缩包上传到这个目录下。然后 tar -zxvf 解压即可,这里解压到 opt/module 这个目录中,如果没有需要 mkdir 新建。

解压完成之后,这个名字太长,可以考虑 mv 对它重命名,这里一定要确保Linux下已经安装好了 jdk。

进入zookeeper目录中,可以看到这其中也是类似的 bin(可执行命令)、conf(配置文件)、docs(文档)、lib(jar包)。

下面我们进到 conf 目录下,对 zoo_sample.cfg 这个核心配置文件进行重命名、修改相关参数。 

下面的第二张截图中,是回退到zookeeper目录下,创建一个 zkData 目录,专门用来存放 zookeeper 相关的数据节点信息。

创建好 zkData 之后,我们将它对应的文件路径拷贝,将 zoo.cfg 配置文件中的 dataDir 的值改为 zkData 的文件路径。 

配置文件修改完成之后,下面就可以启动 zookeeper 了,这里要先启动服务端、再启动客户端。 我这里是位于zookeeper的bin目录下,

启动服务端命令:

./zkServer.sh start 

启动客户端命令:

./zkCli.sh

查看进程是否启动:  

ps -ef | grep zookeeper
或
jps

查看zookeeper状态

./zkServer.sh status

退出zookeeper客户端

quit

停止zookeeper服务

./zkServer.sh stop
或
根据进程端口号直接kill -9


4.Zookeeper配置文件的相关参数

在下面这张图中,对应的是 zoo.cfg 配置文件,这其中有五个参数,含义如下:👇👇👇

1 tickTime = 2000 :通信心跳时间, Zookeeper 服务器与客户端心跳时间,单位毫秒

2initLimit = 10LF初始通信时限 。这里默认的10代表的是10次心跳时间,也即 10*2000ms = 20000ms = 20s,如果你在初始化的时候,20s之内LF之间还没有建立连接,那么zookeeper就认为这次通信失败了。

3syncLimit = 5LF同步通信时限  。在LF经历过初始化之后,再进行通信连接时,就会采取这个值,默认的5代表5次心跳时间,也即 5*2000ms = 10000ms = 10s。

4 dataDir 保存 Zookeeper 中的数据  (注意:默认的tmp 目录,容易被 Linux 系统定期删除,所以一般不用默认的 tmp 目录) 5 clientPort = 2181 :客户端连接端口,通常不做修改。

以上是关于Zookeeper——简介 & 下载 & Linux下配置安装启动 & 解读相关配置参数的主要内容,如果未能解决你的问题,请参考以下文章

Zookeeper——简介 & 下载 & Linux下配置安装启动 & 解读相关配置参数

分布式专题——Zookeeper简介

Zookeeper简介

mac zookeeper&kafka 安装包搭建环境

mac zookeeper&kafka 安装包搭建环境

Zookeeper简介和安装