《Linux运维总结:ARM架构CPU基于docker-compose一离线部署consul v1.18.1集群工具》

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

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


一、部署背景

由于业务系统的特殊性,我们需要面向不通的客户安装我们的业务系统,而作为基础组件中的consul 针对不同的客户环境需要多次部署哨兵集群,作为一个运维工程师,提升工作效率也是工作中的重要一环。所以我觉得有必要针对 ARM64 CPU架构consul v1.18.1容器版哨兵集群编写自动化部署工具。


二、工具介绍

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

1、支持单实例部署
2、支持单机伪集群部署(3 server + 1 client)
3、支持多机分布式集群部署(3 server + 1 client)
4、支持数据目录、日志目录、端口参数灵活配置
5、支持创建、启动、停止、卸载等操作

说明:工具使用非常简单,只需要修改变量文件,一分钟就可以快速帮你部署consul集群。


三、工具下载

ARM架构CPU基于docker-compose一离线部署consul v1.18.1集群工具


四、工具使用

说明:单机伪集群是指在单主机部署consul集群,分布式集群是指在多个不同主机上部署consul集群。


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


2、准备一键部署工具包

说明:将一键部署工具包分别上传到consul集群主机节点上。


3、编辑变量文件

说明:以下操作分别在mongodb副本集群节点的部署工具包中修改cluster.conf文件,四个节点上cluster.conf文件内容一致。

[root@consul-server1 consul]# cp cluster.conf.tpl cluster.conf
[root@consul-server1 consul]# cat cluster.conf 
# 多机分布式集群<3 server + 1 client>
# 建议填写为当前磁盘最大存储空间目录,如果系统盘空间最大,建议填写为/data,如果挂在盘空间最大,建议填写为挂载目录
export BASE_DIR="/data"# consul数据存储根目录,默认不修改
export DATA_DIR="${BASE_DIR}/basic-data/consul-cluster"# server1节点主机内网ip地址,根据实际情况填写
export CONSUL_SERVER1_HOST="192.168.1.42"# server1节点名称,默认为主机名,根据实际情况填写
export CONSUL_SERVER1_NODE_NAME="consul-server1"# server2节点主机内网ip地址,根据实际情况填写
export CONSUL_SERVER2_HOST="192.168.1.67"# server1节点名称,默认为主机名,根据实际情况填写
export CONSUL_SERVER2_NODE_NAME="consul-server2"# server3节点主机内网ip地址,根据实际情况填写
export CONSUL_SERVER3_HOST="192.168.1.97"# server1节点名称,默认为主机名,根据实际情况填写
export CONSUL_SERVER3_NODE_NAME="consul-server3"# client节点主机内网ip地址,根据实际情况填写
export CONSUL_CLIENT_HOST="192.168.1.93"# server1节点名称,默认为主机名,根据实际情况填写
export CONSUL_CLIENT_NODE_NAME="consul-client"

4、执行部署

说明:根据cluster.conf规划,分别在consul集群节点上执行部署。

# 1、在server1节点
[root@consul-server1 consul]# ./op.sh build server1# 2、在server2节点
[root@consul-server2 consul]# ./op.sh build server2# 3、在server3节点
[root@consul-server3 consul]# ./op.sh build server3# 4、在client节点
[root@consul-client consul]# ./op.sh build client

5、检查集群状态
在这里插入图片描述


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

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

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

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

相关文章

【备战软考(嵌入式系统设计师)】09 - 嵌入式软件设计基础

嵌入式软件开发原理 嵌入式软件开发和我们传统的软件开发不一样。 就拿我们的QT开发&#xff0c;我们敲完代码之后直接编译运行exe看看效果&#xff0c;不行就改改再次编译运行&#xff0c;如果可以就打包exe文件相关的配置文件对吧&#xff0c;一套下来行云流水一气呵成。 …

Kansformer?变形金刚来自过去的新敌人

​1.前言 多层感知器(MLPs),也被称为全连接前馈神经网络,是当今深度学习模型的基础组成部分。 MLPs在机器学习中扮演着至关重要的角色,因为它们是用于近似非线性函数的默认模型,这得益于通用近似定理所保证的表达能力。然而,MLPs真的是我们能构建的最佳非线性回归器吗?尽管ML…

免费在线录屏、无需注册、免费可用、无限制

免费在线工具 https://orcc.online/ 在线录屏 https://orcc.online/recorder pdf在线免费转word文档 https://orcc.online/pdf 时间戳转换 https://orcc.online/timestamp Base64 编码解码 https://orcc.online/base64 URL 编码解码 https://orcc.online/url Hash(MD5/SHA…

5.7 线程

进程&#xff1a;解耦稳定&#xff0c;内容之间是不相关的&#xff0c;通信不便利&#xff0c;理论上进程的软硬件的切换时间以及创建开销非常大。--------》资源共享线程实现 线程的问题&#xff1a;本质就是不解耦&#xff0c;一个出问题别的就很有可能出问题&#xff0c;同…

关于获取邮件授权码

以网易邮箱为例: 第一步:登录之后点击设置 第二步:点击POP3/SMTP/IMAP 第三步:开启SMTP服务 开启哪个都可以 第四步: 扫描二维码开启服务 第五步: 使用手机扫面二维码发送短信 第六步: 得到授权码 将授权码写入配置文件

04-28 周日 FastAPI Post请求同时传递文件和普通参数

