Zookeeper3.5.7版本——集群部署(linux环境-centos7)

news2025/1/4 18:42:56

目录

    • 一、三台服务器信息
    • 二、Zookeeper3.5.7官网下载
      • 2.1、官网下载地址
      • 2.2、下载步骤
    • 三、三台服务器都安装jdk11(Zookeeper需要jdk支持)
    • 四、Zookeeper3.5.7集群部署
      • 4.1、centos7虚拟机1 (192.168.136.27)服务器安装步骤
        • 4.1.1、解压安装(以下所有演示操作lz都使用的root用户)
        • 4.1.2、配置服务器编号
        • 4.1.3、配置zoo.cfg 文件
        • 4.1.5、在防火墙中打开要用到的端口 2181、2888、3888,如下所示:
        • 4.1.6、配置参数解读
      • 4.2、centos7虚拟机2 (192.168.136.28)服务器安装步骤
        • 4.2.1、在opt目录下创建module文件夹
        • 4.2.2、拷贝配置好的 zookeeper 到centos7虚拟机2 (192.168.136.28)服务器
        • 4.2.3、修改 myid 文件中内容
        • 4.2.4、在防火墙中打开要用到的端口 2181、2888、3888,如下所示:
      • 4.3、centos7虚拟机3 (192.168.136.29)服务器安装步骤
        • 4.3.1、在opt目录下创建module文件夹
        • 4.3.2、拷贝配置好的 zookeeper 到centos7虚拟机3(192.168.136.29)服务器
        • 4.3.3、修改 myid 文件中内容
        • 4.3.4、在防火墙中打开要用到的端口 2181、2888、3888,如下所示:
      • 4.4、集群操作
        • 4.4.1、分别启动三台服务器的 Zookeeper服务
        • 4.4.2、分别查看三台服务器的 Zookeeper服务状态
        • 4.4.3、分别停止三台服务器的 Zookeeper服务

一、三台服务器信息

  • 三台服务器
    服务器名称服务器ip
    centos7虚拟机1192.168.136.27
    centos7虚拟机2192.168.136.28
    centos7虚拟机3192.168.136.29

二、Zookeeper3.5.7官网下载

2.1、官网下载地址

  • 官网下载地址:https://zookeeper.apache.org/

2.2、下载步骤

  • 下载步骤如下所示:
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

三、三台服务器都安装jdk11(Zookeeper需要jdk支持)

  • linux环境(centos7)安装JDK11步骤图解参考此博文:https://wwwxz.blog.csdn.net/article/details/128899399

四、Zookeeper3.5.7集群部署

4.1、centos7虚拟机1 (192.168.136.27)服务器安装步骤

4.1.1、解压安装(以下所有演示操作lz都使用的root用户)

  • 上传安装包到home目录下

    [root@localhost /]# cd /home/
    [root@localhost home]# ls
    

    在这里插入图片描述

  • 在opt目录下创建module文件夹

    [root@localhost home]# mkdir /opt/module
    

    在这里插入图片描述

  • 进入home目录,解压安装包到opt/module目录下

    [root@localhost home]# tar -zxvf apache-zookeeper-3.5.7-bin.tar.gz -C /opt/module/
    

    在这里插入图片描述

  • 进入opt/module目录下,修改解压后的apache-zookeeper-3.5.7-bin名称为zookeeper-3.5.7

    [root@localhost module]# mv apache-zookeeper-3.5.7-bin/ zookeeper-3.5.7
    

    在这里插入图片描述

4.1.2、配置服务器编号

  • 在/opt/module/zookeeper-3.5.7/目录下创建zkData文件夹,如下图所示:

    [root@localhost zookeeper-3.5.7]# mkdir zkData
    

    在这里插入图片描述

  • 在/opt/module/zookeeper-3.5.7/zkData 目录下创建一个 myid 的文件,在文件中添加与 zoo.cfg配置文件中 server的编号对应,此处文件中内容为1(注意:上下不要有空行,左右不要有空格)
    注意:添加 myid 文件,一定要在 Linux 里面创建,在 notepad++里面很可能乱码。

    [root@localhost zkData]# touch myid
    [root@localhost zkData]# vi myid
    

    在这里插入图片描述
    在这里插入图片描述

