redis集群与主从配置
- redis安装-redis集群管理
- redis主从复制(读写分离)-redis集群管理
- redis主从从架构搭建-redis集群管理
- redis从库只读设置-redis集群管理
- redis主从复制的原理-redis集群管理
- redis sentinel(哨兵) 配置详解-redis集群管理
- redis sentinel.conf详解-redis集群管理
- redis 集群环境搭建-redis集群管理
- redis集群插槽分配-redis集群管理
- redis新增集群节点-redis集群管理
- redis删除集群节点-redis集群管理
- redis集群出现宕机没法访问-redis集群管理
- redis 集群使用主从复制架构-redis集群管理
redis 基础教程
- Redis概述
- 基于linux下redis安装与配置
- 基于window安装redis
- Redis配置文件详解
- 通过redis客户端查看和设置配置
- Redis 客户端连接、密码验证、连接数设置
- 使用info命令获取 redis 服务详细信息
- Redis Desktop Manager客户端使用教程
redis 数据类型
Redis 高级教程
知识点
相关文章
更多最近更新
更多redis集群出现宕机没法访问-redis集群管理
2019-03-24 00:02|来源: 网路
先来查看集群节点信息
192.168.56.101:6382> cluster nodes
03596d92625f1b778f29eb4a9128d92809dfd79a 192.168.56.101:6381 master - 0 1468858392134 2 connected 5795-10922
b1939026deb80fedde7bdb22c1df3ecfaa72f608 192.168.56.101:6380 master - 0 1468858393149 5 connected 0-5794 10923-11255
6aa027917d223b8fedd42893a89fb0e2c07c8b27 192.168.56.101:6382 myself,master - 0 0 3 connected 11256-16383
[root@master redis-cluster]# ps -ef | grep redis
root 8921 1 0 Jul18 ? 00:00:08 /usr/local/bin/redis-server 192.168.56.101:6380 [cluster]
root 8925 1 0 Jul18 ? 00:00:07 /usr/local/bin/redis-server 192.168.56.101:6381 [cluster]
root 8929 1 0 Jul18 ? 00:00:07 /usr/local/bin/redis-server 192.168.56.101:6382 [cluster]
root 23289 1785 0 00:13 pts/0 00:00:00 grep redis
把6382的进程kill 掉,再查看集群节点信息,发现6382的状态是disconnected
192.168.56.101:6380> cluster nodes
6aa027917d223b8fedd42893a89fb0e2c07c8b27 192.168.56.101:6382 master,fail - 1468858541215 1468858540912 3 disconnected 11256-16383
03596d92625f1b778f29eb4a9128d92809dfd79a 192.168.56.101:6381 master - 0 1468858579644 2 connected 5795-10922
b1939026deb80fedde7bdb22c1df3ecfaa72f608 192.168.56.101:6380 myself,master - 0 0 5 connected 0-5794 10923-11255
想向集群中写入数据是没法进行的,提示的错误信息是集群挂掉了
192.168.56.101:6380> set k2 111
(error) CLUSTERDOWN The cluster is down
故障机制
1、 集群中的每个节点都会定期的向其它节点发送PING命令,并且通过有没有收到回复判断目标节点是否下线;
2、 集群中每一秒都会随机选择几个节点,然后选择其中最久没有响应的节点放PING命令;
3、 如果一定时间内目标节点都没有响应,那么该节点就认为目标节点疑似下线;
4、 当集群中的节点超过半数认为该目标节点疑似下线,那么该节点就会被标记为下线;
5、
当集群中的任何一个节点下线,就会导致插槽区有空档,不完整,那么该集群将不可用;
6、 如何解决上述问题?
a) 在Redis集群中可以使用主从模式实现某一个节点的高可用
b) 当该节点(master)宕机后,集群会将该节点的从数据库(slave)转变为(master)继续完成集群服务;
书生参考网络整理
redis知识点
redis快速入门
reids常用命令
redis数据结构
java_API_客户端
Jedis
Tlcache
redis_持久化
AOF
RDB
发布订阅(pub/sub)
redis_事件
redis事务
redis通讯协议
RESP(Redis Serialization Protocol)
redis高可用
redis哨兵
监控(Monitoring) 提醒(Notification) 自动故障迁移(Automatic failover)
redis主从复制
-
- 主从复制
- 从从复制
-
- slave向master发送sync命令;
- master开启子进程执行bgsave写入rdb文件;
- master发送缓存和RDB文件给slave;
- master发送数据发送给slave完成复制;
redis集群(Redis_Cluster)
相关问答
更多-
使用spring-data-redis集群redis,[2023-12-20]
用的是什么集群方式,JedisSentinelPool 还是ShardedJedisPool。 如果用的是前者,配置是需要连接sentinel端口的(默认26379),不是连接redis端口(6379)。 或者把spring相关配置文件贴出来一下。 127.0.0.1:26379 127.0.0.1:26380 127.0.0.1:26381 -
使用spring-data-redis集群redis,[2022-05-20]
用的是什么集群方式,JedisSentinelPool 还是ShardedJedisPool。 如果用的是前者,配置是需要连接sentinel端口的(默认26379),不是连接redis端口(6379)。 或者把spring相关配置文件贴出来一下。编写一个python程序实现redis集群的访问[2023-02-16]
用python-2.7.3\python是对的,但是你的hello.py放在那里?你需要先用“cd 目录名”转换当前目录到存放hello.py的地方,然后执行python-2.7.3\python hello.py。Redis怎么做集群[2022-03-16]
为什么集群? 通常,为了提高网站响应速度,总是把热点数据保存在内存中而不是直接从后端数据库中读取。Redis是一个很好的Cache工具。大型网站应用,热点数据量往往巨大,几十G上百G是很正常的事儿,在这种情况下,如何正确架构Redis呢? 首先,无论我们是使用自己的物理主机,还是使用云服务主机,内存资源往往是有限制的,scale up不是一个好办法,我们需要scale out横向可伸缩扩展,这需要由多台主机协同提供服务,即分布式多个Redis实例协同运行。 其次,目前硬件资源成本降低,多核CPU,几十G内存 ...redis 集群之后 客户端访问什么地址[2022-11-01]
把redis-3.2.0文件夹中redis.conf配置文件拷贝到/usr/local/redis/下,可能不同的版本,不一样,我这里需要拷贝,/usr/local/redis/没有,授权或者切换root用户 因为redis.conf是只读模式,所以非得授权和root用户,使用命令进入redis.conf后,把daemonize no修改,目的是开启后台启动,然后使用命令,找到集群把注释去掉。这样子单机版的redis的配置安装就完成了。正如你在这里看到的,redis现在支持自动分区。 As you can see here, redis supports now automatic partitioning.如何测试redis集群(how to test redis cluster)[2022-07-18]
正如您所说,您在Redis群集中使用了3个主节点,因此可以清楚地看到,如果其中一个节点将关闭,那么您将收到CLUSTERDOWN错误。 为了避免这些类型的错误并获得高可用性,最好将从属服务器附加到主节点(如此处的官方Redis群集教程中所示)。 有一个理由让奴隶与你的主人联系以获得更高的可用性。 为此,您可以阅读上面Redis群集教程链接中提到的这些行。 Redis集群中有16384个散列槽,为了计算给定密钥的散列槽,我们只需采用密钥模数16384的CRC16。 Redis群集中的每个节点都负责散列槽的子集 ...JedisCluster没有实现Transaction和Pipeline,因为它很难实现。 Redis可以在群集模式下发送MOVED或ASK,这意味着我们应该在节点之间移动插槽。 我正在考虑JedisCluster的管道模式,但没有进行进一步的研究。 https://groups.google.com/d/msg/jedis_redis/u6j8slokO3E/Dh5Q94TRjJUJ 目前,Jedis团队正致力于为JedisCluster稳定/提供更多API。 JedisCluster didn't im ...