《Linux运维总结:基于x86_64架构CPU使用docker-compose一键离线部署zookeeper 3.8.4容器版分布式集群》

news2024/9/17 7:29:29

总结:整理不易,如果对你有帮助,可否点赞关注一下?

更多详细内容请参考:《Linux运维篇:Linux系统运维指南》


一、部署背景

由于业务系统的特殊性,我们需要面对不同的客户部署业务系统,zookeeper作为重要的一环,为了更快捷有效的部署zookeeper,这里编写了基于x86_64架构一键离线docker容器版zookeeper 3.8.4集群工具。

docker版本 docker-compose版本
26.1.3 v2.29.0

二、工具介绍

一键部署工具实现功能如下:

1、支持单机部署(1 zookeeper)。
2、支持单机伪集群部署(3 zookeeper)。
3、支持多机分布式机部署(3 zookeeper)。
4、支持数据目录、端口、JVM内存。
5、支持zookeeper配置文件、数据目录持久化。
6、支持部署、启动、停止、卸载、检测等操作。


三、工具下载

基于x86_64架构CPU使用docker-compose一键离线部署zookeeper 3.8.4分布式集群工具


四、部署步骤

说明:这里就只演示,在3台主机上部署zookeeper 3.8.4集群。

1、查看帮助命令
在这里插入图片描述


2、编辑变量文件

说明:变量文件内容3台主机需相同。

[root@ecs-ed54-0001 zookeeper]# cp cluster.conf.tpl cluster.conf
[root@ecs-ed54-0001 zookeeper]# vim cluster.conf
# 建议填写为当前磁盘最大存储空间目录,如果系统盘空间最大,建议填写为/data,如果挂在盘空间最大,建议填写为挂载目录
export BASE_DIR="/data"

# zoo1主机内网IP/端口,端口不冲突情况下,建议不修改
export ZOO1_HOST="192.168.1.111"
export ZOO1_CLIENT_PORT="2181"    #对cline端提供服务
export ZOO1_PEER_PORT="2886"      #集群内机器通讯使用,Leader监听此端口
export ZOO1_ELECTION_PORT="3886"  #选举leader使用

# zoo2主机内网IP/端口,端口不冲突情况下,建议不修改
export ZOO2_HOST="192.168.1.112"
export ZOO2_CLIENT_PORT="2182"    #对cline端提供服务
export ZOO2_PEER_PORT="2887"      #集群内机器通讯使用,Leader监听此端口
export ZOO2_ELECTION_PORT="3887"  #选举leader使用

# zoo3主机内网IP/端口,端口不冲突情况下,建议不修改
export ZOO3_HOST="192.168.1.113"
export ZOO3_CLIENT_PORT="2183"    #对cline端提供服务
export ZOO3_PEER_PORT="2888"      #集群内机器通讯使用,Leader监听此端口
export ZOO3_ELECTION_PORT="3888"  #选举leader使用

# zookeeper客户端JVM的最大堆内存大小,根据实际需求修改,单位是m,只需填写数值即可
export ZK_CLIENT_HEAP=512

# zookeeper服务器JVM的最大堆内存大小,根据实际需求修改,单位是m,只需填写数值即可,ZK_SERVER_HEAP值必须远远大于ZK_CLIENT_HEAP值
export ZK_SERVER_HEAP=2048

# 数据存储目录,默认不修改
export ZOO_DATA_DIR="${BASE_DIR}/basic-data"

3、执行一键部署

1、主机节点1部署

[root@ecs-ed54-0001 zookeeper]# ./op.sh build zoo1

执行结果,如下图所示:
在这里插入图片描述

2、主机节点2部署

[root@ecs-ed54-0001 zookeeper]# ./op.sh build zoo2

执行结果,如下图所示:
在这里插入图片描述

3、主机节点3部署

[root@ecs-ed54-0001 zookeeper]# ./op.sh build zoo3

执行结果,如下图所示:
在这里插入图片描述


五、其它操作

5.1、启动

说明:分别在对应主机节点上执行。

