【分布式系统搭建】Zookeeper完全分布式集群的搭建

2023-11-18

Zookeeper完全分布式集群的搭建

一、集群模式

1、单机模式(用于测试环境)
在zoo.cfg中只配置一个server.id就是单机模式了。

2、伪分布式(用于测试环境)
在zoo.cfg中配置多个server.id,其中ip都是当前机器,而端口各不相同,启动时就是伪集群模式了。

3、完全分布式(用于生产环境)
多台机器各自配置zoo.cfg文件,将各自互相加入服务器列表,上面搭建的集群就是这种完全分布式。

二、zookeeper完全分布式集群的搭建

搭建zookeeper集群需要最少三台机器,需要安装jdk作为基础支持。此次使用的zookeeper-3.4.14版本。

1、环境

服务器列表(此处设置了域名):
192.168.0.85    gmg_server02
192.168.0.86    gmg_server03
192.168.0.90    gmg_server04

OS版本:        Centos7.4
JDK版本:        jdk_1.8
ZK版本:         zookeeper-3.4.14安装目录:
/home/programs/jdk1.8
/home/programs/zookeeper


2、安装jdk、zookeeper 以及设置环境变量。

vi /etc/profile

# 增加以下内容:
export ZOOKEEPER_HOME=/home/programs/zookeeper
export JAVA_HOME=/home/programs/jdk1.8
export CLASSPATH=.:$JAVA_HOME/lib:$JAVA_HOME/jre/lib
export PATH=$PATH:$JAVA_HOME/bin:$JAVA_HOME/jre/bin:$ZOOKEEPER_HOME/bin

source  /etc/profile

3、搭建集群

a.集群配置

cp zoo-sample.cfg zoo.cfg

vim zoo.cfg
增加以下内容:
server.1=gmg_server04:2888:3888
server.2=gmg_server02:2888:3888
server.3=gmg_server03:2888:3888

详细配置参照:https://blog.csdn.net/shgh_2004/article/details/89281679

b) 为每台服务器唯一的myid
所在目录:dataDir=/tmp/zookeeper(这个是默认路径,可以修改)

cat "1" > myid

c) 相同的操作。在其他两台机器上。 只要修改myid的值即可。

4、启动zookeeper

#启动ZK服务: 
bin/zkServer.sh start
#停止ZK服务: 
bin/zkServer.sh stop
#重启ZK服务: 
bin/zkServer.sh restart
#查看ZK服务状态: 
bin/zkServer.sh status

Zookeeper集群需要每台挨个启动,可以是用jps命令查看线程。
启动集群的时候,集群数量启动没有超过一半,状态会有错误提示,当集群启动数量超过一半就会自动转为正常状态,并且此台使集群进入正常工作状态的服务器会成为leader角色,集群中其他服务器的角色为fllower。
Zookeeper集群模式搭建到此完成。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

