redis的哨兵模式
我是在一台服务器上安装了三个redis 一主两从
想安装gcc gcc-c++ make tcl lrzsz
yum -y install gcc gcc-c++ make tcl lrzsz
上传redis的tar包ls查看

我新建了/picclife的目录将redis的包移到/picclife下
mv redis-4.0.1.tar.gz /picclife
解压
tar -zxf redis-4.0.1.tar.gz
做个软连接 方便以后升级
ln -s redis-4.0.1 redis
进入到刚建的连接里
cd redis
安装
make && make install
查看是否安装好(如出现版本号说明redis安装成功)
redis-cli -v
在etc下创建redis目录
mkdir /etc/redis
将redis的配置文件复制到刚健的redis的目录里
cp /picclife/redis/redis.conf /etc/redis/redis_6379.conf
编辑
vim /etc/redis/redis_6379.conf

6379 端口的redis为主:在配置两个6380 6381 为从
启动主
redis-server /etc/redis/redis_6379.conf
在/etc/redis下在复制两给redis的配置文件分别为reids_6380.conf redis_6381.conf
编辑
vim /etc/redis/redis_6380.conf

指定主的ip和端口

vim /etc/redis/redis_6381.conf

指定主的ip和端口

启动
redis-server /etc/redis/redis_6380.conf
redis-server /etc/redis/redis_6381.conf
可以通过 info replication 命令查看主从同步的情况
至此redis的主从就配置好了下面开始配置哨兵sentinel
将redis下的sentinel.conf 复制到/etc/redis下分别是sentinel-6379.conf sentinel-6380.conf sentinel-6380.conf
编辑
vim sentinel-6379.conf
daemonize yes 默认没有需要加 端口号 这个是默认的26379 ,logfile 是日志路径
dir是工作目录
指明主的ip和端口号 2 意思是必须有两个sentinel认为主redis连接不上时,切换从为主,2的选择是sentinel个数一半加1 ,我这里有3个sentinel
( 编辑哨兵配置文件更改如下(搜不到的字段可自己添加):
protected-mode no (去掉注释)
daemonize yes (自行添加守护进程)
dir /tmp
logfile "/var/log/redis/redis_26379.log" (自行添加哨兵的日志)
sentinel monitor mymaster 192.168.52.138 6379 2 (原基础上更改)
sentinel down-after-milliseconds mymaster 30000 (默认)
sentinel parallel-syncs mymaster 1 (默认)
sentinel failover-timeout mymaster 180000 (默认) )
其余的
sentinel-6380.conf sentinel-6380.conf 这两个配置文件和上面的一样,唯一不一样的是 端口 日志路径可以改为不一样的
sentinel-6380.conf 端口是port 26380
sentinel-6380.conf 端口是port 26381
启动sentinel
redis-sentinel /etc/redis/sentinel-6379.conf
redis-sentinel /etc/redis/sentinel-6380.conf
redis-sentinel /etc/redis/sentinel-6381.conf
启动后可以到日志里查看信息
tail -f /redis_2379.log
现在就可以测试里 例:关掉主redsi
查看sentinel的日志会发现从选举成主了
最后注意:我的sentinel 是安装在一台服务器上,如果实在生产中最好分开安装,不要咱庄在一台服务上,sentinel 一半安装为单数。
到此redis的哨兵模式就搭建完成,谢谢
redis的哨兵模式的更多相关文章
- Redis-Sentinel Redis的哨兵模式
Redis-Sentinel Redis的哨兵模式Redis Sentinel 模式简介Redis-Sentinel是官方推荐的高可用解决方案,当redis在做master-slave的高可用方案时, ...
- redis主从+redis的哨兵模式
三台机器分布 192.168.189.129 // master的角色 192.168.189.130 // slave1的角色 192.168.189.131 // salve2的角色 ...
- redis主从+哨兵模式(借鉴)
三台机器分布 192.168.189.129 // master的角色 192.168.189.130 // slave1的角色 192.168.189.131 // salve2的角色 ...
- Redis进阶:Redis的哨兵模式搭建
Redis进阶:Redis的哨兵模式搭建 哨兵机制介绍 单机版的Redis存在性能瓶颈,Redis通过提高主从复制实现读写分离,提高了了Redis的可用性,另一方便也能实现数据在多个Redis直接的备 ...
- Redis sentinel 哨兵模式集群方案配置
第一个方案是创建 redis cluster,第二种方案就是用哨兵模式来进行主从替换以及故障恢复.兵模式集群方案配置 一.sentinel介绍 Sentinel作用: 1):Master状态检测 2) ...
- Redis sentinel 哨兵模式
一.sentinel介绍 Sentinel作用: 1):Master状态检测 2):如果Master异常,则会进行Master-Slave切换,将其中一个Slave作为Master,将之前的Maste ...
- redis架构~哨兵模式
一 哨兵模式稳定版本 redis哨兵模式是redis自带的高可用框架,稳定版本为redis2.8以上二 哨兵模式建立 1 避免单点故障,建立启动多个哨兵进程 2 哨兵模式启动命令 redis-s ...
- redis sentinel哨兵模式集群搭建教程
1.环境说明 我们将使用192.168.220.128.192.168.220.129两台机器搭建sentinel交叉主从为例 当前我们已在192.168.220.128上按redis安装教程安装了r ...
- redis主从+哨兵模式
主从模式配置分为手动和配置文件两种方式进行配置,我现在有192.168.238.128(CentOS1).192.168.238.131(CentOS3).192.168.238.132(CentOS ...
随机推荐
- 不安装Oracle数据库使用plsqldevloper
1.Oracle官网下载instantclient 解压到D:\zl\instantclient_11_2 2.配置环境变量 ORACLE_HOME = D:\zl\instantclient_11_ ...
- C# 3.0 / C# 3.5 自动属性
自动属性的好处 自动属性简化了我们在做 C# 开发的时候手写一堆私有成员 + 属性的编程方式,我们只需要使用如下方式声明一个属性,编译器就会自动生成所需的成员变量. 传统属性概念 属性的目的一是封装字 ...
- python爬虫---BeautifulSoup的用法
BeautifulSoup是一个灵活的网页解析库,不需要编写正则表达式即可提取有效信息. 推荐使用lxml作为解析器,因为效率更高. 在Python2.7.3之前的版本和Python3中3.2.2之前 ...
- 【转】js生成接口请求参数签名加密
js生成接口请求参数签名加密 签名算法规则: 第一步,设所有发送或者接收到的数据为集合M,将集合M内非空参数值的参数按照参数名ASCII码从小到大排序(字典序),使用URL键值对的格式(即key1=v ...
- Oracle Linux下载教程(以Oracle Linux 6.9为例)
一.说明 Oracle Linux是Oracle基于Redhat,针对Oracle系列软件(尤其是Oracle数据库)进行优化后的Linux发行版. 虽然Oracle Linux下载是免费的,但是并不 ...
- POJ 3436 ACM Computer Factory 最大流,拆点 难度:1
题目 http://poj.org/problem?id=3436 题意 有一条生产线,生产的产品共有p个(p<=10)零件,生产线上共有n台(n<=50)机器,每台机器可以每小时加工Qi ...
- OOP⑺
1.多态和instanceof 都是去买东西,但是根据我们给别人金额的不同,得到不同的结果!!!! 生活中的多态! 操作是否一致? 一致! 都是买东西! 什么不一样?? 01.消费金额不一样 02.因 ...
- RabbitMQ 循环调度
循环调度是针对Consumer消费者来说的.如果有多个Consumer订阅同一个队列的消息,RabbitMQ会自动按照顺序将消息发送到每一个Consumer手中. 就是这么简单!
- node 慕课笔记
global global.testVar2 = 200; 在别的文件中可以任意调用到 因为global是全局变量相当于js的window一样的
- 4.7 C++ dynamic_cast操作符
参考:http://www.weixueyuan.net/view/6377.html 总结: 产生这种运行期的错误原因在于static_cast强制类型转换时并不具有保证类型安全的功能,而C++提供 ...