OpenEuler学习笔记(十七):OpenEuler搭建Redis高可用生产环境

在这里插入图片描述

在OpenEuler上搭建Redis高可用生产环境,通常可以采用Redis Sentinel或Redis Cluster两种方式,以下分别介绍两种方式的搭建步骤:

基于Redis Sentinel的高可用环境搭建

  1. 安装Redis
    • 配置软件源:可以使用OpenEuler的默认软件源,确保源配置正确并可访问。
    • 安装Redis:使用包管理工具进行安装,在OpenEuler上一般可以使用以下命令安装:
sudo dnf install redis
  1. 配置主从节点
    • 编辑主节点配置文件:主节点的配置文件通常为/etc/redis.conf,打开该文件,进行如下配置:
bind 0.0.0.0
port 6379
daemonize yes
logfile "/var/log/redis/redis.log"
dir /var/lib/redis
- **启动主节点**:执行以下命令启动主节点:
sudo systemctl start redis
- **配置从节点**:复制主节点的配置文件到从节点,并修改配置文件中的`slaveof`参数,指定主节点的IP和端口,例如:
slaveof <主节点IP> 6379
- **启动从节点**:在从节点上执行启动命令:
sudo systemctl start redis
  1. 配置Sentinel
    • 编辑Sentinel配置文件:创建Sentinel配置文件,例如sentinel.conf,内容如下:
port 26379
daemonize yes
logfile "/var/log/redis/sentinel.log"
sentinel monitor mymaster <主节点IP> 6379 2
sentinel down-after-milliseconds mymaster 5000
sentinel failover-timeout mymaster 10000
- **启动Sentinel**:执行以下命令启动Sentinel:
redis-sentinel sentinel.conf
  1. 验证高可用
    • 检查Sentinel状态:可以使用redis-cli工具连接到Sentinel,执行SENTINEL masters命令查看主节点和从节点的状态。
    • 模拟主节点故障:在主节点上停止Redis服务,观察Sentinel是否能自动将从节点提升为主节点,并在原主节点恢复后将其设置为从节点。

基于Redis Cluster的高可用环境搭建

  1. 安装Redis:同Redis Sentinel方式中的安装步骤。
  2. 创建集群节点配置文件
    • 在每个节点上创建一个独立的配置文件,例如redis-node1.confredis-node2.conf等,以下是一个配置文件的示例:
bind 0.0.0.0
port 6379
daemonize yes
logfile "/var/log/redis/redis-node1.log"
dir /var/lib/redis
cluster-enabled yes
cluster-config-file nodes.conf
cluster-node-timeout 5000
  1. 启动集群节点
    • 分别在每个节点上执行以下命令启动Redis节点:
redis-server redis-node1.conf
redis-server redis-node2.conf
...
  1. 创建集群
    • 使用redis-cli工具创建集群,执行以下命令:
redis-cli --cluster create <节点1IP>:6379 <节点2IP>:6379 <节点3IP>:6379 <节点4IP>:6379 <节点5IP>:6379 <节点6IP>:6379 --cluster-replicas 1
- 上述命令中,`--cluster-replicas 1`表示为每个主节点创建一个从节点。
  1. 验证集群
    • 使用redis-cli工具连接到集群中的任意一个节点,执行CLUSTER INFO命令查看集群的信息,包括节点数量、主从关系等。
    • 可以通过向集群中写入和读取数据,然后模拟节点故障,观察数据是否能够在其他节点上正常读写,以及集群是否能够自动进行故障转移和数据重新分布。

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

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

相关文章

前沿课题推荐:提升水下导航精度的多源数据融合与算法研究

随着海洋探测技术的迅猛发展&#xff0c;水下地形匹配导航逐渐成为国际研究的热点领域。在全球范围内&#xff0c;水下导航技术的精确性对于科学探索、资源勘探及国防安全等方面都至关重要。我国在这一领域的研究与应用需求日益增长&#xff0c;亟需通过先进的技术手段提升水下…

