zookeeper之分布式环境搭建

ZooKeeper的分布式环境搭建是一个涉及多个步骤的过程,主要包括准备工作、安装ZooKeeper、配置集群、启动服务以及验证集群状态。以下是搭建ZooKeeper分布式环境的基本步骤:

1. 准备工作

  • 确保所有节点的系统时间同步。
  • 确保所有节点之间网络互通,无防火墙隔离。
  • 安装Java环境,因为ZooKeeper是基于Java开发的。

2. 安装ZooKeeper

  • 下载ZooKeeper的安装包,并解压到指定目录。
  • 将ZooKeeper的bin目录添加到系统环境变量中。

3. 配置集群

  • 在每个节点上创建ZooKeeper的数据目录,如/opt/module/zookeeper-3.4.10/zkData
  • 在每个节点的数据目录下创建一个名为myid的文件,其内容为该节点的ID,这个ID需要与zoo.cfg配置文件中的server.N中的N相对应。
  • 编辑zoo.cfg配置文件,配置集群信息,包括tickTimeinitLimitsyncLimitdataDirclientPort以及各个节点的server.N配置。

4. 启动服务

  • 在每个节点上启动ZooKeeper服务。可以使用zkServer.sh start命令启动。

5. 验证集群状态

  • 使用jps命令检查每个节点上的ZooKeeper进程是否启动成功。
  • 使用zkServer.sh status命令查看集群状态,确认是否有一个节点被选举为Leader,其余节点为Follower。

6. 故障转移测试

  • 模拟节点故障,观察集群是否能够正常工作,以及Leader选举是否正常进行。

注意事项

  • 确保zoo.cfg配置文件中的clientPort配置正确,这是客户端连接ZooKeeper的端口。
  • dataDir是ZooKeeper存储数据的目录,需要有足够的磁盘空间。
  • myid文件的值必须唯一,且与zoo.cfg中的server.N的N一致。

参考文档

  • Zookeeper集群环境搭建(全分布式) - 知乎
  • Zookeeper完全分布式集群的搭建 - linhaifeng - 博客园
  • 【Zookeeper】分布式环境搭建 - ShadowFiend - 博客园
  • ZooKeeper环境搭建(保姆级教程)-CSDN博客
  • ZooKeeper完全分布式安装与配置 - 阿里云开发者社区
  • ZooKeeper 完全分布式集群环境搭建 - 诚信天下 - 博客园
  • Zookeeper分布式环境搭建 - CSDN博客

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

机器学习(三) ----------线性回归算法(梯度下降+正则化)

目录 1 定义 2 损失函数(回归) 2.1 最小二乘函数(Least Squares Function) 2.2 均方误差(Mean Squared Error, MSE) 2.3 均方根误差(Root Mean Squared Error, RMSE) 2.4 平均绝…

自动驾驶纵向控制算法

本文来源——b站忠厚老实的老王,链接:忠厚老实的老王投稿视频-忠厚老实的老王视频分享-哔哩哔哩视频 (bilibili.com),侵删。 功率和转速之间的关系就是:功率P等于转矩M乘以转速ω。并不是油门越大加速度就越大。 发动机和电机的转…

GDAL:Warning 1: All options related to creation ignored in update mode

01 警告说明 首先贴出相关代码: out_file_name Rs_{:4.0f}{:02.0f}.tiff.format(year, month) out_path os.path.join(out_dir, out_file_name) mem_driver gdal.GetDriverByName(MEM) mem_ds mem_driver.Create(, len(lon), len(lat), 1, gdal.GDT_Float32) …

掌握用户全生命周期数据,Xinstall让App投放更科学

在数字化时代,App已成为企业与用户互动的重要窗口。然而,想要让App在众多竞争者中脱颖而出,吸引并留住用户,有效的广告投放策略至关重要。这就需要对广告投放效果进行精准分析,以便及时调整策略,实现最大化…

Kubernetes的基本概念

目录 一.基本内容 1.定义 2.作用 二.特性 1.弹性伸缩 2.自我修复 3.服务发现和负载均衡 4.自动发布(默认滚动发布模式)和回滚 5.集中化配置管理和密钥管理 6.存储编排,支持外挂存储并对外挂存储资源进行编排 7.任务批处理运行 三…

clickhouse mergeTree表引擎解析

参照 https://clickhouse.com/docs/zh/engines/table-engines/mergetree-family/mergetree https://clickhouse.com/docs/en/optimize/skipping-indexes Clickhouse中最强大的表引擎当属MergeTree(合并树)引擎及该系列(*MergeTree&#xff…

