ZooKeeper集群指南-新增节点配置

可以直接把旧节点的目录直接全部拷贝过来

1. 安装Java环境

# 安装OpenJDK 8
apt-get update
apt-get install openjdk-8-jdk -y

2. 下载并安装ZooKeeper

# 下载指定版本
cd /data
wget https://archive.apache.org/dist/zookeeper/zookeeper-3.6.2/apache-zookeeper-3.6.2-bin.tar.gz# 解压安装
tar -zxf apache-zookeeper-3.6.2-bin.tar.gz
mv apache-zookeeper-3.6.2-bin zookeeper# 创建必要目录
mkdir -p /data/zookeeper/data
mkdir -p /data/zookeeper/logs

3. 配置环境变量

创建环境变量配置文件

vim /etc/profile.d/zookeeper.sh

添加以下配置

# ZooKeeper Environment
export ZOOKEEPER_HOME=/data/zookeeper
export PATH=$PATH:$ZOOKEEPER_HOME/bin# Java Environment
export JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64
export PATH=$PATH:$JAVA_HOME/bin# ZooKeeper Security Configuration
export ZK_CLIENT_OPTS="-Djava.security.auth.login.config=/data/zookeeper/conf/zookeeper_jaas.conf"
export JVMFLAGS="-Djava.security.auth.login.config=/data/zookeeper/conf/zookeeper_jaas.conf"

使环境变量生效

source /etc/profile.d/zookeeper.sh

4、配置文件确认

如果是拷贝了目录就需要清空data和logs目录,如果有数据会出现No snapshot found, but there are log entries. Something is broken!

  • 需要清理数据后启动服务,
  • 需要写入节点id
# 1. 停止ZK服务
zkServer.sh stop# 2. 清理数据目录(保险起见先备份)
cd /data/zookeeper
mv data data_backup
mv logs logs_backup# 3. 重新创建目录
mkdir -p data logs# 4. 设置正确的myid
echo "5" > /data/zookeeper/data/myid# 5. 重启服务
zkServer.sh start

zoo.cfg

# 基础配置
tickTime=2000
initLimit=10
syncLimit=5
dataDir=/data/zookeeper/data
dataLogDir=/data/zookeeper/logs
clientPort=2181
admin.serverPort=8081# 监听配置
quorumListenOnAllIPs=true# 集群配置(使用实际IP)
server.1=172.24.77.10:2888:3888
server.2=172.24.77.11:2888:3888
server.3=172.24.77.12:2888:3888
server.4=172.24.77.13:2888:3888# 启用四字母命令
4lw.commands.whitelist=*# 自动清理配置
autopurge.snapRetainCount=3
autopurge.purgeInterval=1# 会话超时配置
maxSessionTimeout=60000
minSessionTimeout=4000# admin server配置
#admin.enableServer=true
#admin.serverAddress=0.0.0.0
authProvider.1=org.apache.zookeeper.server.auth.SASLAuthenticationProvider
requireClientAuthScheme=sasl
jaasLoginRenew=3600000

zookeeper_jaas.conf

Server {org.apache.zookeeper.server.auth.DigestLoginModule requireduser_super="super_password"user_kafka="kafka_password";
};
Client {org.apache.zookeeper.server.auth.DigestLoginModule requiredusername="super"password="super_password";
};

5、确认新节点状态状态

zkServer.sh status
  • 其他节点也要在配置文件中新增节点的配置
  • 检查所有节点状态,确认只有一个leader
  • 修改配置文件后,依次重启fllower节点,最后重启leader节点(最后重启时因为其他节点已经是最新的节点信息,leader节点重启时,主会漂移,最终整个集群状态更新)
步骤1:启动新节点,验证配置
Node4 () → 启动,验证配置正确性
Node5 () → 启动,验证配置正确性步骤2:逐个重启follower
Node2 (Follower) → 重启
Node3 (Follower) → 重启步骤3:最后重启leader
Node1 (Leader) → 重启

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

如若内容造成侵权/违法违规/事实不符,请联系一条长河网进行投诉反馈,一经查实,立即删除!

相关文章

《AI 使生活更美好》

《AI 使生活更美好》 当我们步入科技腾飞的时代,人工智能(AI)如同一颗璀璨的新星,照亮了我们生活的每一个角落。它以惊人的速度改变着我们的世界,从医疗到教育,从交通到娱乐,AI 正以前所未有的力…

数据结构 ——— 链式二叉树的销毁(释放)

目录 链式二叉树示意图 手搓一个链式二叉树 代码实现 示意图 手搓一个链式二叉树 代码演示: // 数据类型 typedef int BTDataType;// 二叉树节点的结构 typedef struct BinaryTreeNode {BTDataType data; //每个节点的数据struct BinaryTreeNode* left; //指向…

马斯克万卡集群AI数据中心引发的科技涟漪:智算数据中心挑战与机遇的全景洞察

一、AI 爆发重塑数据中心格局 随着AI 技术的迅猛发展,尤其是大模型的崛起,其对数据中心产生了极为深远的影响。大模型以其数以亿计甚至更多的参数和对海量数据的处理需求,成为了 AI 发展的核心驱动力之一,同时也为数据中心带来了…

LLM之模型评估:情感评估/EQ评估/幻觉评估等

如果您想知道如何确保 LLM 在您的特定任务上表现出色,本指南适合您!它涵盖了评估模型的不同方法、设计您自己的评估的指南以及来自实践经验的技巧和窍门。 Human-like Affective Cognition in Foundation Models:情感认知评估 研究者们提出了…

2024年大语言模型理论与实践报告|附77页PDF文件下载