[创业之路-269]:《创业讨论会》- 系统之韵:从麻雀到5G系统的共通性探索

关键词&#xff1a; 从系统的角度&#xff0c;麻雀、人体系统、企业系统、软硬件系统、软件系统、通信系统、5G系统是类似的&#xff1a; 都有&#xff1a;内在看不见的规律、外在显性各种现象 都是&#xff1a;输入、处理、输出 都是&#xff1a;静态、要素、组成、结构、组织…

【疑问】固态硬盘也是以扇区作为单位吗

回答 固态硬盘&#xff08;SSD&#xff09;与传统机械硬盘&#xff08;HDD&#xff09;在存储结构技术不一样。 理由 机械硬盘使用旋转的磁盘和磁头来读写数据&#xff0c;所以有扇区、磁道和柱面等概念 而固态硬盘则使用闪存芯片来存储数据、没有机械部件&#xff0c;固态硬盘…

浅析CDN安全策略防范

CDN&#xff08;内容分发网络&#xff09;信息安全策略是保障内容分发网络在提供高效服务的同时&#xff0c;确保数据传输安全、防止恶意攻击和保护用户隐私的重要手段。以下从多个方面详细介绍CDN的信息安全策略&#xff1a; 1. 数据加密 数据加密是CDN信息安全策略的核心之…

three.js+WebGL踩坑经验合集(6.1):负缩放,负定矩阵和行列式的关系(2D版本)

春节忙完一轮&#xff0c;总算可以继续来写博客了。希望在春节假期结束之前能多更新几篇。 这一篇会偏理论多一点。笔者本没打算在这一系列里面重点讲理论&#xff0c;所以像相机矩阵推导这种网上已经很多优质文章的内容&#xff0c;笔者就一笔带过。 然而关于负缩放&#xf…

【华为OD-E卷 - 报数游戏 100分(python、java、c++、js、c)】

【华为OD-E卷 - 报数游戏 100分&#xff08;python、java、c、js、c&#xff09;】 题目 100个人围成一圈&#xff0c;每个人有一个编码&#xff0c;编号从1开始到100。 他们从1开始依次报数&#xff0c;报到为M的人自动退出圈圈&#xff0c;然后下一个人接着从1开始报数&…

Linux抢占式内核:技术演进与源码解析

一、引言 Linux内核作为全球广泛使用的开源操作系统核心,其设计和实现一直是计算机科学领域的研究热点。从早期的非抢占式内核到2.6版本引入的抢占式内核,Linux在实时性和响应能力上取得了显著进步。本文将深入探讨Linux抢占式内核的引入背景、技术实现以及与非抢占式内核的…

HTB:Administrator[WriteUP]

目录 连接至HTB服务器并启动靶机 信息收集 使用rustscan对靶机TCP端口进行开放扫描 将靶机TCP开放端口号提取并保存 使用nmap对靶机TCP开放端口进行脚本、服务扫描 使用nmap对靶机TCP开放端口进行漏洞、系统扫描 使用nmap对靶机常用UDP端口进行开放扫描 使用nmap对靶机…

DeepSeek模型与OpenAI模型原理和技术架构的异同分析

DeepSeek模型与OpenAI模型原理和技术架构的异同分析 一、模型原理 &#xff08;一&#xff09;DeepSeek R1 DeepSeek R1的核心原理是基于强化学习&#xff08;RL&#xff09;的训练方式&#xff0c;其创新之处在于不依赖任何监督微调&#xff08;SFT&#xff09;数据&#x…

一文讲解JVM中的G1垃圾收集器

接上一篇博文&#xff0c;这篇博文讲下JVM中的G1垃圾收集器 G1在JDK1.7时引入&#xff0c;在JDK9时取代了CMS成为默认的垃圾收集器&#xff1b; G1把Java堆划分为多个大小相等的独立区域Region&#xff0c;每个区域都可以扮演新生代&#xff08;Eden和Survivor&#xff09;或老…