【分布式系统搭建】Zookeeper完全分布式集群的搭建 的相关文章

  • 路由器重温——PPPoE配置管理-2

    四 配置设备作为PPPoE服务器 路由器的PPPoE服务器功能可以配置在物理以太网接口或 PON 接口上 xff0c 也可配置在由 ADSL 接口生成的虚拟以太网接口上 1 配置虚拟模板接口 虚拟模板接口VT和以太网接口或PON接口绑定后
  • 第15章 信息(文档)和配置管理

    文章目录 软件文档的分类 xff08 1 xff09 开发文档 xff1a 描述开发过程 本身 xff08 2 xff09 产品文档 xff1a 描述开发过程的 产物 xff08 3 xff09 管理文档 xff1a 记录项目管理的信息 文
  • apt-get

    问题 如何查看已经安装的软件 如何确定一个软件是否已经安装 目前常用的 更新本机中的数据库缓存 sudo apt get update 查找包含部分关键字的软件包 sudo apt cache search lt 你要查找的name gt
  • 如何关闭端口防止病毒与黑客入侵

    如何关闭端口防止病毒与黑客入侵 你的系统是不是1XP SP1 但是安装了2005瑞星杀毒软件后总是提示系统有 MS 4011 Exploit 和Blaster Rpc Exploit 两个漏洞 最直接的办法 把系统不用的端口都关闭掉 然后从
  • 应用软件的层次划分

    谈到应用程序的层次 我们平时所说的层次有两种 逻辑的层次 layer 和部署的层次 tier 这两种层次划分的目的是不同的 因此划分方式也有一些差异 能够为应用程序带来的好处也是不同的 逻辑层次逻辑层次 layer 划分的最重要的目的在于调
  • Postgresql顺滑升级步骤(11升级到14)

    首先下载pgsql14的源码包进行安装 yum install postgresql14 y yum install postgresql14 server y 附带安装 yum install postgresql14 libs yum
  • TreeViewer阶段性学习笔记1

    公司接到了一个新项目 需要用到Eclipse插件开发 虽然Eclipse插件开发不是什么新技术了 但对项目组的所有成员来说还是一个新课题 因为都只是用Eclipse来开发 没有人做过插件开发 新的程序员就是要随时接受技术挑战 我能 只不过是
  • Oracle 性能最大化

    配置和优化有什么不同 获得最大的性能 配置操作系统 配置Oracle Oracle 性能 调整和配置数据库对象 优化Oracle 最大化 如果你问很多Oracle DBA 你工作中最大的一部分是什么 几乎所有的回答都是 数据库的配置和优化
  • docker日志设置定期清理

    docker日志设置定期清理 1 日志的查看docker logs 具体的参数 请查看help命令 docker logs help 2 清除日志文件docker日志的存储位置 var lib docker containers lt 容器
  • 从 Twitter 运维技术经验可以学到什么

    没有一个网站的性能像 Twitter 这样这么令人牵肠挂肚 看见那条大鲸鱼总是让人感觉很无奈 Twitter 的运维专家 John Adams 在 Velocity 2009 上做了一篇题为 Fixing Twitter 的技术分享 PDF
  • 演化模型(Evolutionary Model)

    什么是演化模型 演化模型主要针对事先不能完整定义需求的软件开发 用户可以给出待开发系统的核心需求 并且当看到核心需求实现后 能够有效地提出反馈 以支持系统的最终设计和实现 软件开发人员根据用户的需求 首先开发核心系统 当该核心系统投入运行后
  • 数据控制类别(CC1和CC2)——DO-178B/ED-12B学习笔记之七

    数据控制类别 CC1和CC2 DO 178B ED 12B学习笔记之七 为了理解数据控制类别 CC1和CC2 的定义 先看DO 178B的7 3条 原文 Software life cycle data can be assigned to
  • Go项目配置管理工具---Viper

    目录 Viper概述 前言 功能 viper配置优先级 从Viper中获取值 读取配置文件 注册和使用别名 把值写入Viper 设置默认值 使用Set方法设置值 把配置信息写入配置文件 从io Reader中读取配置信息到viper 监控V
  • 项目开发总结报告(GB8567——88)(转载)

    项目开发总结报告 GB8567 88 1引言1 1编写目的说明编写这份项目开发总结报告的目的 指出预期的阅读范围 1 2背景说明 a 本项目的名称和所开发出来的软件系统的名称 b 此软件的任务提出者 开发者 用户及安装此软件的计算中心 1
  • 源代码主干分支开发四大模式

    作者 张克强 作者微博 张克强 敏捷307 1 先锋主干多稳定分支 2 守护主干多先锋分支 3 主干无分支 4 守护主干单分支 一 先锋主干多稳定分支 得到一个稳定版本后 将此稳定版本放到一个新分支上 针对此稳定版本的修修补补就在这个分支上
  • Oracle TNS简述

    什么是TNS TNS是Oracle Net的一部分 专门用来管理和配置Oracle数据库和客户端连接的一个工具 在大多数情况下客户端和数据库要通讯 必须配置TNS 当然在少数情况下 不用配置TNS也可以连接Oracle数据库 比如通过JDB
  • Linux 最全的添加开机启动方法

    添加开启启动的方式一般有如下几种 第一种 把开机命令 写入到os的启动文件之中 伴随着启动文件的读取 顺便帮你把要启动的任务 一起启动了 第二种 把启动任务 放到os的启动目录下 os启动过程之中 会执行所有放在此目录下的任务 第三种 os
  • 数据库连接池实现原理

    数据库连接池的基本原理是在内部对象池中维护一定数量的数据库连接 并对外暴露数据库连接获取和返回方法 如 外部使用者可通过getConnection 方法获取连接 使用完毕后再通过releaseConnection 方法将连接返回 注意此时连
  • 【分布式系统搭建】Zookeeper完全分布式集群的搭建

    Zookeeper完全分布式集群的搭建 一 集群模式 1 单机模式 用于测试环境 在zoo cfg中只配置一个server id就是单机模式了 2 伪分布式 用于测试环境 在zoo cfg中配置多个server id 其中ip都是当前机器
  • PowerShell基础教程(5)——如何自定义 Windows PowerShell

    PowerShell基础教程 5 如何自定义 Windows PowerShell

