共计 1733 个字符,预计需要花费 5 分钟才能阅读完成。
引言:Redis 是广为使用的缓存解决方案,本文将给出基于 Sequential 的高可用方案,自动进行主从的切换,在 master 节点 down 机之后,透明的进行切换。
主从节点的设置方案
设置主节点 redis.conf
-* auth 123456*
master-slave 节点之间的主从认证信息, 主从保持一致即可
- 修改日志路径
logfile“/var/log/redis-slave.log”
设置 slave 节点
- 设置 master 节点
slaveof 127.0.0.1 6379
- 设置 auth 认证密码
auth 123456
启动 master 节点
在 master 节点写入若干数据
启动 redis 的 slave 节点
redis-server slave-redis.conf
slave redis 启动的日志信息:
测试 slave 节点是否读取主节点数据
从 slave 节点中正确读取了我们之前在 master 节点中设置的信息。
Redis Sequential 设置
redis-sequential.conf 的设置:
– logfile:“/var/log/sentinel.log”
设置 log 文件的位置
– sentinel monitor mymaster 127.0.0.1 6379 1
设置 monitor 的 redis 的 master 节点地址与端口
– deamonize yes
设置为守护进程
这里 IP 为 localhost,master 为 6380,slave 节点为 6379
启动
master 启动日志:
slave 节点启动日志
启动 sequential 服务
基于 sequential-cli 查看 seqential 状态
./sequential-cli
停用 redis master 节点之后的 sequential
从上面可以看到当前监控的 redis 端口已经从 6379 切换到 6380.sequential 已经切换了 redis 的服务器。
总结
sentinel 本质上监听 Redis 的集群,在 Redis 的 master 节点 down 掉之后,基于选举规则,选举新的 master 节点,从而实现了失效的转移,从而确保了服务的可用性,提升了 Redis 集群的高可用性。
一般而言 senitinel 都是集群的方式来实现监听,避免 sentinel 成为单点,sentinel 彼此之间通过选举来指定新的 master 节点。
下面关于 Redis 的文章您也可能喜欢,不妨参考下:
Ubuntu 14.04 下 Redis 安装及简单测试 http://www.linuxidc.com/Linux/2014-05/101544.htm
Redis 主从复制基本配置 http://www.linuxidc.com/Linux/2015-03/115610.htm
CentOS 7 下 Redis 的安装与配置 http://www.linuxidc.com/Linux/2017-02/140363.htm
Ubuntu 14.04 安装 Redis 与简单配置 http://www.linuxidc.com/Linux/2017-01/139075.htm
Ubuntu 16.04 环境中安装 PHP7.0 Redis 扩展 http://www.linuxidc.com/Linux/2016-09/135631.htm
Redis 单机 & 集群离线安装部署 http://www.linuxidc.com/Linux/2017-03/141403.htm
CentOS 7.0 安装 Redis 3.2.1 详细过程和使用常见问题 http://www.linuxidc.com/Linux/2016-09/135071.htm
Ubuntu 16.04 环境中安装 PHP7.0 Redis 扩展 http://www.linuxidc.com/Linux/2016-09/135631.htm
Ubuntu 15.10 下 Redis 集群部署文档 http://www.linuxidc.com/Linux/2016-06/132340.htm
Redis 实战 中文 PDF http://www.linuxidc.com/Linux/2016-04/129932.htm
本文永久更新链接地址:http://www.linuxidc.com/Linux/2017-07/145465.htm