本文提供完整版报告下载,请查看文后提示。 以下为报告节选: … 文│复旦大学 张奇 本报告共计:77页。 大模型&AI产品经理如何学习 求大家的点赞和收藏,我花2万买的大模型学习资料免费共享给你们,来看看有哪些…

项目总结报告,软件项目工作总结报告,项目总体控制报告,实施总结,运维总结等全资料(Word)

1. 项目进度 1.1. 进度表 1.2. 总结偏差 2. 项目成本 2.1. 项目规模 2.2. 项目工作量 3. 项目质量 3.1. 评审 4. 计划偏差 5. 测试总结 5.1. 缺陷分析 5.2. 测试Bug分布统计 5.3. Bug分布图 5.4. 总结 6. 最佳实践 7. 经验教训 7.1. 项目过程管理 7.2. 合同完成度管理 7.3. 项目…

javaScript运算符

2.3、运算符 运算符也叫操作符,通过运算符可以对一个值或者多个值进行运算,并获取运算结果,常用于实现赋值、比较、执行算数运算符等功能的符号。 比如typeof 就是一个运算符,可以获得一个值的类型,它会将该值的类型以字符串的形…

六通道CAN集线器

六通道CAN集线器 --SG-CanHub-600 功能概述 SG_CanHub_600是一款具有六路通道的工业级智能 CAN数字隔离中继集线器。 SG_CanHub_600能够实现信号再生、延长通信距离、提高总线负载能力、匹配不同速 率 CAN网络,同时强大的 ID过滤功能可以极大降低 CAN总线负荷&a…

5分钟教你利用kimi+美图免费制作高质量、高点击动物冒险动画短片(含完整的操作步骤)

昨天十一点的时候,收到美图创作者通过了。与可灵、即梦等其他AI视频工具不同的是,MOKI专注于AI短片创作这一场景,覆盖动画短片、网文短剧、故事绘本、MV等多个类型的视频内容生产,结合行业需求,有针对性地打造了一套AI短片创作工作…

RocketMQ-01 消费模型和部署模型简介

消息队列的主要作用是对系统进行异步、削峰、解耦等,在日常开发中使用非常广泛。基于市面上几款消息队列,常见有:rabbitmq, activemq, rocketmq, kafka, Pulsar等,各有侧重,技术选型需根据自身系统业务定型。但基于国内…

贪心算法day03(最长递增序列问题)

目录 1.最长递增三元子序列 2.最长连续递增序列 1.最长递增三元子序列 题目链接:. - 力扣(LeetCode) 思路:我们只需要设置两个数进行比较就好。设a为nums[0],b 为一个无穷大的数,只要有比a小的数字就赋值…

基于JDBC的书库系统(MySQL)

一、创建数据库中的表 1、需求 有一张表叫javabook【创建表要求使用sql语句进行】 表中列 bookid 整数自增类型 表中列 bprice 小数类型 表中列 bookname 字符串类型 长度不能小于50 工程和包要求: domain dao …

2024 微信支付公钥 JAVA完整代码参考

需要用到的链接: 微信支付公钥使用介绍 - 平台证书 | 微信支付商户文档中心 GitHub - wechatpay-apiv3/wechatpay-java: 微信支付 APIv3 的官方 Java Library 谨记 如果有疑问 多看几遍 wechatpay-java的readme 和 example 创建预支付 Overridepublic ResultBean&…

CondaError: Run ‘conda init‘ before ‘conda activate‘解决办法

已经执行了conda init,但是还是会报错CondaError: Run ‘conda init’ before ‘conda activate’ 原因:权限不够 解决办法:以管理员身份运行cmd,然后进入要操作的文件夹下,重新执行 conda init 和 conda activate 就可…

边缘计算与推理算力:智能时代的加速引擎

在数据量爆炸性增长的今天,边缘计算与推理算力正成为推动智能应用的关键力量。智能家居、自动驾驶、工业4.0等领域正在逐步从传统的云端计算转向边缘计算,而推理算力的加入,为边缘计算提供了更强的数据处理能力和实时决策能力。本文将探讨边缘…

【Python TensorFlow】进阶指南(续篇二)

在前面的文章中,我们详细探讨了TensorFlow在实际应用中的高级功能和技术细节。本篇将继续深入探讨一些前沿话题,包括但不限于分布式训练、混合精度训练、神经架构搜索(NAS)、模型微调以及在实际项目中的最佳实践等,帮助…

JAVA后端生成图片滑块验证码 springboot+js完整案例

前言 现在大部分网部都是图片滑块验证码,这个得要与后端联动起来才是确保接口安全性 通过我们系统在发送手机短息时都会选进行滑块验证,但是我们要保证发送短息接口的全安,具体路思如下 那么这个滑块的必须是与后端交互才能保证安全性&…

机器学习—高级优化方法

梯度下降是机器学习中广泛应用的优化算法,像线性回归和逻辑回归以及神经网络的早期实现,现在有一些其他的优化算法,为了最小化成本函数,甚至比梯度下降的效果更好,这种算法可以用来帮助训练神经网络,比梯度…

【Vue3】知识汇总,附详细定义和源码详解,后续出微信小程序项目(3)

快速跳转: 我的个人博客主页👉:Reuuse博客 新开专栏👉:Vue3专栏 参考文献👉:uniapp官网 免费图标👉:阿里巴巴矢量图标库 ❀ 感谢支持!☀ 前情提要 &#x…

模型减肥秘籍:模型压缩技术 CNN基础

这里是Datawhale的组队学习活动,主要介绍的是模型压缩技术。后续将以CNN网络为基础点,带领大家领略模型压缩的魅力。首先是回顾一下一些关于CNN的基础知识。 参考链接: 模型减肥秘籍:模型压缩技术-课程详情 | Datawhale datawh…