Linux学习笔记——ZooKeeper集群安装部署

2023-11-13

5.8、ZooKeeper集群安装部署

5.8.1、简介

Zookeeper是一个分布式的、开放源码的分布式应用程序协调服务,是Hadoop和HBase的重要组件。它是一个为分布式应用提供一致性服务的软件,提供的功能包括:配置维护、域名服务、分布式同步、组服务等。

除了为Hadoop和HBase提供协调服务外,ZooKeeper也被其它许多软件采用作为其分布式状态一致性的依赖,比如Kafka,又或者一些软件项目中,也经常能见到ZooKeeper作为一致性协调服务存在。

ZooKeeper不论是大数据领域亦或是其它服务器开发领域,涉及到分布式状态一致性的场景,总有它的身影存在。

5.8.2、安装

ZooKeeper是一款分布式的集群化软件,可以在多台服务器上部署,并协同组成分布式集群一起工作。

1、首先,要确保已经完成了集群化环境前置准备环节的全部内容

若未完成,请点击集群化环境前置准备

2、【node1上操作】下载ZooKeeper安装包,并解压

# 下载
wget http://archive.apache.org/dist/zookeeper/zookeeper-3.5.9/apache-zookeeper-3.5.9-bin.tar.gz

# 确保如下目录存在,不存在就创建
mkdir -p /export/server

# 解压
tar -zxvf apache-zookeeper-3.5.9-bin.tar.gz -C /export/server

3、【node1上操作】创建软链接

ln -s /export/server/apache-zookeeper-3.5.9-bin /export/server/zookeeper

4、【node1上操作】修改配置文件

# 将/export/server/zookeeper/conf目录下的zoo_sample.cfg改为zoo.cfg
mv zoo_sample.cfg zoo.cfg

# 编辑文件
vim /export/server/zookeeper/conf/zoo.cfg

tickTime=2000
# zookeeper数据存储目录
dataDir=/export/server/zookeeper/data
clientPort=2181
initLimit=5
syncLimit=2
server.1=node1:2888:3888
server.2=node2:2888:3888
server.3=node3:2888:3888

5、【node1上操作】配置myid

# 1. 创建Zookeeper的数据目录
mkdir /export/server/zookeeper/data

# 2. 创建myid文件,并填入1
vim /export/server/zookeeper/data/myid
# 在文件内填入1即可

6、【在node2和node3上操作】,创建文件夹

mkdir -p /export/server

7、【node1上操作】将Zookeeper 复制到node2和node3

cd /export/server

scp -r apache-zookeeper-3.5.9-bin node2:`pwd`/
scp -r apache-zookeeper-3.5.9-bin node3:`pwd`/

# 或者
scp -r apache-zookeeper-3.5.9-bin node2:$PWD
scp -r apache-zookeeper-3.5.9-bin node3:$PWD

8、【在node2上操作】

# 1. 创建软链接
ln -s /export/server/apache-zookeeper-3.5.9-bin /export/server/zookeeper

# 2. 修改myid文件
vim /export/server/zookeeper/data/myid
# 修改内容为2

9、【在node3上操作】

# 1. 创建软链接
ln -s /export/server/apache-zookeeper-3.5.9-bin /export/server/zookeeper

# 2. 修改myid文件
vim /export/server/zookeeper/data/myid
# 修改内容为3

10、【在node1、node2、node3上分别执行】启动Zookeeper

# 启动命令
/export/server/zookeeper/bin/zkServer.sh start		# 启动Zookeeper

在这里插入图片描述

11、【在node1、node2、node3上分别执行】检查Zookeeper进程是否启动

jps

# 结果中找到有:QuorumPeerMain 进程即可

在这里插入图片描述

12、【node1上操作】验证Zookeeper

/export/server/zookeeper/zkCli.sh

# 进入到Zookeeper控制台中后,执行
ls /

# 如无报错即配置成功

