redis集群 服务器更换ip,怎么办,怎么更换redis集群的ip

server/2024/12/15 17:04:42/

redis集群 服务器更换ip,怎么办,怎么更换redis集群的ip

redis_1">1、安装redis三主三从集群

参考 安装redis三主三从集群
在此例中 安装的redis集群信息如下

机器IPredis端口redis安装目录每个redis节点配置文件每个redis节点的集群配置文件
192.168.2.1626379/usr/local/redis//usr/local/redis/conf/redis-cluster-6379.conf/data/redis7/cluster/6379/data/nodes-6379.conf
192.168.2.1626380/usr/local/redis//usr/local/redis/conf/redis-cluster-6380.conf/data/redis7/cluster/6380/data/nodes-6380.conf
192.168.2.1646379/usr/local/redis//usr/local/redis/conf/redis-cluster-6379.conf/data/redis7/cluster/6379/data/nodes-6379.conf
192.168.2.1646380/usr/local/redis//usr/local/redis/conf/redis-cluster-6380.conf/data/redis7/cluster/6380/data/nodes-6380.conf
192.168.2.1686379/usr/local/redis//usr/local/redis/conf/redis-cluster-6379.conf/data/redis7/cluster/6379/data/nodes-6379.conf
192.168.2.1686380/usr/local/redis//usr/local/redis/conf/redis-cluster-6380.conf/data/redis7/cluster/6380/data/nodes-6380.conf

redis_13">2、正常状态的redis集群

查看redis集群状态
redis集群中任一台机器上登录redis

redis-cli -c -p 6379

登入redis后 执行

auth 123456
cluster info
cluster nodes

其中cluster info 显示 cluster_state:ok 即表示集群状态正常。
在这里插入图片描述

redis存储的数据如下 用redisinsight连接redis集群中任一节点 查看redis存储的数据

在这里插入图片描述

redisip__down_33">3、更改redis集群服务器的ip 重启服务器 集群会down

把 192.168.2.162 改为 192.168.2.172
把 192.168.2.164 改为 192.168.2.174
把 192.168.2.168 改为 192.168.2.178

然后重启服务器
再次查看redis集群状态
redis集群中任一台机器上登录redis

redis-cli -c -p 6379

登入redis后 执行

auth 123456
cluster info
cluster nodes

其中cluster info 显示 cluster_state:fail 即表示集群状态不正常。

在这里插入图片描述

发现redis集群已经处于down的状态。cluster_state:fail 就表示集群已经down了。

redisinsight连接同样发现集群已经down了。
在这里插入图片描述

redisip__down_61">4、更改redis集群服务器的ip 重启服务器 集群down的原因

因为更改了服务器ip,服务器的IP和原来不一样了,但是记录集群状态的节点配置文件中的IP还仍然是以前的IP(因为集群是更改服务器IP之前创建的)

cat /data/redis7/cluster/6379/data/nodes-6379.conf
cat /data/redis7/cluster/6380/data/nodes-6380.conf

在这里插入图片描述

导致集群之间还认为是以前的IP,因此集群down了。

redisipredisdown_71">5、更改redis集群服务器的ip后,如何解决redis集群down的问题

有两种解决方法:
1、删除现有redis集群,创建新的redis集群,这种方法会破坏现有的redis数据,因此在生产服务器上不可用。
2、更改每个redis集群节点的节点配置文件,把IP对应改成新的IP,此种方法不损失redis数据,可以使用。

找到IP更改记录如下:
把 192.168.2.162 改为 192.168.2.172
把 192.168.2.164 改为 192.168.2.174
把 192.168.2.168 改为 192.168.2.178

更改每个redis集群节点的节点配置文件,把IP对应改成新的IP:

sed -i "s/192.168.2.162/192.168.2.172/g"  /data/redis7/cluster/6379/data/nodes-6379.conf /data/redis7/cluster/6380/data/nodes-6380.conf
sed -i "s/192.168.2.164/192.168.2.174/g"  /data/redis7/cluster/6379/data/nodes-6379.conf /data/redis7/cluster/6380/data/nodes-6380.conf
sed -i "s/192.168.2.168/192.168.2.178/g"  /data/redis7/cluster/6379/data/nodes-6379.conf /data/redis7/cluster/6380/data/nodes-6380.conf

