14-zookeeper环境搭建
0、环境
- java:1.8
- zookeeper:3.5.6
1、下载
zookeeper下载点击这里。
2、安装
下载完成后解压,放到你想放的目录里。先看一下zookeeper的目录结构,如下图:

进入conf目录,复制zoo_sample.cfg,并重新命名zoo.cfg。我们来看一下zoo.cfg的内容:
# 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=/Users/jackie/zkdata
#dataLogDir=/Users/jackie/dev/zookeeper-3.5.6/tmp/logs
# the port at which the clients will connect
clientPort=2181
# the maximum number of client connections.
# increase this if you need to handle more clients
#maxClientCnxns=60
#
# 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
能看到大部分都是注释,我们在这里关注两个参数:
- dataDir:这个参数是数据保存的目录,改成你想要放的目录。
- clientPort: 这是客户端连接的端口,保证没被占用即可。
3、启动
./zkServer.sh start
我使用的是mac,如果是Windows机器,使用.cmd文件启动。启动成功后,控制台如下图:

大家注意,命令后有个start指令,zookeeper还有其他参数供使用,我列出常用的:
- start:启动zookeeper服务。
- stop:停止zookeeper服务。
- status:获取zookeeper服务运行的状态。
- restart:重启服务。
- start-foreground: 前台启动服务
我们一起看一下status参数的效果:

Ok, 单机的zookeeper就搭建完成了。
4、zookeeper集群搭建
我们利用单台电脑搭建一个伪集群。这个集群总共包含三个节点。下来我们先搭建第一个。
4.1、修改 zoo.cfg文件

从图中的红框可以看到,总共有三处需要更改:
- dataDir: 每一个节点需要有不同的数据目录
- clientPort:每个节点需要不同的端口
- server.X: X代表节点的id。server. <id> = <ip> : <port1> : <port2>。port1是leader与follower心跳检测与数据同步的端口。port2是leader选举过程中用于投票的端口。在同一台机器上,都需要保持不同。
- admin.serverPort: zk管理端服务端口,可以通过http://localhost:8081/commands访问到。
4.2、创建myid文件
找到1节点的数据目录,创建myid文件,输入内容“1”。如果你的节点id不是1,写你自己的id。
注意这个id,取值范围在1~255,必须是整数,别乱写。
4.3、测试
按照步骤1和2,分别对3个节点配置。配置完成后挨个启动zk服务。