[root@ecs-ed54-0001 zookeeper]# ./op.sh start zoo1
[root@ecs-ed54-0002 zookeeper]# ./op.sh start zoo2
[root@ecs-ed54-0003 zookeeper]# ./op.sh start zoo3

5.2、停止

说明:分别在对应主机节点上执行。

[root@ecs-ed54-0001 zookeeper]# ./op.sh stop zoo1
[root@ecs-ed54-0002 zookeeper]# ./op.sh stop zoo2
[root@ecs-ed54-0003 zookeeper]# ./op.sh stop zoo3

5.3、检查

说明:分别在对应主机节点上执行。

[root@ecs-ed54-0001 zookeeper]# ./op.sh check zoo1
[root@ecs-ed54-0002 zookeeper]# ./op.sh check zoo2
[root@ecs-ed54-0003 zookeeper]# ./op.sh check zoo3

执行结果,如下图所示:
在这里插入图片描述


5.4、卸载

说明:分别在对应主机节点上执行。

[root@ecs-ed54-0001 zookeeper]# ./op.sh clear zoo1
[root@ecs-ed54-0002 zookeeper]# ./op.sh clear zoo2
[root@ecs-ed54-0003 zookeeper]# ./op.sh clear zoo3

总结:整理不易,如果对你有帮助,可否点赞关注一下?

更多详细内容请参考:《Linux运维篇:Linux系统运维指南》

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

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

相关文章

C++客户端Qt开发——界面优化(美化登录界面)

美化登录界面 在.ui中拖入一个QFream,顶层窗口的QWidget无法设置背景图片,套上一层QFrame将背景图片设置到QFrame上即可 用布局管理器管理元素:用户名LineEdit,密码LineEdit,记住密码ComboBox,登录Button…

ubuntu2204安装elasticsearch7.17.22

下载安装 wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-7.17.22-amd64.deb wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-7.17.22-amd64.deb.sha512 shasum -a 512 -c elasticsearch-7.17.22-amd64.deb.sha512 su…

web、http协议、apache服务、nginx服务

web基本概念和常识 概念 web:为用户提供的一种在互联网上浏览信息的服务,是动态的、可交互的、跨平台的和图形化的; 为用户提供各种互联网服务,这些服务包括浏览服务以及各种交互式服务,包括聊天、购物等&#xff1…

windows下,pyrouge安装教程

