《Linux运维总结:基于ARM64+X86_64架构CPU使用docker-compose一键离线部署redis 6.2.14容器版哨兵集群》

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

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


一、部署背景

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

CPU架构 docker版本 docker-compose版本
X86_64 26.1.3 v2.29.0
ARM64 26.1.3 v2.29.0

二、工具介绍

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

1、支持ARM64、X86_64架构CPU
2、支持单实例部署
3、支持单机伪分片集群部署(1个master+1个slave+1个sentinel)
4、支持多机分布式分片集群部署(1个master+1个slave+1个sentinel)
5、支持数据目录、日志目录、端口、密码等参数灵活配置
6、支持数据文件、日志文件、配置文件持久化
7、支持创建、启动、停止、检查、卸载等操作
8、支持一键连接操作

如下图所示:
在这里插入图片描述

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


三、工具下载

基于X86-64+ARM64架构CPU使用docker-compose一键离线部署redis 6.2.14容器版哨兵集群工具


四、部署步骤

说明:单机伪集群是指在单主机部署redis哨兵集群,分布式集群是指在多个不同主机上部署redis哨兵集群,这里部署的是多机分布式哨兵集群。


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


2、部署规划

说明:这里使用3台服务器部署哨兵集群。

宿主机IP 操作系统 内核版本 节点说明
192.168.1.111 Ubuntu 22.04.2 LTS 5.15.0-113-generic master节点
192.168.1.112 Ubuntu 22.04.2 LTS 5.15.0-113-generic slave节点
192.168.1.113 Ubuntu 22.04.2 LTS 5.15.0-113-generic sentinel节点

3、准备一键部署工具包

说明:将一键部署工具包分别上传到redis哨兵集群所有节点上。


4、编辑变量文件

说明:以下操作分别在redis哨兵集群节点的部署工具包中修改cluster.conf文件, 三个节点上cluster.conf文件内容一致

root@localhost:/opt/redis-sentinel# cp cluster.conf.tpl cluster.conf
root@localhost:/opt/redis-sentinel# cat  cluster.conf
# 建议填写为当前磁盘最大存储空间目录,如果系统盘空间最大,建议填写为/data,如果挂在盘空间最大,建议填写为挂载目录
export BASE_DIR="/data"

# cpu架构,可选值为<x86_64和aarch64>,根据实际情况修改
export CPU_PLATFROM="x86_64"

# redis版本,默认不修改
export REDIS_VERSION="6.2.14"

# redis哨兵集群之master节点内网ip地址及映射宿主机端口,根据实际情况填写,端口不冲突情况下,建议不修改
export REDIS_MASTER_HOST="192.168.1.111"
export REDIS_MASTER_PORT="7001"

# redis哨兵集群之slave1节点内网ip地址及映射宿主机端口,根据实际情况填写,端口不冲突情况下,建议不修改
export REDIS_SLAVE_HOST="192.168.1.112"
export REDIS_SLAVE_PORT="7002"

# redis哨兵集群之sentinel节点内网ip地址及映射宿主机端口,根据实际情况填写,端口不冲突情况下,建议不修改
export REDIS_SENTINEL_HOST="192.168.1.113"
export REDIS_SENTINEL_PORT="7003"

# redis哨兵集群密码,根据实际情况填写
export REDIS_PASSWORD="2BnAgF51sQypWZYU"

# 数据存放目录,一般为服务器上存储空间最大分区,默认不修改
export REDIS_DATA_DIR="${BASE_DIR}/basic-data/redis-sentinel"

5、执行部署

说明:部署顺序必须为:master节点 > slave节点 > sentinel节点


a、部署master节点(192.168.1.111)

root@localhost:/opt/redis-sentinel# ./op.sh build master

a、部署slave节点(192.168.1.112)

root@localhost:/opt/redis-sentinel# ./op.sh build slave

a、部署sentinel节点(192.168.1.113)

root@localhost:/opt/redis-sentinel# ./op.sh build sentinel

五、其它操作

5.1、启动

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

root@localhost:/opt/redis-sentinel# ./op.sh start master
root@localhost:/opt/redis-sentinel# ./op.sh start slave
root@localhost:/opt/redis-sentinel# ./op.sh start sentinel

5.2、停止

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

root@localhost:/opt/redis-sentinel# ./op.sh stop master
root@localhost:/opt/redis-sentinel# ./op.sh stop slave
root@localhost:/opt/redis-sentinel# ./op.sh stop sentinel

5.3、检查

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

root@localhost:/opt/redis-sentinel# ./op.sh check master
root@localhost:/opt/redis-sentinel# ./op.sh check slave
root@localhost:/opt/redis-sentinel# ./op.sh check sentinel

