Redis高阶之容错切换
当一台主机master宕掉之后,他的从机会取代主机么?
查看集群状态
127.0.0.1:6385> cluster nodes
c8ff33e8da5fd8ef821c65974dda304d2e3327f9 192.168.58.129:6382@16382 slave f6b1fd5e58df90782f602b484c2011d52fc3482d 0 1733220836918 1 connected
6656947825a5aed22e4ce1818c1e743739219374 192.168.58.212:6386@16386 slave 437c0ffe1015fc8c7049cfeb0af05fee17e4b0a1 0 1733220835000 5 connected
73b5567a02ee9f958f00324bf25bee5ce8eb23bc 192.168.58.130:6384@16384 slave e1dafb251016aeaa59edf64c4f7bb3d4639f560a 0 1733220834890 3 connected
f6b1fd5e58df90782f602b484c2011d52fc3482d 192.168.58.212:6385@16385 myself,master - 0 0 1 connected 0-5460
437c0ffe1015fc8c7049cfeb0af05fee17e4b0a1 192.168.58.130:6383@16383 master - 0 1733220835395 5 connected 10923-16383
e1dafb251016aeaa59edf64c4f7bb3d4639f560a 192.168.58.129:6381@16381 master - 0 1733220836410 3 connected 5461-10922
停掉主机6385
127.0.0.1:6385> SHUTDOWN(10.02s)
not connected>
not connected>
not connected>
not connected>
使用redis-cli命令进入redis再次查看集群状态
127.0.0.1:6382> info replication
# Replication
role:master
connected_slaves:0
master_failover_state:no-failover
master_replid:f292ca63e04db6e7717cc5067f408bf733963bb2
master_replid2:6ab6cdfeb1902aaa71279434c6b2c0e46d28a7f4
master_repl_offset:0
second_repl_offset:1
repl_backlog_active:0
repl_backlog_size:1048576
repl_backlog_first_byte_offset:0
repl_backlog_histlen:0
127.0.0.1:6382> cluster nodes
437c0ffe1015fc8c7049cfeb0af05fee17e4b0a1 192.168.58.130:6383@16383 master - 0 1733221855390 5 connected 10923-16383
f6b1fd5e58df90782f602b484c2011d52fc3482d 192.168.58.212:6385@16385 master,fail - 1733221087102 1733221084545 1 disconnected
6656947825a5aed22e4ce1818c1e743739219374 192.168.58.212:6386@16386 slave 437c0ffe1015fc8c7049cfeb0af05fee17e4b0a1 0 1733221854869 5 connected
73b5567a02ee9f958f00324bf25bee5ce8eb23bc 192.168.58.130:6384@16384 slave e1dafb251016aeaa59edf64c4f7bb3d4639f560a 0 1733221853318 3 connected
e1dafb251016aeaa59edf64c4f7bb3d4639f560a 192.168.58.129:6381@16381 master - 0 1733221855000 3 connected 5461-10922
c8ff33e8da5fd8ef821c65974dda304d2e3327f9 192.168.58.129:6382@16382 myself,master - 0 1733221854000 7 connected 0-5460
6382成功上位成为主机
那么6385原主机恢复之后,是否会重新上位?
不会!
当前的集群状态:
127.0.0.1:6382> cluster nodes
437c0ffe1015fc8c7049cfeb0af05fee17e4b0a1 192.168.58.130:6383@16383 master - 0 1733221855390 5 connected 10923-16383
f6b1fd5e58df90782f602b484c2011d52fc3482d 192.168.58.212:6385@16385 master,fail - 1733221087102 1733221084545 1 disconnected
6656947825a5aed22e4ce1818c1e743739219374 192.168.58.212:6386@16386 slave 437c0ffe1015fc8c7049cfeb0af05fee17e4b0a1 0 1733221854869 5 connected
73b5567a02ee9f958f00324bf25bee5ce8eb23bc 192.168.58.130:6384@16384 slave e1dafb251016aeaa59edf64c4f7bb3d4639f560a 0 1733221853318 3 connected
e1dafb251016aeaa59edf64c4f7bb3d4639f560a 192.168.58.129:6381@16381 master - 0 1733221855000 3 connected 5461-10922
c8ff33e8da5fd8ef821c65974dda304d2e3327f9 192.168.58.129:6382@16382 myself,master - 0 1733221854000 7 connected 0-5460
重新指定6385配置文件启动服务:
127.0.0.1:6385> cluster nodes
0a820807a70885c1d87d141824d3869dcf2418ee 192.168.58.130:6383@16383 master - 0 1733300452328 3 connected 5461-10922
91cf395e8f04a5df1aeec4602dd38b3e4a708d55 192.168.58.130:6384@16384 slave ba40235fdad71fb36c3bf165ea51055825d453c2 0 1733300451285 1 connected
be191621d4aa881d864a113c385d58b751753392 192.168.58.212:6385@16385 myself,slave fedf4b13be2122f44dde749a08c4b943582b3566 0 0 7 connected
30e5bdec200a671e4de666551d4489f0035235ba 192.168.58.212:6386@16386 slave 0a820807a70885c1d87d141824d3869dcf2418ee 0 1733300452892 3 connected
ba40235fdad71fb36c3bf165ea51055825d453c2 192.168.58.129:6381@16381 master - 0 1733300453572 1 connected 0-5460
fedf4b13be2122f44dde749a08c4b943582b3566 192.168.58.129:6382@16382 master - 0 1733300452659 7 connected 10923-16383
节点主从调整
当前集群状态6385为从,6382为主
127.0.0.1:6385> cluster nodes
0a820807a70885c1d87d141824d3869dcf2418ee 192.168.58.130:6383@16383 master - 0 1733301081028 3 connected 5461-10922
91cf395e8f04a5df1aeec4602dd38b3e4a708d55 192.168.58.130:6384@16384 slave ba40235fdad71fb36c3bf165ea51055825d453c2 0 1733301082183 1 connected
be191621d4aa881d864a113c385d58b751753392 192.168.58.212:6385@16385 myself,slave fedf4b13be2122f44dde749a08c4b943582b3566 0 0 7 connected
30e5bdec200a671e4de666551d4489f0035235ba 192.168.58.212:6386@16386 slave 0a820807a70885c1d87d141824d3869dcf2418ee 0 1733301082954 3 connected
ba40235fdad71fb36c3bf165ea51055825d453c2 192.168.58.129:6381@16381 master - 0 1733301082057 1 connected 0-5460
fedf4b13be2122f44dde749a08c4b943582b3566 192.168.58.129:6382@16382 master - 0 1733301081260 7 connected 10923-16383
执行命令cluster favlover ,主从节点调整,6385为主,6382为从
127.0.0.1:6385> cluster nodes
0a820807a70885c1d87d141824d3869dcf2418ee 192.168.58.130:6383@16383 master - 0 1733301262000 3 connected 5461-10922
91cf395e8f04a5df1aeec4602dd38b3e4a708d55 192.168.58.130:6384@16384 slave ba40235fdad71fb36c3bf165ea51055825d453c2 0 1733301261585 1 connected
be191621d4aa881d864a113c385d58b751753392 192.168.58.212:6385@16385 myself,master - 0 0 8 connected 10923-16383
30e5bdec200a671e4de666551d4489f0035235ba 192.168.58.212:6386@16386 slave 0a820807a70885c1d87d141824d3869dcf2418ee 0 1733301262869 3 connected
ba40235fdad71fb36c3bf165ea51055825d453c2 192.168.58.129:6381@16381 master - 0 1733301263074 1 connected 0-5460
fedf4b13be2122f44dde749a08c4b943582b3566 192.168.58.129:6382@16382 slave be191621d4aa881d864a113c385d58b751753392 0 1733301261700 8 connected
命令补充
当主节点宕掉之后,从节点没有上位成为主机使用如下命令强制提升为主机
redis-cli -p 6382 cluster failover force
从 6382 节点执行重新加入集群命令
redis-cli -a 111111 -p 6382 cluster meet 192.168.58.212 6385
相关文章:
Redis高阶之容错切换
当一台主机master宕掉之后,他的从机会取代主机么? 查看集群状态 127.0.0.1:6385> cluster nodes c8ff33e8da5fd8ef821c65974dda304d2e3327f9 192.168.58.129:638216382 slave f6b1fd5e58df90782f602b484c2011d52fc3482d 0 1733220836918 1 connecte…...
蓝桥杯准备训练(lesson2 ,c++)
3.1 字符型 char //character的缩写在键盘上可以敲出各种字符,如: a , q , , # 等,这些符号都被称为字符,字符是⽤单引号括 起来的,如: ‘a’ , ‘b’ &…...
【力扣】2094.找出3为偶数
思路 方法一:使用Set集合 1.首先是三层for循环,遍历,并且遇到不满足的情况,便跳过,继续计算。不如前导为0,以及遍历同一个数组下标的情况 2.使用Set集合来确保答案是唯一的,使用桶来标记也是可以的 3.但是…...
利用红黑树封装map,和set,实现主要功能
如果不知道红黑树是什么的时候可以去看看这个红黑树 思路 首先我们可以把封装分为两个层面理解,上层代码就是set,和map,底层就是红黑树 就相当于根据红黑树上面套了两个map,set的壳子,像下面这张图一样 对于map和set,map里面存…...
网络(TCP)
目录 TCP socket API 详解 套接字有哪些类型?socket有哪些类型? 图解TCP四次握手断开连接 图解TCP数据报结构以及三次握手(非常详细) socket缓冲区以及阻塞模式详解 再谈UDP和TCP bind(): 我们的程序中对myaddr参数是这样…...
CSS 选择器的优先级
一、基本概念 CSS 选择器的优先级决定了在样式冲突时,哪个样式规则将被应用到 HTML 元素上。通过理解 CSS 选择器的优先级,可以更好地控制网页元素的样式,避免样式冲突。 二、优先级计算规则 1. 内联样式 内联样式具有最高的优先级。 &l…...
留学生数学辅导作业随机过程高等线性代数概率论微积分优化统计
针对留学生数学辅导作业中的随机过程、高等线性代数、概率论、微积分、优化以及统计等科目,以下是一些详细的辅导建议和资源概述: 一、随机过程 概念理解: 随机过程是研究随机现象随时间演变的数学分支。它涉及概率论和数理统计的知识&#…...
移动机器人课程建图实验-ROSbug汇总
问题1描述 $ rosrun robot_state_publisher robot_state_publisher [ERROR] [1733131886.474757207]: [registerPublisher] Failed to contact master at [localhost:11311]. Retrying...解决方案 这个错误信息表明 robot_state_publisher 节点无法联系到 ROS master。通常&…...
小家电出海,沃丰科技助力保障售后服务的及时性与高效性
随着全球化步伐的加快,小家电行业也逐渐迈向国际市场,面向全球消费者提供服务。然而,跨国界的销售和服务挑战也随之而来,尤其是售后服务的及时性与高效性成为了企业亟需解决的问题。沃丰科技凭借其全渠道在线客服、工单系统和视频…...
vscode 如何支持点击跳转函数,以C++为例,Python等其它编程语言同理,Visual Studio Code。
VScode(Visual Studio Code)按住Ctrl鼠标左键,没法跳转到对应的函数怎么办。 如下图所示 1、点击有四个小方块的图标 2、输入C(如果你的编程语言是C,其它的就输其它的) 3、找到C Extension(其它编程语言࿰…...
创建子类对象时,会创建父类对象吗
一、查询网上的结论: 创建子类对象时, 会先调用子类构造方法对子类对象进行初始化,子类构造方法的第一行又会调用父类构造方法对父类进行初始化(不会创建父类对象, 但是会在子类对象的内存空间中开辟一块被包含的内存空间存储父类…...
华为、华三交换机纯Web下如何创关键VLANIF、操作STP参数
华为交换机WEB操作 使用的是真机S5735,目前主流的版本都适用(V1R5~V2R1的就不在列了,版本太老了,界面完全不一样,这里调试线接的console口,电脑的网络接在ETH口) 「模拟器、工具合集」复制整段内…...
MongoDB分片集群架构实战
分片集群架构 分片简介 分片(shard)是指在将数据进行水平切分之后,将其存储到多个不同的服务器节点上的一种扩展方式。分片在概念上非常类似于应用开发中的“水平分表”。不同的点在于,MongoDB本身就自带了分片管理的能力&#…...
架构 | 调优 - [zookeeper]
INDEX 0 实际使用的 zoo.cfg1 基础知识1.1 官网文档1.2 日志相关配置1.3 tick 时间 0 实际使用的 zoo.cfg ### 时间配置 ### 一个tick(滴答)的毫秒数,时间单位,可以认为是心跳时间 tickTime2000 ### follower 连接 leader 并与之…...
威联通-004 安装photoview相册应用Docker镜像
文章目录 前言准备MariaDB 10phpMyAdminphotoview 安装步骤1.安装MariaDB 10和phpMyAdmin2.初始安装MariaDB 103.进入phpMyAdmin添加账户4.手动下载photoview的Docker库注意:安装 phpMyAdmin 报错5.配置photoview6.容器安装成功之后进入photoview注意:这…...
Github clone 的时候出现Error in the HTTP2 framing layer错误
解决方案 github鉴权认证,打开gitbash,并输入 ssh-keygen -t rsa -C "emailicjs.cc" 执行后会在 .ssh 目录生产两个文件:id_rsa(私有密钥)和id_rsa.pub(公开密钥) 直接默认回车执行…...
SpringBoot中@Import和@ImportResource和@PropertySource
1. Import Import注解是引入java类: 导入Configuration注解的配置类(4.2版本之前只可以导入配置类,4.2版本之后也可以导入普通类)导入ImportSelector的实现类导入ImportBeanDefinitionRegistrar的实现类 SpringBootApplication…...
OpenCV 简介与安装方法
大家好啊,我是董董灿。 如果你在做计算机视觉相关的工作,肯定少不了使用 OpenCV 库。 在《计算机视觉专栏》的传统计算机视觉部分,我曾经使用 OpenCV 进行了很多图像的处理,比如边缘检测。 刚好最近在整理一份文稿,…...
pycharm基本库安装的几种方法
1、pycharm基本库安装的几种方法 1)一次性设置下载源 cmd窗口(管理员方式).输入以下命令: pip config set global.index-url http://pypi.tuna.tsinghua.edu.cn/simple pip config set global.trusted-host pypi.tuna.tsinghu…...
安装更新upgrade导致ubuntu崩溃
安装更新导致ubuntu崩溃 前言uuid编不过,导致的崩溃 记录一些ubuntu崩溃的过程。 目前只有一个,以后遇到都放在这里,以提醒自己。 前言 如果从10000年看现在的linux,不是说不完美,而是糟透了。 linux的版本号…...
K8S认证|CKS题库+答案| 11. AppArmor
目录 11. AppArmor 免费获取并激活 CKA_v1.31_模拟系统 题目 开始操作: 1)、切换集群 2)、切换节点 3)、切换到 apparmor 的目录 4)、执行 apparmor 策略模块 5)、修改 pod 文件 6)、…...
vscode(仍待补充)
写于2025 6.9 主包将加入vscode这个更权威的圈子 vscode的基本使用 侧边栏 vscode还能连接ssh? debug时使用的launch文件 1.task.json {"tasks": [{"type": "cppbuild","label": "C/C: gcc.exe 生成活动文件"…...
【服务器压力测试】本地PC电脑作为服务器运行时出现卡顿和资源紧张(Windows/Linux)
要让本地PC电脑作为服务器运行时出现卡顿和资源紧张的情况,可以通过以下几种方式模拟或触发: 1. 增加CPU负载 运行大量计算密集型任务,例如: 使用多线程循环执行复杂计算(如数学运算、加密解密等)。运行图…...
Android15默认授权浮窗权限
我们经常有那种需求,客户需要定制的apk集成在ROM中,并且默认授予其【显示在其他应用的上层】权限,也就是我们常说的浮窗权限,那么我们就可以通过以下方法在wms、ams等系统服务的systemReady()方法中调用即可实现预置应用默认授权浮…...
React---day11
14.4 react-redux第三方库 提供connect、thunk之类的函数 以获取一个banner数据为例子 store: 我们在使用异步的时候理应是要使用中间件的,但是configureStore 已经自动集成了 redux-thunk,注意action里面要返回函数 import { configureS…...
Chromium 136 编译指南 Windows篇:depot_tools 配置与源码获取(二)
引言 工欲善其事,必先利其器。在完成了 Visual Studio 2022 和 Windows SDK 的安装后,我们即将接触到 Chromium 开发生态中最核心的工具——depot_tools。这个由 Google 精心打造的工具集,就像是连接开发者与 Chromium 庞大代码库的智能桥梁…...
「全栈技术解析」推客小程序系统开发:从架构设计到裂变增长的完整解决方案
在移动互联网营销竞争白热化的当下,推客小程序系统凭借其裂变传播、精准营销等特性,成为企业抢占市场的利器。本文将深度解析推客小程序系统开发的核心技术与实现路径,助力开发者打造具有市场竞争力的营销工具。 一、系统核心功能架构&…...
上位机开发过程中的设计模式体会(1):工厂方法模式、单例模式和生成器模式
简介 在我的 QT/C 开发工作中,合理运用设计模式极大地提高了代码的可维护性和可扩展性。本文将分享我在实际项目中应用的三种创造型模式:工厂方法模式、单例模式和生成器模式。 1. 工厂模式 (Factory Pattern) 应用场景 在我的 QT 项目中曾经有一个需…...
yaml读取写入常见错误 (‘cannot represent an object‘, 117)
错误一:yaml.representer.RepresenterError: (‘cannot represent an object’, 117) 出现这个问题一直没找到原因,后面把yaml.safe_dump直接替换成yaml.dump,确实能保存,但出现乱码: 放弃yaml.dump,又切…...
针对药品仓库的效期管理问题,如何利用WMS系统“破局”
案例: 某医药分销企业,主要经营各类药品的批发与零售。由于药品的特殊性,效期管理至关重要,但该企业一直面临效期问题的困扰。在未使用WMS系统之前,其药品入库、存储、出库等环节的效期管理主要依赖人工记录与检查。库…...
