【大数据】安装 Zookeeper 单机版

安装 Zookeeper 单机版

下面安装 Zookeeper,由于它是 Apache 的一个顶级项目,所以域名是 zookeeper.apache.org,所有 Apache 的顶级项目的官网都是以项目名 .apache.org 来命名的。

在这里插入图片描述

点击 Download 即可下载,这里我们选择的版本是 3.5.10,下载之后扔到服务器上。由于 Zookeeper 是基于 Java 语言编写的,所以还需要安装 JDK,这里我使用的是 JDK1.8,都已经已经安装好了,并配置了环境变量。

在这里插入图片描述

我们安装完毕之后不能直接用,还需要修改一下 Zookeeper 的配置文件。在安装目录的 conf 目录下,里面有一个 zoo_sample.cfg,我们将其重命名为 zoo.cfg,然后打开。

在这里插入图片描述

里面有一个 dataDir 参数,表示数据的存储目录,数据在持久化之后会存储在该目录中,以防止数据丢失。但该目录默认位于临时目录 /tmp 下面,这样当节点重启之后数据就没了,所以需要换一个目录(要提前创建好),至于目录名无所谓,我这里叫 zkData

关于配置文件里的其他参数,我们之后会解读,下面先来启动服务。

在这里插入图片描述

bin 目录下有很多脚本,其中 .cmd 文件是在 Windows 上使用的,不用管。然后我们看到有一个 zkServer.sh,它就是负责启动 Zookeeper 服务的。

在这里插入图片描述

启动成功,我们调用 jps 查看进程。

在这里插入图片描述

凡是基于 Java 语言编写的框架,在启动之后,都可以通过 jps 查看相应的进程。

要是看到输出了 QuorumPeerMain 就代表 Zookeeper 启动成功了,如果想 停止 服务,可以通过 zkServer.sh stop重启 则是 zkServer.sh restart

启动之后,我们也可以查看状态。

在这里插入图片描述

此时的模式是 standalone 模式,表示单机,当然后面我们也会搭建集群。

既然有了服务端,那么是不是也要有客户端呢,对的,类似于 Redis。下面启动客户端,直接 zkCli.sh 即可,不需要 start,出现如下表示启动成功。

在这里插入图片描述

关于 Zookeeper 客户端的命令,后面详细介绍,我们来解读一下 Zookeeper 的配置文件。

配置项还是比较少的,解释一下它们的含义。

tickTime=2000
initLimit=10
syncLimit=5
dataDir=/opt/apache-zookeeper-3.5.10-bin/zkData
clientPort=2181
maxClientCnxns=60
autopurge.snapRetainCount=3
autopurge.purgeInterval=1
  • tickTime:服务端与客户端的心跳时间,默认 2000 2000 2000 毫秒。表示客户端每隔 2 2 2 秒会向服务端发送一个心跳信息,表示自己还活着,服务端不要断开连接。当然,它还表示集群内多个节点之间的心跳时间。
  • initLimit:领导者和追随者第一次建立连接时的最大通信时限,默认是 10 10 10tickTime。如果超时,则表示连接建立失败。
  • syncLimit:领导者和追随者之间响应的最大时限(连接建立之后),单位同样是 tickTime。如果领导者在超过 syncLimit × tickTime 之后没有收到追随者的响应,那么领导者会认为该追随者已经死掉,从而将其从服务器列表中删除。
  • dataDir:数据文件目录 + 数据持久化路径,主要用于保存 Zookeeper 中的数据,我们刚刚已经修改了。
  • clientPort:客户端和服务端通信的端口。
  • maxClientCnxns:服务端最多支持和多少个客户端建立连接,默认是 60 60 60
  • autopurge.snapRetainCount:在 dataDir 中要保存的快照数量,多余的要被清除。
  • autopurge.purgeInterval:自动触发清除任务的时间间隔,单位小时。
  • admin.serverPort:这个参数没有写在配置文件中,但有必要说一下。Zookeeper 从 3.5 开始,启动之后会占用 8080 8080 8080 端口,因为内嵌了一个管理控制台。而 8080 8080 8080 端口很常见,如果启动时发现该端口被占用,那么 Zookeeper 会启动失败,此时便可通过该参数将端口改成其它的,比如 8081 8081 8081