4.1.3、配置zoo.cfg 文件

  • 重命名/opt/module/zookeeper-3.5.7/conf 这个目录下的 zoo_sample.cfg 为 zoo.cfg

    [root@localhost conf]# pwd
    /opt/module/zookeeper-3.5.7/conf
    [root@localhost conf]# mv zoo_sample.cfg zoo.cfg
    [root@localhost conf]#
    

    在这里插入图片描述

  • 打开 zoo.cfg 文件

    [root@localhost conf]# vim zoo.cfg
    
  • 修改dataDir的数据存储路径配置,修改如下内容:

    dataDir=/opt/module/zookeeper-3.5.7/zkData
    

    在这里插入图片描述

  • 增加如下配置

    #######################cluster##########################
    server.1=192.168.136.27:2888:3888
    server.2=192.168.136.28:2888:3888
    server.3=192.168.136.29:2888:3888
    

    在这里插入图片描述

4.1.5、在防火墙中打开要用到的端口 2181、2888、3888,如下所示:

  • 开启防火墙,开放2181、2888和3888端口,并重新关闭防火墙如下图所示。

    #查看防火墙的状态命令
    systemctl status firewalld
    #打开防火墙的状态命令
    sudo systemctl start firewalld
    #开放218128883888端口
    firewall-cmd --permanent --zone=public --add-port=2181/tcp
    firewall-cmd --permanent --zone=public --add-port=2888/tcp
    firewall-cmd --permanent --zone=public --add-port=3888/tcp
    #重新加载
    firewall-cmd --reload
    #关闭防火墙的状态命令
    sudo systemctl stop firewalld
    

    在这里插入图片描述

4.1.6、配置参数解读

  • tickTime = 2000:通信心跳时间,Zookeeper服务器与客户端心跳时间,单位毫秒
    在这里插入图片描述

  • initLimit = 10 :LF 初始通信时限
    在这里插入图片描述

  • syncLimit = 5 :LF 同步通信时限
    在这里插入图片描述

  • dataDir :保存Zookeeper中的数据。
    注意:默认的tmp目录,容易被Linux系统定期删除,所以一般不用默认的tmp目录。

  • clientPort = 2181 :客户端连接端口

  • server.A=B:C:D

    A 是一个数字,表示这个是第几号服务器;集群模式下配置一个文件 myid,这个文件在 dataDir 目录下,这个文件里面有一个数据就是 A 的值,Zookeeper 启动时读取此文件,拿到里面的数据与 zoo.cfg 里面的配置信息比较从而判断到底是哪个 server。

    B 是这个服务器的地址;

    C 是这个服务器 Follower 与集群中的 Leader 服务器交换信息的端口;

    D 是万一集群中的 Leader 服务器挂了,需要一个端口来重新进行选举,选出一个新的Leader,而这个端口就是用来执行选举时服务器相互通信的端口。

4.2、centos7虚拟机2 (192.168.136.28)服务器安装步骤

4.2.1、在opt目录下创建module文件夹

  • 在opt目录下创建module文件夹 与 centos7虚拟机1 (192.168.136.27)服务器中Zookeeper解压安装包的位置相同即可。

    [root@localhost home]# mkdir /opt/module
    

    在这里插入图片描述

4.2.2、拷贝配置好的 zookeeper 到centos7虚拟机2 (192.168.136.28)服务器

  • scp基本语法

    scp  -r   $pdir/$fname       $user@$host:$pdir/$fname
    命令  递归 要拷贝的文件路径/名称 目的地用户@主机:目的地路径/名称
    
  • 在centos7虚拟机1 (192.168.136.27)服务器上 拷贝配置好的 zookeeper 到centos7虚拟机2 (192.168.136.28)服务器

    [root@localhost /]# scp -r /opt/module/zookeeper-3.5.7/ root@192.168.136.28:/opt/module/
    

    在这里插入图片描述

