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

本文涉及的产品
服务治理 MSE Sentinel/OpenSergo,Agent数量 不受限
简介: 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(文档)、libjar包)。


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

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

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


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

启动服务端命令:

./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 配置文件,这其中有五个参数,含义如下:👇👇👇


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


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


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

4dataDir保存Zookeeper中的数据  (注意:默认的tmp目录,容易被Linux系统定期删除,所以一般不用默认的tmp目录)

5clientPort = 2181:客户端连接端口,通常不做修改。

相关实践学习
基于MSE实现微服务的全链路灰度
通过本场景的实验操作,您将了解并实现在线业务的微服务全链路灰度能力。
相关文章
|
5天前
|
Oracle Java 关系型数据库
Linux环境安装配置JDK11
Linux环境安装配置JDK11
30 0
|
7天前
|
Ubuntu 安全 Linux
Linux(34)Rockchip RK3568 Ubuntu22.04和Debian 10上配置远程桌面工具
Linux(34)Rockchip RK3568 Ubuntu22.04和Debian 10上配置远程桌面工具
37 0
|
11天前
|
监控 关系型数据库 MySQL
Alibaba Cloud Linux基础入门(1)——配置zabbix
该文档是关于在Alibaba Cloud Linux上配置Zabbix的教程。首先,通过添加Zabbix仓库并安装相关软件包(如zabbix-server,web前端和agent)。然后,安装并启动MySQL数据库,执行`mysql_secure_installation`进行配置。接着,创建名为zabbix的数据库和用户,并导入Zabbix默认数据。最后,设置Zabbix服务开机自启动,并通过浏览器访问http://服务器IP/zabbix完成Web端配置,使用Admin/zabbix登录。
|
1天前
|
存储 关系型数据库 MySQL
linux安装MySQL8.0,密码修改权限配置等常规操作详解
linux安装MySQL8.0,密码修改权限配置等常规操作详解
|
2天前
|
Linux 网络安全 Docker
【Linux】-docker配置容器并打包成镜像
【Linux】-docker配置容器并打包成镜像
|
2天前
|
网络协议 Linux 开发工具
|
4天前
|
监控 关系型数据库 MySQL
|
4天前
|
Java Linux
Linux下jdk的下载安装
Linux下jdk的下载安装
9 0
|
5天前
|
Ubuntu Linux
Linux(Ubuntu)系统临时IP以及静态IP配置(关闭、启动网卡等操作)
请注意,以上步骤是在临时基础上进行配置的。如果要永久保存静态IP地址,通常还需要修改 `/etc/network/interfaces`文件,以便在系统重启后保持配置。同时,确保备份相关配置文件以防止出现问题。
22 1
|
7天前
|
Java Linux 数据安全/隐私保护
【Linux】如何修改系统文件并保存(配置jdk1.7环境变量)
【Linux】如何修改系统文件并保存(配置jdk1.7环境变量)
11 0