查看更改后的节点配置文件 已经改成了新的IP

cat /data/redis7/cluster/6379/data/nodes-6379.conf
cat /data/redis7/cluster/6380/data/nodes-6380.conf

在这里插入图片描述

最后重启所有redis节点

/etc/init.d/redisd6379 stop
/etc/init.d/redisd6380 stop/etc/init.d/redisd6379 start
/etc/init.d/redisd6380 start

再次查看redis集群状态
redis集群中任一台机器上登录redis

redis-cli -c -p 6379

登入redis后 执行

auth 123456
cluster info
cluster nodes

其中cluster info 显示 cluster_state:ok 即表示集群状态正常。

在这里插入图片描述

redisinsight连接redis集群master节点 查看redis存储的数据 和更改redis集群服务器IP之前的数据是一样的,没有损失数据。

在这里插入图片描述


http://www.ppmy.cn/server/150395.html

相关文章

Python中定义抽象基类

What python中定义可以定义抽象类,和Java中的抽象类是一样的,不能被直接实例化,而是作为一个基类,主要用于定义一组接口规范,接口的实现在继承其的子类中完成,并且要求子类必须实现定义的所有接口&#xf…

es build 使用配置详解:快速、可扩展的 JavaScript 打包器

引言 es build 是一个快速、可扩展的 JavaScript 打包器和压缩器,它的目标是成为最快的打包器。它使用 Go 编写,可以在几乎瞬间内完成大多数项目的构建。在本文中,我们将深入了解 es build,并探讨其如何实现如此出色的性能。 什…

如何使用 Python 写入文本文件 ?

在Python编程中,写入文本文件是一项基本且重要的操作。 无论是生成日志文件、配置文件,还是进行数据输出,都需要用到这一技能。 下面,我将详细介绍如何使用Python写入文本文件,并提供一些实际开发中的建议和注意事项…

MySQL 记录锁+间隙锁防幻读方案

1. 什么是幻读? 定义: 幻读是指在事务过程中,一个事务执行了某些查询操作后,另一事务插入、删除或更新了满足查询条件的新数据,当第一个事务再次执行相同的查询操作时,结果集出现了“幻觉”&#…

docker tdengine windows快速体验

#拉取镜像 docker pull tdengine/tdengine:2.6.0.34#容器运行 docker run -d --name td2.6 --restartalways -p 6030:6030 -p 6041:6041 -p 6043:6043 -p 6044-6049:6044-6049 -p 6044-6045:6044-6045/udp -p 6060:6060 tdengine/tdengine:2.6.0.34#容器数据持久化到本地 #/va…

双重AEB:将基于规则的方法与多模态大型语言模型相结合,以实现有效的紧急制动(202410)

Dual-AEB: Synergizing Rule-Based and Multimodal Large Language Models for Effective Emergency Braking 双重AEB:将基于规则的方法与多模态大型语言模型相结合,以实现有效的紧急制动 Abstract Automatic Emergency Braking (AEB) systems are a c…

前端切换端口,系统前后端交互就报401错误(未授权)的常见原因

当前端切换端口后,前后端交互出现 401 未授权 错误,通常是因为以下原因: 1. 跨域问题 跨域是最常见的原因。前端端口变化会导致浏览器认为请求是跨域的,后端如果未正确配置 CORS,会拒绝请求。 原因: 不同端…

【图像处理】利用numpy、opencv、python实现车牌检测

| 利用opencv实现车牌检测 整体流程涉及5个部分 图像通道转换对比度增强边缘连接二值化边界区域裁剪 图像通道转换 将RGB图像转换为HSV图像,仅保留V通道。V通道表示颜色的明暗,常用于图像对比度拉伸、直方图均衡化等流程。 原图像: V通…