4.2.3、修改 myid 文件中内容

  • 修改 myid 文件中内容为 2

    [root@localhost zkData]# pwd
    /opt/module/zookeeper-3.5.7/zkData
    [root@localhost zkData]# vi myid
    

    在这里插入图片描述在这里插入图片描述

4.2.4、在防火墙中打开要用到的端口 2181、2888、3888,如下所示:

  • 开启防火墙,开放2181、2888和3888端口,并重新关闭防火墙如下图所示。

    #查看防火墙的状态命令
    systemctl status firewalld
    #打开防火墙的状态命令
    sudo systemctl start firewalld
    #开放218128883888端口
    firewall-cmd --permanent --zone=public --add-port=2181/tcp
    firewall-cmd --permanent --zone=public --add-port=2888/tcp
    firewall-cmd --permanent --zone=public --add-port=3888/tcp
    #重新加载
    firewall-cmd --reload
    #关闭防火墙的状态命令
    sudo systemctl stop firewalld
    

    在这里插入图片描述

4.3、centos7虚拟机3 (192.168.136.29)服务器安装步骤

4.3.1、在opt目录下创建module文件夹

  • 在opt目录下创建module文件夹 与 centos7虚拟机1 (192.168.136.27)服务器中Zookeeper解压安装包的位置相同即可。

    [root@localhost home]# mkdir /opt/module
    

    在这里插入图片描述

4.3.2、拷贝配置好的 zookeeper 到centos7虚拟机3(192.168.136.29)服务器

  • scp基本语法

    scp  -r   $pdir/$fname       $user@$host:$pdir/$fname
    命令  递归 要拷贝的文件路径/名称 目的地用户@主机:目的地路径/名称
    
  • 在centos7虚拟机1 (192.168.136.27)服务器上 拷贝配置好的 zookeeper 到centos7虚拟机3(192.168.136.29)服务器

    [root@localhost /]# scp -r /opt/module/zookeeper-3.5.7/ root@192.168.136.29:/opt/module/
    

    在这里插入图片描述

4.3.3、修改 myid 文件中内容

  • 修改 myid 文件中内容为 3

    [root@localhost zkData]# pwd
    /opt/module/zookeeper-3.5.7/zkData
    [root@localhost zkData]# vi myid
    

    在这里插入图片描述

4.3.4、在防火墙中打开要用到的端口 2181、2888、3888,如下所示:

  • 开启防火墙,开放2181、2888和3888端口,并重新关闭防火墙如下图所示。

    #查看防火墙的状态命令
    systemctl status firewalld
    #打开防火墙的状态命令
    sudo systemctl start firewalld
    #开放218128883888端口
    firewall-cmd --permanent --zone=public --add-port=2181/tcp
    firewall-cmd --permanent --zone=public --add-port=2888/tcp
    firewall-cmd --permanent --zone=public --add-port=3888/tcp
    #重新加载
    firewall-cmd --reload
    #关闭防火墙的状态命令
    sudo systemctl stop firewalld
    

    在这里插入图片描述

4.4、集群操作

4.4.1、分别启动三台服务器的 Zookeeper服务

  • 启动centos7虚拟机1 (192.168.136.27)服务器 的Zookeeper服务

    [root@localhost zookeeper-3.5.7]# bin/zkServer.sh start
    

    在这里插入图片描述

  • 启动centos7虚拟机2(192.168.136.28)服务器 的Zookeeper服务

    [root@localhost zookeeper-3.5.7]# bin/zkServer.sh start
    

    在这里插入图片描述

  • 启动centos7虚拟机3(192.168.136.29)服务器 的Zookeeper服务

    [root@localhost zookeeper-3.5.7]# bin/zkServer.sh start
    

    在这里插入图片描述