5.4、卸载

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

root@localhost:/opt/redis-sentinel# ./op.sh clear master
root@localhost:/opt/redis-sentinel# ./op.sh clear slave
root@localhost:/opt/redis-sentinel# ./op.sh clear sentinel

5.5、连接

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

root@localhost:/opt/redis-sentinel# cd tools/
root@localhost:/opt/redis-sentinel/tools# ./auto_connect.sh connect master

root@localhost:/opt/redis-sentinel# cd tools/
root@localhost:/opt/redis-sentinel/tools# ./auto_connect.sh connect slave

root@localhost:/opt/redis-sentinel# cd tools/
root@localhost:/opt/redis-sentinel/tools# ./auto_connect.sh connect sentinel

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

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

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

【计算机网络 - 基础问题】每日 3 题(五十九)

✍个人博客&#xff1a;https://blog.csdn.net/Newin2020?typeblog &#x1f4e3;专栏地址&#xff1a;http://t.csdnimg.cn/fYaBd &#x1f4da;专栏简介&#xff1a;在这个专栏中&#xff0c;我将会分享 C 面试中常见的面试题给大家~ ❤️如果有收获的话&#xff0c;欢迎点赞…

Dolphins 简介——一种新颖的多模态语言模型

背景问题 现在的自动驾驶系统在处理复杂的多变的现实驾驶场景时&#xff0c;往往缺乏人类驾驶员的全面理解&#xff0c;及时学习和适应能力以及错误纠正能力&#xff0c;为了实现能够像人类一样理解和响应复杂现实世界场景的完全自主车辆(AV)一直是一个重要目标。Dolphins 是一…

LabVIEW汽车状态监测系统

LabVIEW汽车状态监测系统通过模拟车辆运行状态&#xff0c;有效地辅助工程师进行故障预测和维护计划优化&#xff0c;从而提高汽车的可靠性和安全性。 项目背景&#xff1a; 现代汽车工业面临着日益增长的安全要求和客户对于车辆性能的高期望。汽车状态监测系统旨在实时监控汽…

面试经典 150 题.P26. 删除有序数组中的重复项(003)

本题来自&#xff1a;力扣-面试经典 150 题 面试经典 150 题 - 学习计划 - 力扣&#xff08;LeetCode&#xff09;全球极客挚爱的技术成长平台https://leetcode.cn/studyplan/top-interview-150/ 题解&#xff1a; class Solution {public int removeDuplicates(int[] nums) …

FPGA时序分析和约束学习笔记(3、Timequest时序路径详解和优化)

FPGA时序分析和约束学习笔记&#xff08;3、Timequest时序路径详解和优化&#xff09; Timequest中Data Path分析 Data Arrival Path clock path&#xff1a;时钟信号到达源寄存器时钟端口的时间 data path&#xff1a;数据从源寄存器Q端口出发到达目标寄存器D端口的时间 D…

浮动+flex布局

一.浮动 1.介绍 2.效果 <style> .one{ width: 100px; height: 100px; background-color: red; float: left; } .two{ width: 200px; height: 200px; background-color: blue; float: right; } </style> </head> <body> <div class"one&quo…

yandex企业邮箱:烽火域名邮箱有哪些优势?

yandex企业邮箱申请教程&#xff1f;如何用yandex免费域名邮箱&#xff1f; yandex企业邮箱作为一款备受推崇的企业邮箱服务&#xff0c;凭借其独特的优势&#xff0c;成为了众多企业的首选。烽火将深入探讨yandex企业邮箱的优势&#xff0c;特别是与烽火域名邮箱相比&#xf…

Python CGI编程-上传和下载文件file

文件上传&#xff1a;form表单需要设置enctype属性为 multipart/form-data&#xff0c;请求的网址是&#xff1a;http://localhost/post.html点击上传&#xff0c;页面跳转到&#xff1a;http://localhost/cgi-bin/hello.py上传的文件存在了/temp路径下文件下载&#xff0c;文件…

NVR小程序接入平台/设备EasyNVR多个NVR同时管理视频监控新选择

在数字化转型的浪潮中&#xff0c;视频监控作为安防领域的核心组成部分&#xff0c;正经历着前所未有的技术革新。随着技术的不断进步和应用场景的不断拓展&#xff0c;视频监控系统的兼容性、稳定性以及安全性成为了用户关注的焦点。NVR小程序接入平台/设备EasyNVR&#xff0c…

优质网站建设公司哪家好?2024网站建设公司推荐