第三个节点就不看了,看到上面的Mode了吗,节点2现在是Leader。
好了,今天就到这了啦。
相关文章:
14-zookeeper环境搭建
0、环境 java:1.8zookeeper:3.5.6 1、下载 zookeeper下载点击这里。 2、安装 下载完成后解压,放到你想放的目录里。先看一下zookeeper的目录结构,如下图: 进入conf目录,复制zoo_sample.cfg࿰…...
[搜广推]王树森推荐系统笔记——矩阵补充最近邻查找
视频合集链接 矩阵补充(工业界不常用) 模型结构 embedding可以把 用户ID 或者 物品ID 映射成向量输入用户ID 和 物品ID,输出向量的内积(一个实数),内积越大说明用户对这个物品越感兴趣模型中的两个embed…...
Unity3D * 粒子特效 * Particle System
(基于阿发教程做的重点笔记) 粒子 用于模拟一些流动的,没有形状的物质,例如 液体,烟雾,火焰,爆炸,魔法等效果 去除粒子外框 particle system 粒子发生器,有1个主模块和22个子模块࿰…...
【基础篇】1. JasperSoft Studio编辑器与报表属性介绍
编辑器介绍 Jaspersoft Studio有一个多选项卡编辑器,其中包括三个标签:设计,源代码和预览。 Design:报表设计页面,可以图形化拖拉组件设计报表,打开报表文件的主页面Source:源代码页码ÿ…...
数据结构:算法篇:快速排序;直接插入排序
目录 快速排序 直接插入排序 改良版冒泡排序 快速排序 理解: ①从待排序元素中选定一个基准元素; ②以基准元素将数据分为两部分:(可以将:大于基准元素放左,小于基准元素放右) ③对左半部分…...
WebAPI编程(第一天,第二天)
WebAPI编程(第一天,第二天) day01 - Web APIs 1.1. Web API介绍 1.1.1 API的概念1.1.2 Web API的概念1.1.3 API 和 Web API 总结 1.2. DOM 介绍 1.2.1 什么是DOM1.2.2. DOM树 1.3. 获取元素 1.3.1. 根据ID获取1.3.2. 根据标签名获取元素1.3.…...
查看MySQL存储引擎方法,表操作
修改数据库表存储引擎 show create table dept; show table status from itpux where name s2\G; select * from information_schema.TABLES where table_schemaitpux and table_names3; 查询整个mysql里面存储引擎是innodb/myisam的表 建表时候要写好存储引擎 -- 创建表 -- 表…...
【Python教程】Python3基础篇之Number(数字)
博主介绍:✌全网粉丝21W+,CSDN博客专家、Java领域优质创作者,掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java技术领域✌ 技术范围:SpringBoot、SpringCloud、Vue、SSM、HTML、Nodejs、Python、MySQL、PostgreSQL、大数据、物联网、机器学习等设计与开发。 感兴趣的可…...
基于openEuler22.09部署OpenStack Yoga云平台(一)
OpenStack Yoga部署 安装OpenStack 一、基础准备 基于OpenStack经典的三节点环境进行部署,三个节点分别是控制节点(controller)、计算节点(compute)、存储节点(storage),其中存储…...
I.MX6U 启动方式详解
一、启动方式选择 BOOT 的处理过程是发生在 I.MX6U 芯片上电以后,芯片会根据 BOOT_MODE[1:0]的设置 来选择 BOOT 方式。 BOOT_MODE[1:0]的值是可以改变的,有两种方式,一种是改写 eFUSE(熔 丝),一种是修改相应的 GPIO 高低电平。第一种修改 eFUSE 的方式只能修改一次,后面就…...
施耐德变频器ATV320系列技术优势:创新与安全并重
在工业自动化领域,追求高效、安全与智能已成为不可阻挡的趋势。施耐德变频器ATV320系列凭借其强大的设计标准和全球认证,成为能够帮助企业降低安装成本,提高设备性能的创新解决方案。 【全球认证,品质保障】ATV320 系列秉持施耐德…...
系统思考—全局思维
昨天接到一个企业需求,某互联网公司VP希望N-1的核心团队一起学习系统思考,特别是在新业务快速发展的阶段。公司增长势头不错,但如何解决跨部门的协作问题,成为了瓶颈。全局思维就是关键。产品、技术、市场、运营、客服……如何打破…...
Windows如何切换用户访问局域网共享文件夹,如何切换网上邻居的账户
Windows如何切换用户访问局域网共享文件夹,如何切换网上邻居的账户 查看共享连接 使用net use命令可以查看当前已经建立的共享连接。net use删除共享连接 使用net use * /del 或net use * /delete命令可以删除所有当前的共享连接。net use * /delnet use * /delete如果只想删除…...
如何在谷歌浏览器中启用语音搜索
想象一下,你正在拥挤的地铁上,双手都拿着沉重的购物袋,突然你想搜索附近的咖啡馆。此时如果你能通过语音而不是打字来进行搜索,那将多么的便利!在谷歌浏览器中,启用语音搜索功能就是这么简单而高效…...
HarmonyOS NEXT 技术实践-基于基础视觉服务实现骨骼点识别
本示例展示了如何在HarmonyOS Next中实现基于基础视觉服务的骨骼点识别功能。骨骼点识别是计算机视觉中的一项重要技术,广泛应用于运动分析、健身监控和增强现实等领域。通过使用HarmonyOS Next提供的视觉API,开发者能够轻松地对人物图像进行骨骼点检测&…...
Debian系统宝塔面板安装LiteSpeed Memcached(LSMCD)
参考链接 1. 官网指引: https://www.litespeedtech.com/support/wiki/doku.php/litespeed_wiki:lsmcd:installation 2. 安装OpenLiteSpeed官方LSMCD对象缓存替换Memcached详细图文教程 - 搬主题 实操记录: 首先LSMCD 默认的端口是11211,…...
tcp 的三次握手与四次挥手
问1: 请你说一下tcp的三次握手一次握手两次握手三次握手问: 为什么不四(更多)次握手? 问 2: 请说一下 tcp 的 4 次挥手一次挥手两次挥手问题:能不能等到数据传输完成再返回 ack? 三次挥手四次挥手问: 为什么要等两个最大报文存在时间? bg: tcp 是可靠的连接,如何保证 建立连…...
QT--信号与槽机制
什么是信号与槽? 在 Qt 中,信号与槽是一种用于对象间通信的机制。它使得一个对象可以通知其他对象某个事件的发生,而不需要直接知道这些对象的具体实现。这种机制非常适合事件驱动的编程模型,如用户界面交互。 1. 信号ÿ…...
vue3项目history路由模式部署上线405、刷新404问题(包括部分页面刷新404问题)
一、找不到js模块 解决方法:配置Nginx配置文件: // root /your/program/path/dist root /www/wwwroot/my_manage_backend_v1/dist;二、刷新页面导致404问题(Not found) 经过一系列配置后发现进入页面一切正常,包括路由前进和回退࿰…...
电阻容差是啥意思
定义 电阻器在生产过程中,由于工艺等因素的限制,其实际阻值不可能与标称阻值完全一致,总会存在一定的误差。例如,一个标称阻值为100Ω、容差为5%的电阻,其实际阻值可能在95Ω至105Ω之间。 产生原因 材料特性差异&a…...
基于STM32LXXX的数字电位器(MAX5481EUD+)驱动应用程序设计
一、简介: MAX5481EUD+ 是一款10位(1024抽头)、非易失性、线性变化数字电位器,采用SPI/增删双模式接口,特别适合需要高分辨率、低温漂和掉电保存设置的STM32LXXX低功耗应用。 二、主要技术特性: 参数项 典型值/描述 分辨率 10-bit (1024 taps) 端到端电阻 10kΩ (另有50…...
如何快速掌握微信自动化:3步终极解决方案
如何快速掌握微信自动化:3步终极解决方案 【免费下载链接】wxhelper Hook WeChat / 微信逆向 项目地址: https://gitcode.com/gh_mirrors/wx/wxhelper 想要实现PC端微信的自动化操作吗?wxhelper为你提供了完整的微信Hook解决方案,让你…...
DeepTutor云服务配置:利用云端资源提升AI性能
DeepTutor云服务配置:利用云端资源提升AI性能 【免费下载链接】DeepTutor "DeepTutor: Agent-Native Personalized Learning Assistant" 项目地址: https://gitcode.com/GitHub_Trending/dee/DeepTutor DeepTutor是一款强大的Agent-Native个性化学…...
ModTheSpire终极指南:如何轻松为杀戮尖塔安装和管理游戏模组
ModTheSpire终极指南:如何轻松为杀戮尖塔安装和管理游戏模组 【免费下载链接】ModTheSpire External mod loader for Slay The Spire 项目地址: https://gitcode.com/gh_mirrors/mo/ModTheSpire 你是否厌倦了杀戮尖塔的原有内容?想要体验全新角色…...
zookeeper 常用命令之zkCli
简介:介绍zkCli客户端非常常用的命令 zkCli.sh 不填后面的参数,默认连接的就是localhost:2181zk节点类似Linux的目录,比如/uar/local,-s表示持久的节点,-e是临时的节点。data是往这个节点里面放入哪些数据,…...
保姆级教程:用Eclipse Paho库在Java中实现MQTT over WebSocket连接(以DJI无人机控制为例)
从零构建无人机控制系统:基于Eclipse Paho的MQTT over WebSocket实战指南 引言 想象一下,你正在开发一个需要实时控制无人机的Web应用。传统的TCP连接在浏览器环境中处处受限,而WebSocket技术恰好能解决这一痛点。本文将带你深入探索如何利用…...
Ostrakon-VL终端惊艳效果:像素UI下支持键盘快捷键(F5刷新/F6扫描)
Ostrakon-VL终端惊艳效果:像素UI下支持键盘快捷键(F5刷新/F6扫描) 1. 像素特工终端概览 这是一个基于Ostrakon-VL-8B多模态大模型开发的Web交互终端,专为零售与餐饮场景优化。与传统工业级UI不同,我们采用了高饱和度…...
OpenClaw跨模型路由:按图片类型分配Qwen3.5-9B与本地LLM
OpenClaw跨模型路由:按图片类型分配Qwen3.5-9B与本地LLM 1. 为什么需要跨模型路由 去年我在处理大量技术文档截图时,发现一个有趣的现象:流程图和表格类图片需要强大的多模态理解能力,而纯文字截图往往只需要基础的OCR功能。当时…...
汽车牌照数据集 YOLO 目标检测 | 可下载
点击下载数据集~ 关于数据集: 数据集:汽车牌照检测 该数据集包含车牌图像及其对应的YOLO格式标注。它旨在用于训练和评估专注于检测图像中车牌的模型。 数据集概览: 图片总数: 433 张车牌图片 图片格式: .png 标…...
[具身智能-291]:计算机音频主要的功能、常见的库和工具
计算机音频领域涉及从底层的信号处理到上层的应用开发,其功能、库和工具种类繁多。以下为你梳理了计算机音频的主要功能以及在不同编程语言和场景下常见的库与工具。🎵 计算机音频的主要功能计算机音频处理的核心是围绕数字信号展开的,主要功…...