力扣第149场双周赛

文章目录 题目总览题目详解找到字符串中合法的相邻数字重新安排会议得到最多空余时间I3440.重新安排会议得到最多空余时间II 第149场双周赛 题目总览 找到字符串中合法的相邻数字 重新安排会议得到最多空余时间I 重新安排会议得到最多空余时间II 变成好标题的最少代价 题目…

25届 信息安全领域毕业设计选题88例:前沿课题

目录 前言 毕设选题 开题指导建议 更多精选选题 选题帮助 最后 前言 大家好,这里是海浪学长毕设专题! 大四是整个大学期间最忙碌的时光&#xff0c;一边要忙着准备考研、考公、考教资或者实习为毕业后面临的升学就业做准备,一边要为毕业设计耗费大量精力。学长给大家整理…

【Vite + Vue + Ts 项目三个 tsconfig 文件】

Vite Vue Ts 项目三个 tsconfig 文件 为什么 Vite Vue Ts 项目会有三个 tsconfig 文件&#xff1f;首先我们先了解什么是 tsconfig.json ? 为什么 Vite Vue Ts 项目会有三个 tsconfig 文件&#xff1f; 在使用 Vite 创建 vue-ts 模板的项目时&#xff0c;会发现除了 ts…

【RAG】SKLearnVectorStore 避免使用gpt4all会connection err

gpt4all 列表中包含了多个开源的大模型,如 Qwen2.5、Llama 3、DeepSeek、Mistral 等,但 不包含 OpenAI 的 GPT-4o。GPT-4o 是 OpenAI 提供的闭源模型,目前只能通过 OpenAI API 或 ChatGPT 官方应用(网页版、移动端)访问,并不支持本地运行,也没有 GGUF 量化格式的模型文件…

【算法设计与分析】实验6:n皇后问题的回溯法设计与求解

目录 一、实验目的 二、实验环境 三、实验内容 四、核心代码 五、记录与处理 六、思考与总结 七、完整报告和成果文件提取链接 一、实验目的 针对n皇后问题开展分析、建模、评价&#xff0c;算法设计与优化&#xff0c;并进行编码实践。 掌握回溯法求解问题的思想&#…

【算法】回溯算法专题① ——子集型回溯 python

目录 引入变形实战演练总结 引入 子集 https://leetcode.cn/problems/subsets/description/ 给你一个整数数组 nums &#xff0c;数组中的元素 互不相同 。返回该数组所有可能的子集&#xff08;幂集&#xff09;。 解集 不能 包含重复的子集。你可以按 任意顺序 返回解集。 …

如何为用户设置密码

[rootxxx ~]# passwd aa #交互式的为用户设置密码 或者 [rootxxx ~]# echo 123 | passwd --stdin aa #不交互式的为用户设置密码 &#xff08;适用于批量的为用户更改密码&#xff0c;比如一次性为100个用户初始化密码&#xff09;

【Vaadin flow 实战】第5讲-使用常用UI组件绘制页面元素

vaadin flow官方提供的UI组件文档地址是 https://vaadin.com/docs/latest/components这里&#xff0c;我简单实战了官方提供的一些免费的UI组件&#xff0c;使用案例如下&#xff1a; Accordion 手风琴 Accordion 手风琴效果组件 Accordion 手风琴-测试案例代码 Slf4j PageT…

深入理解Java引用传递

先看一段代码&#xff1a; public static void add(String a) {a "new";System.out.println("add: " a); // 输出内容&#xff1a;add: new}public static void main(String[] args) {String a null;add(a);System.out.println("main: " a);…

Elasticsearch的开发工具(Dev Tools)

目录 说明1. **Console**2. **Search Profiler**3. **Grok Debugger**4. **Painless Lab**总结 说明 Elasticsearch的开发工具&#xff08;Dev Tools&#xff09;在Kibana中提供了多种功能强大的工具&#xff0c;用于调试、优化和测试Elasticsearch查询和脚本。以下是关于Cons…