4.4.2、分别查看三台服务器的 Zookeeper服务状态

  • 查看centos7虚拟机1 (192.168.136.27)服务器 的Zookeeper服务状态

    [root@localhost zookeeper-3.5.7]# bin/zkServer.sh status
    

    在这里插入图片描述

  • 查看centos7虚拟机2 (192.168.136.28)服务器 的Zookeeper服务状态

    [root@localhost zookeeper-3.5.7]# bin/zkServer.sh status
    

    在这里插入图片描述

  • 查看centos7虚拟机3 (192.168.136.29)服务器 的Zookeeper服务状态

    [root@localhost zookeeper-3.5.7]# bin/zkServer.sh status
    

    在这里插入图片描述

4.4.3、分别停止三台服务器的 Zookeeper服务

  • 停止centos7虚拟机1 (192.168.136.27)服务器 的Zookeeper服务

    [root@localhost zookeeper-3.5.7]# bin/zkServer.sh stop
    

    在这里插入图片描述

  • 停止centos7虚拟机2 (192.168.136.28)服务器 的Zookeeper服务

    [root@localhost zookeeper-3.5.7]# bin/zkServer.sh stop
    

    在这里插入图片描述

  • 停止centos7虚拟机3 (192.168.136.29)服务器 的Zookeeper服务

    [root@localhost zookeeper-3.5.7]# bin/zkServer.sh stop
    

    在这里插入图片描述

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

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

相关文章

day23_多线程基础

今日内容 上课同步视频:CuteN饕餮的个人空间_哔哩哔哩_bilibili 同步笔记沐沐霸的博客_CSDN博客-Java2301 零、 复习昨日 一、作业 二、进程与线程 三、创建线程 四、线程的API 五、线程状态 六、线程同步 零、 复习昨日 晨考 一、作业 见答案 二、进程与线程[了解] 一个进程就…

上海分时电价机制调整对储能项目的影响分析

安科瑞 耿敏花 2022年12月16日,上海市发改委发布《关于进一步完善我市分时电价机制有关事项的通知》(沪发改价管〔2022〕50号)。通知明确上海分时电价机制,一般工商业及其他两部制、大工业两部制用电夏季(7、8、9月)和冬季&#x…

MyBatis底层原理【源码运行时序图】

MyBatis初始化流程🛷 以下代码为例🎉 🎇可对应源码阅读 MyBatis初始化流程✨ #mermaid-svg-yoG1e8Dnp3UIAOUW {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-yoG1e8Dnp3UIAOU…

robotframework 常用关键字

ctrl shift 空格:自动补全关键字 F5:搜索关键字 F8:执行用例 ctrl shift s:保存整个工程 ctrl r:查看报告 ctrl 鼠标悬浮:显示关键字的信息 ctrl #:屏蔽代码 ctrl $:…

4-spring篇

ApplicationContext refresh的流程 12个步骤 prepareRefresh 这一步创建和准备了Environment对象,并赋值给了ApplicationContext的成员变量 要理解Environment对象的作用 obtainFreshBeanFactory ApplicationContext 里面有一个成员变量,Beanfactory b…

Navicat 现已支持 OceanBase 全线数据库产品

Navicat 作为 OceanBase 生态工具的合作伙伴,这是双方产品适配第三个里程碑。2022 年 7 月的首个里程碑,Navicat 实现了 OceanBase 社区版的功能性兼容。同年10 月,进一步实现了针对 OceanBase 企业版( 兼容 MySQL 模式&#xff0…

一文图解|I/O 调度层

当我们使用 read() 和 write() 系统调用向内核提交读写文件操作时,内核并不会立刻向硬盘发送 I/O 请求,而是先将 I/O 请求交给 I/O 调度层进行排序和合并处理。经过 I/O 调度层加工处理后,才会将 I/O 请求发送给块设备驱动进行最终的 I/O 操作…

【强烈建议收藏:MySQL面试必问系列之慢SQL优化专题】

一.知识回顾 学习本篇文章之前呢,我们可以先看一下【强烈建议收藏:MySQL面试必问系列之SQL语句执行专题】,看完这篇文章再来学习本篇文章可谓是如虎添翼。好的,那我们也不讲太多的废话,直接开始。 二.如何做慢SQL查询优化呢&…

《uniapp基础知识》学习笔记Day38-(Period2)全局文件一些常用的配置

如果进行开发的话,首先要配置路由页面 page.json 页面路由 pages.json 文件用来对 uni-app 进行全局配置,决定页面文件的路径、窗口样式、原生的导航栏、底部的原生tabbar 等。 {"pages": [{"path": "pages/component/index…

Centos7搭建DHCP

1.简介DHCP服务器又叫动态主机协议,由服务器划分一段地址池,客户端地址池中获取IP地址及掩码等信息端口:UDP 67/68主配置文件:/etc/dhcp/dhcpd.conf租约时间文件:/etc/sysconfig/dhcpd2.简单搭建DHCP服务PS&#xff1a…

离线数据仓库项目--技术选择

文章目录(一)技术选型1)数据采集工具2)数据存储3)数据计算4)数据可视化(二)整体架构设计(三)服务器资源规划(一)技术选型 1&#xff…