配置文件还是非常简单的,以上我们就完成了 Zookeeper 单机版的安装。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/598274.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Python 简单爬虫程序及其工作原理

前言 网络中包含大量的数据,这些数据对于我们来说是非常有价值的,因此编写一个爬虫程序,自动从网页中获取所需的数据,对于信息收集和分析是非常有帮助的。Python 是一种高效而灵活的编程语言,它提供了强大的库和框架来…

软考报名有哪些要求?

报考任何级别不需要学历、资历条件,只要达到相应的专业技术水平就可以报考相应的级别 (一)2024年软考报名入口 2024年软考采用网络报名方式,考生在报名期间进入中国计算机技术职业资格网 (中国计算机技术职业资格网),点击页面右下角的报名入…

【Linux】不常用命令记录

查看开启的网络端口 1、使用netstat命令“netstat -tuln”,该命令将显示所有当前监听的TCP和UDP端口; 2、使用ss命令“ss -tuln”,用于显示当前监听的TCP和UDP端口; 3、使用lsof命令“lsof -i”,将显示当前打开的网络…

c# 学习笔记 - LINQ

文章目录 1.LINQ概述1.1 LINQ介绍1.2 LINQ基本使用1.3 LINQ的扩展 2. 标准查询操作符2.1 筛选(索引、类型筛选....)2.2 索引筛选2.3 3. xxxxxxx 1.LINQ概述 1.1 LINQ介绍 LINQ是语言集查询(Language Integrated Query, LINQ)的查询语言,其集成了c#当中的查询语法&a…

2024年AI还能帮你干什么?这十个趋势必须关注

在2024年,人工智能(AI)的影响力已经渗透到各个领域,从生产到生活,从工作到学习,无处不在。而随着技术的不断进步,AI的应用范围还将进一步扩大,成为推动社会进步的重要力量。 1. 增强…

JAVA学习专栏

JAVA专栏 Java核心技术 Java核心技术 Java练手算法 Java练手算法 Java数据结构和算法 Java数据结构和算法 Java设计模式 Java设计模式 Java并发编程 Java并发编程 MySQL数据库 MySQL数据库 Java项目管理Maven Java项目管理Maven 项目管理工具gradle 项目管理工具gradle…

分布式锁Lock4J 使用总结

Lok4j 简介 lock4j是一个分布式锁组件,其提供了多种不同的支持以满足不同性能和环境的需求。 立志打造一个简单但富有内涵的分布式锁组件。 特点 简单易用,功能强大,扩展性强。支持redission,redisTemplate,zookeeper。可混用&#xff0c…

分布式【Zookeeper三大核心之数据节点ZNode】

ZooKeeper在分布式领域,能够帮助解决很多很多的分布式难题,但是底层却只是依赖于两个主要的组件:ZNode文件/数据存储系统和watch监听系统,另外还有一大模块,就是ACL系统。本节我们介绍下znode文件/数据存储系统。 一、…

【QT】自定义代理类

目录 1 我们为什么要使用自定义代理类? 2 自定义代理类的基本设计要求 3 自定义代理的功能 4 基于QSpinBox的自定义代理类 5 自定义代理类的使用 1 我们为什么要使用自定义代理类? 传统的模型-视图框架可以让我们实现逻辑展示相分离,我们…

【Spring Cloud Gateway】1、Spring Cloud Gateway网关服务搭建

1、什么是网关? API Gateway(APIGW / API 网关),顾名思义,是系统对外的唯一入口。API 网关封装了系统内部架构,为每个客户端提供定制的 API。 近几年来移动应用与企业间互联需求的兴起。从以前单一的 Web …

344. 反转字符串