Springboot项目使用redis实现session共享

1.安装redis,并配置密码 这里就不针对于redis的安装约配置进行说明了,直接在项目中使用。 redis在windows环境下安装:Window下Redis的安装和部署详细图文教程(Redis的安装和可视化工具的使用)_redis安装-CSDN博客 2…

图片公式识别@文档公式识别@表格识别@在线和离线OCR工具

文章目录 abstract普通文字识别本地软件识别公式扩展插件下载小结 在线识别网站/API👺Quicker整合(推荐)可视化编辑和识别公式其他多模态大模型识别图片中的公式排版 开源模型 abstract 本文介绍免费图片文本识别(OCR)工具,包括普通文字识别,公式识别,甚至是手写公…

Linux网络——自定义序列化与反序列化

前言 之前我们学习过socket之tcp通信,知道了使用tcp建立连接的一系列操作,并通过write与read函数能让客户端与服务端进行通信,但是tcp是面向字节流的,有可能我们write时只写入了部分数据,此时另一端就来read了&#x…

ZYNQ MPSoC zcu102 PS端运行helloworld

文章目录 一、参考资料二、需要注意的步骤三、运行结果 一、参考资料 1.zcu102 zynq Mpsoc uart hello world——CSDN博客 2.zcu102自学 —— 第一个实验 (纯PS 串口打印 Hello world)——CSDN博客 3.【02】ALINX Zynq MPSoC XILINX FPGA视频教程 SDK 裸…

Linux:进程信号(一)信号的产生

目录 一、信号是什么? 二、Linux信号 三、信号处理方式 四、信号的产生 1、 通过终端按键产生信号 2、调用系统函数向进程发信号 3、 硬件异常产生信号 一、信号是什么? 在生活中,有许多信号,比如红绿灯,下课铃声…

如何使用Transformer-TTS语音合成模型

1、技术原理及架构图 ​ Transformer-TTS主要通过将Transformer模型与Tacotron2系统结合来实现文本到语音的转换。在这种结构中,原始的Transformer模型在输入阶段和输出阶段进行了适当的修改,以更好地处理语音数据。具体来说,Transformer-TT…

【Docker】新手教程的第一个demo:Wordpress

1 任务简单介绍 WordPress是什么: 是一个常用博客软件简单易部署,只需要两个容器(业务容器 数据库容器) 本文借鉴博客,使用自建 WordPress 容器方法在Docker上部署Wordpress,本地环境为Mac时使用该博客…

C语言leetcode刷题笔记2

C语言leetcode刷题笔记2 第4题:283.移动零互换直接移动 第5题:122.买卖股票的最佳时机‖递归(超时)动态规划贪心算法 第6题:49.字母异位词分组优化 第4题:283.移动零 给定一个数组 nums,编写一…

分布式事务Seata使用

我们要学习seata,首先需要具备如下技术储备: 数据库事务的基本知识;maven工具的使用;熟悉SpringCloudAlibaba技术栈;掌握SpringDataJPA简单使用; 一. Seata基本概念 1.seata是什么 Seata是阿里巴巴中间…

C++ 动态内存管理

例如:动态内存和释放单个数据的存储区 一 用new运算符初始化单个数据的存储区 举例

pytest + yaml 框架 - 参数化读取文件路径优化

针对小伙伴提出参数化时读取外部文件,在项目根路径运行没问题,但是进入到项目下子文件夹运行用例,就会找不到文件问题做了优化。 关于参数化读取外部文件相关内容参考前面这篇pytest yaml 框架 -25.参数化数据支持读取外部文件txt/csv/json/…

LeetCode 257. 二叉树的所有路径

LeetCode 257. 二叉树的所有路径 1、题目 题目链接:257. 二叉树的所有路径 给你一个二叉树的根节点 root ,按 任意顺序 ,返回所有从根节点到叶子节点的路径。 叶子节点 是指没有子节点的节点。 示例 1: 输入:root…

C++:内存管理

C:内存管理 一、C/C内存分布二、C语言中动态内存管理方式:malloc/calloc/realloc/free三、C内存管理方式1.new/delete操作内置类型2.new和delete操作自定义类型 四、operator new与operator delete函数(重点)五、new和delete的实现原理1.内置…

Unity曲线插件Dreamteck Splines生成曲线Mesh

一、需求 脱离编辑器,运行时添加点,动态生成管道、线缆等曲线Mesh。 二、Dreamteck Splines简单运用 这方面资料不多,只有官方文档全英参考,而且又介绍得不详细。 2个重要组件介绍: SplineComputer: 最…
最新文章