MySQL索引事务

1.索引1.1概念索引是一种特殊的文件,包含着对数据表里所有记录的引用指针。可以对表中的一列或多列创建索引,并指定索引的类型,各类索引有各自的数据结果实现。(这里只用通俗的语言和图片进行介绍)1.2作用数据库中的表…

洗地机哪个牌子好?口碑最好的洗地机

选择洗地机,最关键的当然是清洁力度啦,这就要看洗地机的吸力如何了,一般情况下,吸力越大,越能够吸附顽固污渍,清洁力度就越好。然后杀菌功能也是必不可少的,毕竟是要清洁整个家的地面卫生&#…

Android 圆弧形 SeekBar

效果预览package com.gcssloop.widget;import android.annotation.SuppressLint;import android.content.Context;import android.content.res.TypedArray;import android.graphics.Canvas;import android.graphics.Color;import android.graphics.Matrix;import android.graph…

ViT(Vision Transformer) TNT(Transformer in Transformer)

ViT(Vision Transformer) ViT的结构 ViT将输入图片分为多个patch(16x16),再将每个patch投影为固定长度的向量送入Transformer,后续encoder的操作和原始Transformer中完全相同。但是因为对图片分类,因此在输入序列中加…

论文复现-3

模型构建中的运算 数据集是CONLL03 这个数据集共有4种实体类型,所以,在做实体描述的embedding时,得到的语义表示的Tensor大小为 : 4*max_len, 具体指的是: type_input_ids: torch.LongTensor None, type_attention_m…

2023年中职组网络安全竞赛——web服务渗透测试解析

web服务渗透测试(100分) 题目如下: 解析如下: PS:任务环境可以私信博主,求个三连吧! 通过本地PC中的渗透测试平台KALI2020对靶机进行WEB渗透,找到页面内的文件上传漏洞并且尝试进行上传攻击,将文件上传成功后的页面回显字符串作为FLAG提交(如:点击超链接查看上传文…

Python自动化测试之requests库【发送json数据类型 】(六)

目录:导读 数据类型 application/json: application/x-www-form-urlencoded text/xml requests发送json 写在最后 我们都知道post请求中的body有4种数据类型,今天我们来写一篇关于requests请求json这种数据类型。 数据类型 我们都知道…

使用JSON.stringify的第三个参数,美化序列化后的值

事情是这样的,我在使用tiptap富文本编辑器,展示JSON代码,效果图肯定是这样的假设我有一个javascript对象如下const data {a: test }想要实现上面的效果,肯定需要使用JSON.stringifyconst editorData JSON.stringify(data)editor…

Linux中安装JDK8.跟学韩顺平

Linux中安装JDK8第16章Linux之JavaEE定制篇搭建JavaEE环境16.1 概述16.2安装JDK16.2.1安装步骤16.2.2测试是否安装成功第16章Linux之JavaEE定制篇搭建JavaEE环境 16.1 概述 如果需要在Linux下进行JavaEE的开发,我们需要安装如下软件 资料下载地址:百度…