Redis集群 - redis主从配置初步:主从从配置、哨兵配置
2017-04-18 11:00
1066 查看
我们前面学习了简单的redis主从配置(结合稍兵),其实在我们的实际开发中要真正的达到“高可用”,”稍兵”还会部署多个,通过配置多个稍兵同时产生警报,那么我们再进行主从的切换。
前面我们配置了一个主机一个从机(用端口区分6379、6380),我们这里先再配置一个从机:
可能需要参考redis集群第一篇的配置。
显示我们准备把
启动这3个redis实例(redis服务),并且启动稍兵(redis-sentinel服务):
客户端链接主机(6379这台):
查看主机信息,输入
角色是
这样就配置好了“一主两从“。
所以我们今天要学习如下图的架构:
在开始之前,我们需要重新调整一下redis的配置文件
修改dbfilename(生成的数据库文件名)
dbfilename “dump端口.rdb”
还需要修改dir(本地数据库目录)
dir “/usr/local/redis/datadir” (别忘了创建这个datadir文件夹,并且要主要权限哦)
我们这里演示一下
其他2个配置文件
修改了3个配置文件之后,重启服务:
然后我们就可以在
好,然后回到我们的终点“主从从配置”。
修改我们的
我们现在要做的是:让
比如出现:
sentinel known-slave mymaster 127.0.0.1 6380
“known-slave”代表已知的从机。如果之前配的是一主多从,那么这里面会有这行配置。如果我们要配置“主从从”,那么要把多余的从(配置行)手工删掉。
其他一些配置:
sentinel leader-epoch mymaster 2
(同时一时间最多3个slave可同时更新配置)
打开我们的稍兵配置文件
因为我们现在是要配置“主从从”,是要6381隶属于6380,所以我们现在要把6381这行手工删掉。
好了,现在我们的稍兵只监听着6379,并且6379的从机只有6380。
然后我们修改6381的配置,让它隶属于6380:
修改内容如下:
修改完配置,必须要重启服务:
此时,我们在客户端链接上主机(6379是我们的主机):
同样链接上后输入
此时我们发现6379这个主机,只有1个从机6380了。
我们在链接上6380看看:
这样我们就配置好了redis的“主从从”:6379是主机,6380岁隶属于6379的从机,6381是隶属于6380的从机。
前面我们配置了一个主机一个从机(用端口区分6379、6380),我们这里先再配置一个从机:
可能需要参考redis集群第一篇的配置。
6379是主机,
6380是从机,我们先拷贝一份配置文件:
cp 6380.conf 6381.conf
显示我们准备把
6381也作为从机,下面修改
6381.conf几个配置项:
port 6380 修改为: port 6381 pidfile /usr/local/redis/redis_6380.pid 修改为: pidfile /usr/local/redis/redis_6381.pid 增加一行: slaveof 127.0.0.1 6379
启动这3个redis实例(redis服务),并且启动稍兵(redis-sentinel服务):
/usr/local/redis/bin/redis-server /usr/local/redis/conf/6379.conf /usr/local/redis/bin/redis-server /usr/local/redis/conf/6380.conf /usr/local/redis/bin/redis-server /usr/local/redis/conf/6381.conf /usr/local/redis/bin/redis-sentinel /usr/local/redis/conf/sentinel.conf
客户端链接主机(6379这台):
/usr/local/redis/bin/redis-cli -h 127.0.0.1 -p 6379
查看主机信息,输入
info命令:
角色是
master,链接了2个
slave,分别是
slave0和slave1。
这样就配置好了“一主两从“。
今天我们要学的是主从从
如果让所有的slave节点数据的复制和同步都是由master节点来处理,会造成master节点压力太大。所以我们今天要学习如下图的架构:
在开始之前,我们需要重新调整一下redis的配置文件
修改dbfilename(生成的数据库文件名)
dbfilename “dump端口.rdb”
还需要修改dir(本地数据库目录)
dir “/usr/local/redis/datadir” (别忘了创建这个datadir文件夹,并且要主要权限哦)
我们这里演示一下
6379.conf文件要怎么修改:
其他2个配置文件
6380.conf和6381.conf同理修改。
修改了3个配置文件之后,重启服务:
pkill redis
/usr/local/redis/bin/redis-server /usr/local/redis/conf/6379.conf /usr/local/redis/bin/redis-server /usr/local/redis/conf/6380.conf /usr/local/redis/bin/redis-server /usr/local/redis/conf/6381.conf /usr/local/redis/bin/redis-sentinel /usr/local/redis/conf/sentinel.conf
然后我们就可以在
datadir目录发现点儿什么了:
cd /usr/local/redis/datadir/
好,然后回到我们的终点“主从从配置”。
修改我们的
6381,它原本是隶属于
6379的(
6380也隶属于
6379)。
我们现在要做的是:让
6380隶属于
6379,
6381隶属于
6380。
关于哨兵配置
哨兵启动后起身自动修改配置文件(一般建议不要手动修改)比如出现:
sentinel known-slave mymaster 127.0.0.1 6380
“known-slave”代表已知的从机。如果之前配的是一主多从,那么这里面会有这行配置。如果我们要配置“主从从”,那么要把多余的从(配置行)手工删掉。
其他一些配置:
sentinel leader-epoch mymaster 2
(同时一时间最多3个slave可同时更新配置)
打开我们的稍兵配置文件
vi sentinel.conf来看一看:
因为我们现在是要配置“主从从”,是要6381隶属于6380,所以我们现在要把6381这行手工删掉。
好了,现在我们的稍兵只监听着6379,并且6379的从机只有6380。
然后我们修改6381的配置,让它隶属于6380:
vi 6381.conf
修改内容如下:
slaveof 127.0.0.1 6379 修改为: slaveof 127.0.0.1 6380 #成为6380的从机
修改完配置,必须要重启服务:
pkill redis
/usr/local/redis/bin/redis-server /usr/local/redis/conf/6379.conf /usr/local/redis/bin/redis-server /usr/local/redis/conf/6380.conf /usr/local/redis/bin/redis-server /usr/local/redis/conf/6381.conf /usr/local/redis/bin/redis-sentinel /usr/local/redis/conf/sentinel.conf
此时,我们在客户端链接上主机(6379是我们的主机):
/usr/local/redis/bin/redis-cli -h 127.0.0.1 -p 6379
同样链接上后输入
info命令查看:
此时我们发现6379这个主机,只有1个从机6380了。
我们在链接上6380看看:
/usr/local/redis/bin/redis-cli -h 127.0.0.1 -p 6380
这样我们就配置好了redis的“主从从”:6379是主机,6380岁隶属于6379的从机,6381是隶属于6380的从机。
相关文章推荐
- Redis集群 - redis主从配置初步:简单主从切换(哨兵模式)
- Redis学习笔记(4)-持久化、主从配置、哨兵、集群配置
- Redis 集群_主从配置_哨兵模式
- redis集群(主从配置)
- centos下 redis主从集群以及监控配置
- Redis-sentinel哨兵模式集群方案配置
- CentOS Linux下 redis 下载、安装、配置、主从集群配置
- Redis主从复制和集群配置
- Redis集群_2.redis 主从配置
- redis主从集群搭建及容灾部署(哨兵sentinel)
- Redis集群_主从配置
- redis主从集群搭建及容灾部署(哨兵sentinel)
- redis集群(主从配置)
- redis集群(主从配置)
- 王高利:CentOS6.5下redis安装部署配置指南、常用命令、主从同步集群、redis-php学习资料整合详解
- redis集群(主从配置)
- Redis的主从复制与集群配置实践
- redis集群(主从配置)
- redis集群(主从配置)
- Redis主从复制和集群配置