选择一个好的优质网站建设公司可以从以下几点考虑—— 1、价位 选择网站建设公司首先是看网站建设公司的报价预算&#xff0c;就像你买衣服一样&#xff0c;虽然都是一模一样的&#xff0c;但是质量还是会有一定的差距的毕竟一分钱一分货。不过根据不同的公司肯定会有不一样的…

C++初阶(七)--类和对象(4)

目录 ​编辑 一、再谈构造函数 1.构造函数体赋值 2.初始化列表 二、类型转换 1.隐式类型转换 2.explicit关键字 3.类类型之间的对象隐式转换 三、static成员函数 1.概念 2.特性 3.面试题&#xff1a; 四、友元函数 1.基本介绍 2.回顾&#xff1a; 3.友元类&am…

【机器学习】音乐与AI的交响:机器学习在音乐产业中的应用

&#x1f4dd;个人主页&#x1f339;&#xff1a;Eternity._ &#x1f339;&#x1f339;期待您的关注 &#x1f339;&#x1f339; ❀目录 &#x1f50d;1. 引言&#x1f4d2;2. 机器学习在音乐创作中的革新&#x1f341;AI作曲家的诞生与作品展示&#x1f342;机器学习在音乐…

基于安卓Android的健康饮食系统APP(源码+文档+部署+讲解)

&#xff01;&#xff01;&#xff01;&#xff01;&#xff01;&#xff01;&#xff01;&#xff01;&#xff01; 会持续一直更新下去 有问必答 一键收藏关注不迷路 源码获取&#xff1a;https://pan.baidu.com/s/1aRpOv3f2sdtVYOogQjb8jg?pwdjf1d 提取码: jf1d &#…

docker基础篇(尚硅谷)

学习链接 docker1️⃣基础篇&#xff08;零基小白&#xff09; - 语雀文档 (即本篇) Docker与微服务实战&#xff08;基础篇&#xff09; Docker与微服务实战&#xff08;高级篇&#xff09;- 【上】 Docker与微服务实战&#xff08;高级篇&#xff09;- 【下】 文章目录 学习…

iQOO手机怎样将屏幕投射到MacBook?可以同步音频吗?

众所周知&#xff0c;苹果品牌的设备自己有AirPlay的投屏功能&#xff0c;iPhone要投屏到MacBook只要连接同一网络&#xff0c;然后开启AirPlay就可以投屏。但其他品牌的手机没有AirPlay&#xff0c;怎么将手机屏幕投射到MacBook呢&#xff1f; 安卓系统的手机可以使用无线投屏…

【C++】踏上C++学习之旅(四):细说“内联函数“的那些事

文章目录 前言1. "内联函数"被创造出来的意义2. 内联函数的概念2.1 内联函数在代码中的体现2.2 普通函数和内联函数的汇编代码 3. 内联函数的特性&#xff08;重点&#xff09;4. 总结 前言 本章来聊一聊C的创作者"本贾尼"大佬&#xff0c;为什么要创作出…

未上架APP开通微信商户支付服务的步骤指南

在移动互联网时代&#xff0c;APP作为连接用户与服务的桥梁&#xff0c;其支付功能的完善与否直接关系到用户体验和商家的收益。对于尚未上架的APP而言&#xff0c;提前开通微信商户支付服务&#xff0c;能够为其后续的推广和运营打下坚实基础。本文将详细介绍如何为未上架的AP…

【分布式知识】分布式对象存储组件-Minio

文章目录 什么是minio核心特点&#xff1a;使用场景&#xff1a;开发者工具&#xff1a;社区和支持&#xff1a; 核心概念什么是对象存储&#xff1f;MinIO 如何确定对对象的访问权限&#xff1f;我可以在存储桶内按文件夹结构组织对象吗&#xff1f;如何备份和恢复 MinIO 上的…

《ToDesk 云电脑、易腾云、青椒云移动端体验实测:让手机秒变超级电脑》

前言 科技发展到如今2024年&#xff0c;可以说每一年都在发生翻天覆地的变化。云电脑这个市场近年来迅速发展&#xff0c;无需购买和维护额外的硬件就可以体验到电脑端顶配的性能和体验&#xff0c;并且移动端也可以带来非凡体验。我们在外出办公随身没有携带电脑情况下&#x…

R语言机器学习算法实战系列(十四): CatBoost分类算法+SHAP值 (categorical data gradient boosting)

禁止商业或二改转载,仅供自学使用,侵权必究,如需截取部分内容请后台联系作者! 文章目录 介绍CatBoost的原理CatBoost的步骤教程下载数据加载R包导入数据数据预处理数据描述数据切割设置数据对象调节参数训练模型预测测试数据评估模型模型准确性混淆矩阵模型评估指标ROC Curv…