344. 反转字符串 题目链接&#xff1a;344. 反转字符串 思路&#xff1a;表示确实偷懒了&#xff0c;直接用自带方法解决的。 代码如下&#xff1a; class Solution { public:void reverseString(vector<char>& s) {reverse(s.begin(),s.end());} };

QA 这个职位在中国有前途么?转自知乎

QA 这个职位在中国有前途么&#xff1f; 体现在学校里&#xff0c;大家找工作的时候明显不愿意去做测试&#xff0c;更多的是愿意去做developer。 黄延胜 测试架构师 216 人赞同 对这个问题的回复有2个答案. 第一段来自于2011年, 第二段来自于2015年. 我没有删除第一段是为…

Spring见解 1.2 IOC

2.3.Spring的IOC解决程序耦合 2.3.1.创建工程 2.3.1.1.pom.xml <?xml version"1.0" encoding"UTF-8"?> <project xmlns"http://maven.apache.org/POM/4.0.0"xmlns:xsi"http://www.w3.org/2001/XMLSchema-instance"xsi:sc…

网络安全的概念、类型和重要性

什么是网络安全&#xff1f; 网络安全是指用于防止网络攻击或减轻其影响的任何技术、措施或做法。网络安全旨在保护个人和组织的系统、应用程序、计算设备、敏感数据和金融资产&#xff0c;使其免受简单而不堪其绕的计算机病毒、复杂而代价高昂的勒索软件攻击&#xff0c;以及…

Jvm垃圾收集器系列之ZGC的小知识(个人见解仅供参考)

学习内容&#xff1a; 问&#xff1a;什么是STW&#xff1f; 答&#xff1a;STW是StopTheWorld的缩写&#xff0c;指的是在Java的垃圾回收过程中&#xff0c;暂停所有的业务线程&#xff0c;导致业务系统暂停。问&#xff1a;ZGC的设计目标是什么&#xff1f; 答&#xff1a;Z…

Spring 七种事务传播性介绍

作者&#xff1a;vivo 互联网服务器团队 - Zhou Shaobin 本文主要介绍了Spring事务传播性的相关知识。 Spring中定义了7种事务传播性&#xff1a; PROPAGATION_REQUIRED PROPAGATION_SUPPORTS PROPAGATION_MANDATORY PROPAGATION_REQUIRES_NEW PROPAGATION_NOT_SUPPORTED…

八、QLayout 用户基本资料修改(Qt5 GUI系列)

目录 一、设计需求 二、实现代码 三、代码解析 四、总结 一、设计需求 在很多应用程序中会有用户注册或用户编辑信息等界面。本文就设计一个用户信息编辑界面。要求包含用户名、姓名、性别、部门、年龄、头像、个人说明等信息。 二、实现代码 #ifndef DIALOG_H #define D…

springboot中引入AOP切面编程

在Spring Boot 3.0中引入AOP的过程如下所示&#xff1a; 1、首先&#xff0c;确保已经添加了相关依赖。可以通过Maven或Gradle来管理项目的依赖。对于使用Maven构建的项目&#xff0c;需要将以下依赖添加到pom.xml文件中 <dependency><groupId>org.springframewo…

BERT(从理论到实践): Bidirectional Encoder Representations from Transformers【3】

这是本系列文章中的第3弹,请确保你已经读过并了解之前文章所讲的内容,因为对于已经解释过的概念或API,本文不会再赘述。 本文要利用BERT实现一个“垃圾邮件分类”的任务,这也是NLP中一个很常见的任务:Text Classification。我们的实验环境仍然是Python3+Tensorflow/Keras…

Kafka高级应用:如何配置处理MQ百万级消息队列?

在大数据时代&#xff0c;Apache Kafka作为一款高性能的分布式消息队列系统&#xff0c;广泛应用于处理大规模数据流。本文将深入探讨在Kafka环境中处理百万级消息队列的高级应用技巧。 本文&#xff0c;已收录于&#xff0c;我的技术网站 ddkk.com&#xff0c;有大厂完整面经…