至此,ZooKeeper安装完成。

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

Linux学习笔记——ZooKeeper集群安装部署 的相关文章

  • ssh 连接超时

    我无法在 git 中 ssh 到 github bitbucket 或 gitlab 我通常会收到以下错误消息 如何避免它 输出 ssh T email protected cdn cgi l email protection i ssh
  • 在内核代码中查找函数的最佳方法[关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 我开始浏览内核代码 遇到的一件事是如何跟踪函数调用 结构定义等 有没有一种好的方法可以快速跳转到函数定义并退出 我尝试过 Source N
  • 找不到包“gdk-pixbuf-2.0”

    我正在尝试在 Amazon Linux 发行版实例上构建 librsvg 我已经通过 yum 安装了大部分依赖项 其中一些在实例上启用的默认 yum 存储库中不可用 因此必须从头开始构建它们 我已经走了很远 但还停留在最后一点 跑步时sud
  • 有没有一种快速方法可以从 Jar/war 中删除文件,而无需提取 jar 并重新创建它?

    所以我需要从 jar war 文件中删除一个文件 我希望有类似 jar d myjar jar file I donot need txt 的内容 但现在我能看到从 Linux 命令行执行此操作的唯一方法 不使用 WinRAR Winzip
  • ALSA:snd_pcm_writei 调用时缓冲区不足

    当运行我最近从灰烬中带回来的旧程序时 我遇到了缓冲区不足的情况 该程序将原始声音文件完全加载到内存中 2100 字节长 525 帧 并准备 ALSA 进行输出 44 1khz 2 通道 有符号 16 位 if err snd pcm set
  • 使用 \r 并打印一些文本后如何清除控制台中的一行?

    对于我当前的项目 有一些代码很慢并且我无法使其更快 为了获得一些关于已完成 必须完成多少的反馈 我创建了一个进度片段 您可以在下面看到 当你看到最后一行时 sys stdout write r100 80 n I use 80覆盖最终剩余的
  • Linux 上的静态 Qt5 构建:部署时如何处理字体?

    我使用这些配置选项创建了 Qt 5 2 0 库的静态版本 Ubuntu 12 04 开源 确认许可 force pkg config 发布 静止的 前缀 home juzzlin qt5 无icu opengl桌面 无油嘴滑舌 辅助功能 n
  • 就分页分段内存而言的程序寿命

    我对 x86 Linux 机器中的分段和分页过程有一个令人困惑的概念 如果有人能澄清从开始到结束所涉及的所有步骤 我们将很高兴 x86 使用分页分段内存技术进行内存管理 任何人都可以解释一下从可执行的 elf 格式文件从硬盘加载到主内存到它
  • 从 ttyUSB0 写入和读取,无法得到响应

    我对 Linux tty 不太有经验 我的环境是带有丰富 USB 串行的 Raspbian 什么有效 stty F dev ttyUSB0 38400 cu l dev ttyUSB0 s 38400 cu to dev ttyUSB0作品
  • 尽管 if 语句,Visual Studio 仍尝试包含 Linux 标头

    我正在尝试创建一个强大的头文件 无需更改即可在 Windows 和 Linux 上进行编译 为此 我的包含内容中有一个 if 语句 如下所示 if defined WINDOWS include
  • 如何根据标签将单个 XML 文件拆分为多个

    我有一个带有标签的 XML 文件 我想像这样分割文件
  • 添加文件时运行 shell 命令

    我的 Linux 机器上有一个名为 images 的文件夹 该文件夹连接到一个网站 该网站的管理员可以向该网站添加图片 但是 当添加图片时 我想要一个命令来运行调整目录中所有图片的大小 简而言之 我想知道当新文件添加到特定位置时如何使服务器
  • 在 Mono 上运行 .Net MVC5 应用程序

    我正在 Windows 上的 Visual Studio 2013 中开发 Net 4 5 1 MVC5 应用程序 现在我想知道 是否可以在Linux Ubuntu 12 04 上运行这个应用程序 可以使用OWIN吗 Owin 可以自托管运
  • 从 Xlib 转换为 xcb

    我目前正在将我的一个应用程序从 Xlib 移植到 libxcb 但在查找有关我有时使用的 XInput2 扩展的信息时遇到了一些麻烦 libxcb 中有 XInput2 实现吗 如果是的话 在哪里可以找到文档 目前我在使用此功能时遇到问题
  • Bash - 在与当前终端分开的另一个终端中启动命令的新实例

    我有一个简单的 bash 脚本 test sh 设置如下 bin bash args if args 0 check capture then watch n 1 ls lag home user capture0 watch n 1 ls
  • 如何使用waf构建共享库?

    我想使用构建一个共享库waf http code google com p waf 因为它看起来比 GNU 自动工具更容易 更简洁 到目前为止 我实际上有几个与我开始编写的 wscript 有关的问题 VERSION 0 0 1 APPNA
  • Intel 上的 gcc 中的 _mm_pause 用法

    我参考过这个网页 https software intel com en us articles benefitting power and performance sleep loops https software intel com
  • 为什么opencv videowriter这么慢?

    你好 stackoverflow 社区 我有一个棘手的问题 我需要你的帮助来了解这里发生了什么 我的程序从视频采集卡 Blackmagic 捕获帧 到目前为止 它工作得很好 同时我用 opencv cv imshow 显示捕获的图像 它也工
  • linux下如何从文本文件中获取值

    我有一些文本格式的文件 xxx conf 我在这个文件中有一些文本 disablelog 1 当我使用 grep r disablelog oscam conf 输出是 disablelog 1 但我只需要值1 请问你有什么想法吗 一种方法
  • x86-64 AMD 上 CALL 指令的操作数生成

    以下是示例程序 objdump 的输出 080483b4

随机推荐

  • Linux搭建SVN服务器

    1 安装SVN 官网下载 http subversion apache org packages html SVN客户端 TortoiseSVN 官网下载 http tortoisesvn net downloads html yum in
  • SpringCloud——GateWay入门

    客户由发送请求由Nginx服务器已经将请求转发到一个服务器上 但是服务之前我们还需要一个网关将这些请求进一步加工处理到服务上 这一步就是GateWay GateWay 1 GateWay服务是不需要进入以下jar包
  • Java_synchronized的锁对象之对象锁和类锁

    具体知识学习与 https blog csdn net yansuoo article details 51248281 https www jianshu com p 6586d9f3b515 下面是自己的理解 代码 一 前置知识 jav
  • 设计模式-建造者模式

    建造者模式是一种创建型设计模式 它允许你创建复杂对象的不同表示 而无需直接与其构造函数参数进行交互 建造者模式将一个复杂对象的构建与其表示分离 使得同样的构建过程可以创建不同的表示 建造者模式的核心思想是将一个复杂对象的构建过程分解为多个简
  • web前端基础——第二章

    目录 十八 表格标签 1 table tr th td caption 等 2 语义化标签 thead tbody tfoot 十九 表格属性 二十 表单标签 二十一 表格表单组合 二十二 div 与 span 1 div 做一个区域划分的
  • Redis 缓存清理

    redis中 key过期后并不会马上删除 而是同时使用了 3 种策略来删除这些key 惰性清除 访问key时 如果发现key已经过期 那么会将key删除 定时清理 每次清理会依次遍历所有DB 从db随机取出20个key 如果过期就删除 如果
  • React之路由的基本操作

    文章目录 路由的基本使用 路由组件与一般组件 NavLink与封装NavLink Switch的使用 解决多级路径刷新页面样式丢失的问题 路由的严格匹配与模糊匹配 Redirect的使用 嵌套路由 实例 文件目录 public index
  • vue+element-ui el-select + el-tree下拉树形结构组件(新增多选功能且可以全选、反选、清空)

    一 最终效果 二 具体HTML代码 详情请看源码
  • STM32 CH340一键下载电路

    因为自己要做开发板 就给stm32的uart1加了个ch340一键下载电路 记录在此 开发板原理图 原理图 pcb制板图 此外还要把BOOT0通过一个10K 电阻接地 以上元器件大多数都是嘉立创基础库 不用交换料费 ch340和USB插座除
  • 【机器学习】决策树(上)——从原理到算法实现

    前言 决策树 Decision Tree 是一种基本的分类与回归方法 本文主要讨论分类决策树 决策树模型呈树形结构 在分类问题中 表示基于特征对实例进行分类的过程 它可以认为是if then规则的集合 也可以认为是定义在特征空间与类空间上的
  • 气体浓度PPM与mg/m3的换算关系

    1 换算方法之一 空气和废气检测分析方法 第四版增补版 中国环境科学出版社 空气中气体污染物浓度的表示方法 空气中污染物的浓度是以单位体积内所含污染物的质量来表示 即毫克每立方米 mg m3 和微克每立方米 ug m3 在实际工作中 往往习
  • 用vue实现编写登录注册页面

    Vue 是一个用于构建用户界面的框架 它可以帮助您实现登录注册页面的开发 下面是实现此功能的一些基本步骤 安装 Vue CLI 首先 您需要在您的计算机上安装 Vue CLI 这是 Vue 开发环境的命令行界面 创建项目 使用 Vue CL
  • L2TP基本概述

    L2TP VPN 背景 原理 应用场景 总结 背景 随着互联网的发展 越来越多的用户需要访问远程网络资源 以及保证自己的网络通信安全 而传统的网络协议并不能满足这些需求 因此出现了VPN Virtual Private Network 技术
  • 【工具使用】Modbus Slave软件使用详解

    软件介绍 Modbus Slave是一个模拟Modbus协议从机的上位机软件 主要用于模拟测试跟其他主机设备通信的过程 与之成套存在的另一个软件 Modbus Poll 则是模拟Modbus协议主机的上位机软件 该软件内部封装标准Modbu
  • linux如何查看进程

    这本阿里P8撰写的算法笔记 再次推荐给大家 身边不少朋友学完这本书最后加入大厂 Github 疯传 史上最强悍 阿里大佬 LeetCode刷题手册 开放下载了 查看进程的命令如下 ps命令 查看静态的进程统计信息 一般结合选项使用 ps a
  • 【Java】运算符

    我不去想是否能够成功 既然选择了远方 便只顾风雨兼程 汪国真 目录 1 认识运算符 1 1 认识运算符 1 2 运算符的分类 2 算术运算符 2 1 四则运算符 2 2 复合赋值运算符 2 3 自增 自减 运算符 3 关系运算符 4 逻辑运
  • innosetup安装前的准备函数InitializeSetup()

    Inno Setup 安装包 安装前执行InitializeSetup 函数 在安装时 需要在运行安装包进行安装前 做一些判定是否继续安装的工作 在Inno 的脚本里写InitializeSetup 函数即可 function Initia
  • Linux练习(显示环境变量)

    include
  • 202. 快乐数 python

    编写一个算法来判断一个数 n 是不是快乐数 快乐数 定义为 对于一个正整数 每一次将该数替换为它每个位置上的数字的平方和 然后重复这个过程直到这个数变为 1 也可能是 无限循环 但始终变不到 1 如果这个过程 结果为 1 那么这个数就是快乐
  • Linux学习笔记——ZooKeeper集群安装部署

    5 8 ZooKeeper集群安装部署 5 8 1 简介 Zookeeper是一个分布式的 开放源码的分布式应用程序协调服务 是Hadoop和HBase的重要组件 它是一个为分布式应用提供一致性服务的软件 提供的功能包括 配置维护 域名服务