12-Linux部署Zookeeper集群

Linux部署Zookeeper集群

简介

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

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

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

Zookeeper官网:https://zookeeper.apache.org/

安装

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

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

    参考文章

    11-Linux部署集群准备:http://t.csdnimg.cn/zWbnd

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

    • 下载
    wget --no-check-certificate http://archive.apache.org/dist/zookeeper/zookeeper-3.8.3/apache-zookeeper-3.8.3-bin.tar.gz
    

    image-20240228142837092

    • 创建解压目录
    # 确保如下目录存在,不存在就创建
    mkdir -p /export/server
    
    • 解压
    tar -zxvf apache-zookeeper-3.8.3-bin.tar.gz -C /export/server
    
  3. 【node1上操作】创建软链接

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

    image-20240228143800921

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

    vim /export/server/zookeeper/conf/zoo.cfg
    

    复制以下内容到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. 创建文件,并填入1
    vim /export/server/zookeeper/data/myid
    # 在文件内填入1即可
    

    image-20240228143710102

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

    mkdir -p /export/server
    
  7. 【node1上操作】将Zookeeper 复制到node2和node3

    cd /export/serverscp -r zookeeper node2:`pwd`/
    scp -r zookeeper node3:`pwd`/
    
  8. 【在node2上操作】

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

    image-20240228144218931

  9. 【在node3上操作】

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

    image-20240228144327703

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

    /export/server/zookeeper/bin/zkServer.sh start		# 启动Zookeeper
    
  11. 【在node1、node2、node3上分别执行】检查Zookeeper进程是否启动

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

    image-20240228144918189

  12. 【node1上操作】验证Zookeeper

    • 进入zookeeper的bin目录下,运行zkCli.sh
    cd /export/server/zookeeper/bin
    ./zkCli.sh
    

    image-20240228145233787

    • 进入到Zookeeper控制台中后,执行
    ls /
    # 如无报错即配置成功
    

    image-20240228145618133

至此Zookeeper安装完成

ZooKeeper的常用命令

ZooKeeper是一个分布式的协调服务,它提供了一些常用的命令来管理和操作ZooKeeper集群。以下是一些常用的ZooKeeper命令:

  1. create:创建一个新的ZooKeeper节点。 示例:create /path value
  2. get:获取指定路径下节点的值。 示例:get /path
  3. set:设置节点的值。 示例:set /path value
  4. delete:删除指定路径下的节点。 示例:delete /path
  5. ls:列出指定路径下的子节点。 示例:ls /path
  6. stat:获取指定路径下节点的详细信息。 示例:stat /path
  7. exists:检查指定路径下的节点是否存在。 示例:exists /path

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

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Neo4j aura 官方网站快速入门新手教精读-从官方教程学习知识图谱

Neo4j 官方网站快速入门新手教精读 本文旨在为Neo4j新手提供一份全面的入门指南。除了基础的文本解释,我在里面还插入了每一步骤的详细截图或者自己画的图,从官方了解知识肯定比自己乱看要权威一些,有看不懂的不要纠结了解大概意思即可&#…

Docker与虚拟机比较

在对比Docker和虚拟机前,先简单了解下虚拟化,明确Docker和虚拟机分别对应的虚拟化级别,然后对Docker和虚拟机进行比较。需要注意的是,Docker和虚拟机并没有什么可比性,而是Docker使用的容器技术和虚拟机使用的虚拟化技…

idea 多模块A模块调用了B模块的Jar包,而非本地源码

1,问题描述 对于多模块的互相调用,比如模块A,模块B,模块C, 这在本地都是可以编辑进行开发的源码, 按理说是模块A可以直接点进模块B的本地源码, 但是不知道什么原因,导致模块A点进…

Java 学习和实践笔记(26):组合(component)的含义以及与继承(extends)的关系

组合的两个作用: 1)通过将父类对象作为子类的属性 2)通过第1点的作用,实现了代码复用。 示例代码: public class TestComponent {public static void main(String[] args) {Student2 s1 new Student2("jason&…

聚观早报 | 爱奇艺2023年Q4财报;苹果将加大AI投入

聚观早报每日整理最值得关注的行业重点事件,帮助大家及时了解最新行业动态,每日读报,就读聚观365资讯简报。 整理丨Cutie 3月1日消息 爱奇艺2023年Q4财报 苹果将加大AI投入 意大利正与多家车企谈判 多家企业与百度达成合作 比亚迪宋PL…

css 面试 px,rem,em 区别

一、px是决定单位&#xff0c;一旦设置了就无法因为适应页面大小而改变。 二、em和rem 是相对长度单位&#xff0c; 相对于px更具有灵活性&#xff0c;更适用于响应式布局。 三、em是相对于其父元素来设置字体大小的&#xff0c;一般都是以<body>的“font-size”为基准…

MATLAB练习题:排队论问题的模拟

​讲解视频&#xff1a;可以在bilibili搜索《MATLAB教程新手入门篇——数学建模清风主讲》。​ MATLAB教程新手入门篇&#xff08;数学建模清风主讲&#xff0c;适合零基础同学观看&#xff09;_哔哩哔哩_bilibili 下面我们来看一道排队论的题目。假设某银行工作时间内只有一个…

微信小程序 ---- 慕尚花坊 商品管理

商品管理 01. 配置商品管理分包 思路分析&#xff1a; 随着项目功能的增加&#xff0c;项目体积也随着增大&#xff0c;从而影响小程序的加载速度&#xff0c;影响用户的体验。 因此我们需要将 商品列表 和 商品详情 功能配置成一个分包&#xff0c; 当用户在访问设置页面…

labview数组精讲

题主经过写文章一段时间的发现,许多同学对该软件的理解和编程能力是不太一样的,有些知识相对一些同学较为简单,但是有些同学提问就比较困难。那么针对这个问题,题主打算出一期说白话系列的专栏,在该栏目中用最通俗的大白话和例子去让大家深刻了解这个软件的功能和摸透他的…

pikachu之特殊注入之搜索型注入、xx型注入、insert/update注入、delete注入、宽字节注入

一步一脚印&#xff01;&#xff01;&#xff01; 补充&#xff1a;此处为什么不写http请求头注入&#xff0c;因为该注入类型只是换了注入点&#xff0c;语句其他根本没有什么变化 1.搜索型 先尝试输入常用payload&#xff1a; 1 or 11 #。 已经有回显 我们在查看提示 我们…

SpringBoot+Vue+MySQL:装修管理新架构探索

✍✍计算机毕业编程指导师 ⭐⭐个人介绍&#xff1a;自己非常喜欢研究技术问题&#xff01;专业做Java、Python、微信小程序、安卓、大数据、爬虫、Golang、大屏等实战项目。 ⛽⛽实战项目&#xff1a;有源码或者技术上的问题欢迎在评论区一起讨论交流&#xff01; ⚡⚡ Java、…

Educational Codeforces Round 132 (Rated for Div. 2) E. XOR Tree(启发式合并+贪心)

题目 n(n<2e5)个点的树&#xff0c;点i权值ai&#xff08;1<ai<2^30&#xff09; 修改最少的点的权值&#xff0c;使得树上不存在异或和为0的简单路径&#xff0c;输出最少的点数 权值可以被修改成任意正整数&#xff08;可以是无限大&#xff09; 思路来源 官方…