04-28 周日 FastAPI Post请求同时传递文件和普通参数 时间版本修改人描述04-28 周日V0.1宋全恒新建文档2024年5月6日14:20:05V1.0宋全恒完成文档的传递 简介 由于在重构FastBuild的时候&#xff0c;为了支持TLS是否启用&#xff0c;在接口中需要同时传递文件参数和其他参数&am…

matlab 基于拉依达检验法(3σ准则) 实现多类别多参数的批量异常样本检验 V2.0

简介 拉依达检验法&#xff08;3σ准则&#xff09;是一种统计学方法&#xff0c;用于检测数据中的异常值。这种方法基于正态分布的特性来确定数据点是否可能是异常值。以下是关于拉依达检验法&#xff08;3σ准则&#xff09;的详细介绍&#xff1a; 基本原理&#xff1a; 拉…

代码随想录第四十六天|单词拆分

题目链接&#xff1a;. - 力扣&#xff08;LeetCode&#xff09;

2.4V转3.8V/3.9V供电升压方案:为水表提供稳定电力

随着科技的不断发展&#xff0c;水表等智能设备在我们的生活中扮演着越来越重要的角色。为了让水表得以正常工作&#xff0c;稳定的电力供应是至关重要的。在这篇文章中&#xff0c;我们将探讨一种2.4V转3.8V/3.9V供电方案&#xff0c;以确保为水表提供稳定的电力。 为了实现2…

每日两题 / 138. 随机链表的复制 148. 排序链表(LeetCode热题100)

138. 随机链表的复制 - 力扣&#xff08;LeetCode&#xff09; 用哈希表记录原链表中的节点是否被复制过 遍历原链表并通过哈希表维护新链表 /* // Definition for a Node. class Node { public:int val;Node* next;Node* random;Node(int _val) {val _val;next NULL;rand…

STM32F407VET6 学习笔记1:GPIO引脚认识分类与开发板原理图

今日学习STM32F407VET6 &#xff0c;首先从基本原理图、引脚方面开始做个初步理解并整理&#xff1a; 这里使用的学习开发板是在嘉立创购买的 立创梁山派天空星&#xff0c;芯片是 STM32F407VET6 主要对这个芯片的引脚做一些归纳认识、对开发学习板原理图设计进行认识理解:最…

23 JavaScript学习:验证API

JavaScript验证API 举例&#xff1a; <input id"id1" type"number" min"100" max"300" required> <button onclick"myFunction()">验证</button><p id"demo"></p><script>f…

HarmonyOS实战开发-如何实现Web组件中网页长截图。

介绍 本案例实现了Web组件中网页长截图的方案。支持截图后展示大小浮窗预览、保存图片到相册、手势左滑关闭等功能。 效果图预览 实现思路 本解决方案通过循环滚动Web组件&#xff0c;每次滚动截取当前状态后拼接到离屏画布&#xff0c;最后一次性转为PixelMap图片并显示在全…

Arduino PlatformIO避坑记

实在受不了Arduino IDE上古时期的界面风格&#xff0c;最要命的是编译速度慢到极点&#xff0c;好在有PlatformIO。VS搭配PlatformIO&#xff0c;有微软加持&#xff0c;界面自然是妥妥的了&#xff0c;编译速度提升也肉眼可见。 至于PlatformIO的安装过程&#xff0c;网上教程…

Day 24 数据库管理及数据类型

数据库管理及数据类型 一&#xff1a;数据类型 1.数值类型 整数类型 ​ 整数类型&#xff1a;TINYINT SMALLINT MEDIUMINT INT BIGINT ​ 作用&#xff1a;用于存储用户的年龄、游戏的Level、经验值等 浮点数类型 ​ 浮点数类型&#xff1a;FLOAT DOUBLE ​ 作用&#xf…

超疏水TiO₂纳米纤维网膜的良好性能

超疏水TiO₂纳米纤维网膜是一种具有特殊性能的材料&#xff0c;它结合了TiO₂的光催化性能和超疏水表面的自清洁、防腐、防污等特性。这种材料在防水、自清洁、油水分离等领域具有广阔的应用前景。 制备超疏水TiO₂纳米纤维网膜的过程中&#xff0c;通过精确控制纺丝溶液的成分…

vue3专栏项目 -- 项目介绍以及准备工作

这是vue3TS的项目&#xff0c;是一个类似知乎的网站&#xff0c;可以展示专栏和文章的详情&#xff0c;可以登录、注册用户&#xff0c;可以创建、删除、修改文章&#xff0c;可以上传图片等等。 这个项目全部采用Composition API 编写&#xff0c;并且使用了TypeScript&#…

PyQt5中重要的概念:信号与槽

PyQt中信号与槽概念定义如下&#xff08;网络上引用的&#xff09;&#xff1a; 信号&#xff08;signal&#xff09;和槽&#xff08;slot&#xff09;是Qt的核心机制&#xff0c;也是在PyQt编程中对象之间进行通信的机制。在创建事件循环之后&#xff0c;通过建立信号和槽的…

3W 1.5KVDC 3KVDC 隔离宽范围输入,单、双输出 DC/DC 电源模块——TP2L-3W 系列

TP2L-3W系列是一款高性能、超小型的电源模块&#xff0c;宽范围2:1,4:1输入&#xff0c;输出有稳压和连续短路保护功能&#xff0c;隔离电压为1.5KVDC、3KVDC工作温度范围为–40℃到85℃。特别适合对输出电压的精度有严格要求的地方&#xff0c;外部遥控功能对您的设计又多一项…

AIGC绘画辅助网站

Midjourney风格样式 Midjourney Style Classifier | Andrei Kovalevs Midlibrary