随机推荐

  • 每天学命令Net Properties

    get property var name property clock clock name view view name quiet 介绍一下get property命令里面的Net property属性 命令的用法参考下面链接 每天学
  • 缓存雪崩、缓存穿透、缓存预热、缓存更新、缓存降级的说明及处理策略

    缓存雪崩 缓存雪崩我们可以简单的理解为 由于原有缓存失效 新缓存未到期间所有原本应该访问缓存的请求都去查询数据库了 而对数据库 CPU 和内存造成巨大压力 严重的会造成数据库宕机 从而形成一系列连锁反应 造成整个系统崩溃 一般有三种处理办法
  • mysql之函数25

    1 函数 mysql的函数和存储过程几乎是一样的 区别是函数有且只有一个返回值 而存储过程可以有0个返回 也可以有多个返回 所以有的mysql界面操作直接将存储过程和函数合并 下面是函数的总结 主要注意一下和存储过程的区别和语法 然后再看几
  • 系统架构设计高级技能 · 通信系统架构设计理论与实践

    现在的一切都是为将来的梦想编织翅膀 让梦想在现实中展翅高飞 Now everything is for the future of dream weaving wings let the dream fly in reality 点击进入系
  • qt设置样式qss中border-image和background-image的区别

    如果你需要使用背景图片 代码中一般这么写 btnOk gt setStyleSheet QPushButton border image url Shield button bg png color white 或者 btnOk gt se
  • 如何彻底卸载360安全卫士

    问题 在网页上下载了个插件 不小心下载了捆绑软件360 用geek卸载360安全卫士后 发现程序面板和电脑管家的软件都不显示360了 但是开机还是有360启动提示 就知道根本没卸干净 主程序还在 在各个盘搜索360 也搜不到安装路径 真的离
  • CVE-2018-2894WebLogic未授权任意文件上传

    CVE 2018 2894WebLogic未授权任意文件上传 这个洞的限制就比较多了 限制版本 Oracle WebLogic Server版本 10 3 6 0 12 1 3 0 12 2 1 2 12 2 1 3 限制配置 该漏洞的影响
  • IDEA设置成白色背景

    遇到问题 对于习惯用eclipse的程序员本媛来说 真的不习惯Idea的黑色背景 看着就是别扭 解决办法 File Settings Appearance Behavior Theme换成 IntelliJ Light即可 注 IDEA默认
  • 如何通过谷歌云平台设置load balancing 和CDN

    1 创建instance templates 实例模板 首先 创建一个实例模板来启动一个在负载均衡器后面充当应用服务器的实例 在这个演示中 我们不会在实例中实际启动 Web 应用程序 相反 将 Apache HTTP Server 配置为在
  • 人工智能方向毕业设计_人工智能时代,理工科专业的毕业设计都被安排了

    我是16年上半年从软件开发转到算法工程师的 这些年AI 我亲眼见证了从 黑科技 跌入 俗学 的过程 早些年 在模式识别领域 例如人脸识别 语音识别等 大家都发力在数学算法 基于机器学习 的时候 虽然努力多年 但是因为技术缺陷精度却一直上不去
  • Oracle数据库的闪回技术

    当 Oracle 数据库发生逻辑损坏时 可以使用闪回技术简单快捷地进行数据库的恢复 闪回数据库使用闪回日志执行闪回 闪回删除使用回收站 其它所有技术都使用还原数据 并不 是所有闪回功能都会修改数据库 有些功能只是一些用来查询数据以往版本的方
  • 左程云 Java 笔记--链表

    文章目录 1哈希表 2有序表 3链表 3 1打印两个有序链表的公共部分 3 2判断一个链表是否为回文结构 3 3将单向链表按某值划分成左边小 中间相等 右边大的形式 3 4复制含有随机指针节点的链表 3 4 1使用哈希表 3 4 2方法二
  • Tachyou alluxio初识

    Tachyou是基于内存的分布式文件系统 如果把hdfs上层再弄一层Tachyou去存储数据 那么速度将会更快 Tachyou现在改名为Tachyou alluxio
  • 【数字电源】数字电源核心理论-"伏妙平衡"与"安秒平衡"

    1 聊一聊 今天跟大家分享的是迈克在本公众号的第三首歌曲 在bug菌心里迈克的歌早就不仅仅只是一首歌曲了 更是件值得一直品味的艺术品 本文开启数字电源的第一篇原创文章 数字电源核心理论 伏秒和安秒平衡 2 主题前言 在公众号简介中bug菌跟
  • 为什么要进行埋点?如何理解数据埋点

    我们在做网站运营 APP运营的时候 要关注事件级分析 比如按钮点击事件 漏斗转化率 只看PV UV是无法得到行动指导的 UV多了一点少了一点 无法能反映出来 我们流量的多与少 与用户真正的完成转化还差很多 举例 我们想看加入购物车和提交订单
  • Qt中 gui 模块和 widgets 模块的区别

    1 gui 模块提供了基本的图形系统抽象层 包括QPaintDevice QPainter等类 这些类构成了Qt的绘图基础 2 widgets 模块在 gui 模块的基础上 提供了完整的桌面级用户界面控件 如按钮 列表 滑块等 这些控件继承
  • VS最新安装教程

    1 访问Visual Studio官方网站 下载 Visual Studio Tools 免费安装 Windows Mac Linux microsoft com https visualstudio microsoft com zh ha
  • .NET 发展历程

    早期 NET NET Framework 1 0 4 8 1 时间 2002 02 2019 04 2002 年 2 月 23 日最早的 NET Framework 1 0 发布 终止于 2022 年 8 月 9 日发布的 NET Fram
  • ie11对象不支持此属性和方法 ie11的缓存问题

    更改eclipse的js代码 在ie11上调试 发现调用新更改的方法 在ie11的console输出里 一直提示 对象不支持此属性和方法 点击右上角设置图标 然后点击Internet选项 在常规选项卡里的 浏览器历史记录 点击设置 在弹出的
  • 【分布式系统搭建】Zookeeper完全分布式集群的搭建

    Zookeeper完全分布式集群的搭建 一 集群模式 1 单机模式 用于测试环境 在zoo cfg中只配置一个server id就是单机模式了 2 伪分布式 用于测试环境 在zoo cfg中配置多个server id 其中ip都是当前机器