1.安装perl 1.1 在命令行,检查perl是否安装 perl-v 1.2 安装perl 下载地址 Strawberry Perl for Windows - Releases 1)下载msi版本 2)双击安装包,傻瓜式安装,一路next,(可修改安装路径&am…

Matlab编程资源库(16)数值微分

一、数值差分与差商 在Matlab中,数值差分与差商是数值分析中常用的概念,尤其在求解微分方程、插值、逼近等领域有广泛应用。下面简要介绍这两个概念及其在Matlab中的实现。 数值差分 数值差分是微分运算的离散化形式,用于近似求解导数。给定…

宠物浮毛空气净化器真的有用吗?性价比高的浮毛空气净化器推荐

作为一位5年资深铲屎官,随着养猫的家庭数量不断增加,轻松撸猫虽然很快乐。然而,宠物的存在也可能引发一些问题,比如宠物的体味和脱落的毛发,这些都可能成为影响家庭健康的隐患。特别是宠物排泄物的气味,如果…

C++11中的右值引用以及移动构造等

目录 一、右值引用 1.左值引用和右值引用 2.左值引用与右值引用比较 3.右值引用使用场景和意义 1️⃣ 传返回值 2️⃣ STL中的应用 4.完美转发 模板中的&& 万能引用(引用折叠) 二、 新的类功能 1.默认成员函数 2.类成员变量初始化 3.…

【找到字符串中所有字母异位词】python刷题记录

R2-滑动窗口篇 滑动窗口哈希表 和之前那道一样 http://t.csdnimg.cn/dpIbt class Solution:def findAnagrams(self, s: str, p: str) -> List[int]:#返回字典记录了每个字符出现的次数counter1collections.Counter(p)#滑动窗口记录counter2即可ret[]num2len(s)num1len(p…

VIM基础配置

1. CTAGS配置 下载 上传虚拟机,解压,进入目录 tar -xzvf ctags-5.8.tar.gz cd ctags-5.8/编译 ./configure sudo make sudo make install查看是否安装成功 ctags --version打印如下 2. 使用Vundle 下载 git clone https://github.com/VundleVim/Vund…

如何将WordPress文章中的外链图片批量导入到本地

在使用采集软件进行内容创作时,很多文章中的图片都是远程链接,这不仅会导致前端加载速度慢,还会在微信小程序和抖音小程序中添加各种域名,造成管理上的麻烦。特别是遇到没有备案的外链,更是让人头疼。因此,…

2024下《系统架构设计师》案例简答题,刷这些就够了!

2024年软考下半年已经越来越近了,不知道今年备考架构的同学们准备得怎么样了呢? 简答题一直是架构拿分的重点区域,对于许多考生来说,也往往是最具挑战性的部分。今天我就把那些重要的案例简答题类型整理汇总给大家,希望…

C++选择题带答案

1.下列关于定义一个指向double型变量的指针,正确的是( B )。 A.int a(5);double *pda; B.double d(2.5),*pd&d; C.dou…

uniapp时间戳转时间

时间戳转时间 utils页面 function timestampToTime(time) { const date new Date(time); const year date.getFullYear(); const month String(date.getMonth() 1).padStart(2, 0); // 月份从0开始,所以要加1,并补齐0 const day String(date…

系统架构师考点--系统架构设计(下)

大家好。今天总结一下系统架构设计的最后一部分知识点。 一、软件系统的质量属性 软件系统的质量属性 软件系统的质量属性可分为开发期质量属性和运行期质量属性2个部分。 1、开发期质量属性主要指在软件开发阶段所关注的质量属性,主要包含6个方面: …

联想电脑怎么重装系统_联想电脑U盘重装win10详细图文教程

联想电脑怎么重装系统?在当今科技发展迅猛的时代,联想电脑已经成为了人们生活中不可或缺的一部分。然而,随着时间的推移,我们可能会遇到一些问题,例如系统崩溃或者需要更换操作系统。这时,使用U盘来重新安装…

57页PPT智慧水利数字孪生综合解决方案

实现“全局一盘棋”的智慧水利综合管理,关键在于整合水利大数据、数字孪生与人工智能技术,通过“一图、一库、一平台”的构建,为水利工作提供全面、科学、智能的管理和决策支持。以下是对这一目标的详细解读和实现路径: 知识星球…

C/C++进阶 (8)哈希表(STL)

个人主页:仍有未知等待探索-CSDN博客 专题分栏:C 本文着重于模拟实现哈希表,并非是哈希表的使用。 实现的哈希表的底层用的是线性探测法,并非是哈希桶。 目录 一、标准库中的哈希表 1、unordered_map 2、unordered_set 二、模…

【计算机毕设论文】基于SpringBoot线上学习平台的设计与实现

💗博主介绍:✌全平台粉丝5W,高级大厂开发程序员😃,博客之星、掘金/知乎/华为云/阿里云等平台优质作者。 【源码获取】关注并且私信我 感兴趣的可以先收藏起来,同学门有不懂的毕设选题,项目以及论文编写等相…

「数组」实现动态数组的功能(C++)

概述 动态数组,顾名思议即可变长度的数组。数组这种数据结构的实现是在栈空间或堆空间申请一段连续的可操作区域。 实现可变长度的动态数组结构,应该有以下操作:申请一段足够长的空间,如果数据的存入导致空间已满,则…

CentOS7安装最新版vim;vim自动补齐配置

想练习一会vim,结果发现敲代码没有空号自动补齐和缩进很难受,所以想配置一下。 配置vim: 可以通过 vim ~/.vimrc 来给 vim 加启动的设定(比如set nu,这样就会在每次启动的时候都加上行号。当然过程中可以在底行模式输…