redis 哨兵机制环境搭建
Redis哨兵机制,一主二从
注:Redis哨兵切换,建议一主多从
一、一主二从
教程步骤:https://www.cnblogs.com/zwcry/p/9046207.html
二、哨兵配置(sentinel.conf)
cd /usr/local/redis-ms/
1.创建哨兵目录
mkdir -p ./sentinel/26001/tmp
cp /usr/local/redis/sentinel.conf ./sentinel/26001/
2.修改./sentinel/.conf
cd /usr/local/redis-ms/sentinel/
vim ./26001/sentinel.conf
#修改如下键值对
# bind 127.0.0.1 192.168.1.1#注释掉或者值为0.0.0.0
protected-mode no#关闭保护模式
port 26001#端口号
daemonize yes#后台运行
dir /usr/local/redis-ms/sentinel/26001/tmp#解除挂载信息目录
sentinel monitor mymaster 192.168.194.131 6381 1#设置 主名称 ip地址 端口号 参入选举的哨兵数
sentinel down-after-milliseconds mymaster 3000#sentinel心跳检测主3秒内无响应,视为挂掉,开始切换其他从为主
sentinel parallel-syncs mymaster 1#每次最多可以有1个从同步主。一个从同步结束,另一个从开始同步。
sentinel failover-timeout mymaster 18000#主从切换超时时间
三、启动哨兵配置
1.先启主从redis
/usr/local/redis/src/redis-server /usr/local/redis-ms/6381/redis.conf
/usr/local/redis/src/redis-server /usr/local/redis-ms/6382/redis.conf
/usr/local/redis/src/redis-server /usr/local/redis-ms/6383/redis.conf
ps -ef|grep redis
如图已经启动

且信息正确
/usr/local/redis/src/redis-cli -p 6381
info

2.启动哨兵
/usr/local/redis/src/redis-sentinel /usr/local/redis-ms/sentinel/26001/sentinel.conf
ps -ef|grep redis
如图已经启动

且信息正确
/usr/local/redis/src/redis-cli -p 26001
info

3.测试
1)主6381停掉后变成从,原有的两个从,有一个升级为主。
/usr/local/redis/src/redis-cli -p 6381 shutdown
/usr/local/redis/src/redis-cli -p 26001
info

2)6381再次启动后,依然是从
/usr/local/redis/src/redis-server /usr/local/redis-ms/6381/redis.conf
/usr/local/redis/src/redis-cli -p 6381
info

五、哨兵集群
cd /usr/local/redis-ms/sentinel/
1.复制26001
cp -r 26001 26002
2.修改26002/sentinel.conf
vim 26002/sentinel.conf
#将文本中26001替换为26002
:%s/26001/26002/g
3.启动
/usr/local/redis/src/redis-sentinel /usr/local/redis-ms/sentinel/26002/sentinel.conf
info
/usr/local/redis/src/redis-cli -p 26002

6.哨兵开机启动
注:redis开机启动参照https://www.cnblogs.com/zwcry/p/9046207.html
1.创建sh脚本目录
mkdir /usr/local/redis-ms/sentinel/script
cd /usr/local/redis-ms/sentinel/script/
2.编辑start.sh
vim start.sh
#!/bin/sh
/usr/local/redis/src/redis-sentinel /usr/local/redis-ms/sentinel//sentinel.conf
/usr/local/redis/src/redis-sentinel /usr/local/redis-ms/sentinel//sentinel.conf
3.编辑stop.sh
vim stop.sh
#!/bin/sh
/usr/local/redis/src/redis-cli -p shutdown
/usr/local/redis/src/redis-cli -p shutdown
4.编辑restart.sh
vim restart.sh
#!/bin/sh
systemctl stop redis-sentinel
systemctl start redis-sentinel
5.编写redis-sentinel.service
cd /usr/lib/systemd/system/
vim redis-sentinel.service
[Unit]
Description=redis-sentinel
After=redis-ms.service
[Service]
Type=forking
ExecStart=/usr/local/redis-ms/sentinel/script/start.sh
ExecStop=/usr/local/redis-ms/sentinel/script/stop.sh
ExecReload=/usr/local/redis-ms/sentinel/script/restart.sh
[Install]
WantedBy=multi-user.target
#建议启动redis服务后,再启动哨兵
6.命令行
改变权限
chmod 777 redis-sentinel.service
chmod 777 /usr/local/redis-ms/sentinel/script/*
进程服务重加载
systemctl daemon-reload
开机启动哨兵
systemctl enable redis-sentinel.service
启动哨兵
systemctl start redis-sentinel.service
关闭哨兵
systemctl stop redis-sentinel.service
重启哨兵
systemctl restart redis-sentinel.service
备注:哨兵集群服务自主关联响应,如果需要更多哨兵集群,按照26002的方式复制26003...26006即可
redis 哨兵机制环境搭建的更多相关文章
- Redis哨兵机制的实现及与SpringBoot的整合
1. 概述 前面我们聊过Redis的读写分离机制,这个机制有个致命的弱点,就是主节点(Master)是个单点,如果主节点宕掉,整个Redis的写操作就无法进行服务了. 为了解决这个问题,就需要依靠&q ...
- Redis集群环境搭建实践
0 Redis集群简介 Redis集群(Redis Cluster)是Redis提供的分布式数据库方案,通过分片(sharding)来进行数据共享,并提供复制和故障转移功能.相比于主从复制.哨兵模式, ...
- Windows下Lua+Redis 断点调试环境搭建==Linux下类似
Lua+Redis 断点调试环境搭建 windows环境,使用Redis,写lua脚本头疼的问题之一不能对脚本断点调试,google加上自己的摸索,终于搞定. 1.下载ZeroBraneStudio, ...
- 关于Redis哨兵机制,7张图详解!
写在前面 之前有位朋友去面试被问到Redis哨兵机制,这道题其实很多小伙伴都应该有被问到过!本文将跟大家一起来探讨如何回答这个问题!同时用XMind画了一张导图记录Redis的学习笔记和一些面试解析( ...
- Redis 哨兵机制
概述 由一个或多个 Sentinel(哨兵)实例组成的 Sentinel 系统可以监视任意多个主服务器,以及这些主服务器属下的所有从服务器,并在被监视的主服务器进入下线状态时,自动将下线主服务器属下的 ...
- 【redis】 linux 下redis 集群环境搭建
Redis集群 (要让集群正常工作至少需要3个主节点,在这里我们要创建6个redis节点,其中三个为主节点,三个为从节点,对应的redis节点的ip和端口对应关系如下) 127.0.0.1:63791 ...
- redis哨兵机制讲解
原文链接:https://blog.csdn.net/yswKnight/article/details/78158540 一.什么是哨兵机制? 答:Redis的哨兵(sentinel) 系统用于管理 ...
- 2.Redis集群环境搭建
转载请出自出处:http://www.cnblogs.com/hd3013779515/ 一.基本概念 1.redis集群是一个可以在多个节点之间进行数据共享的设施.redis集群提供了以下两个好处1 ...
- redis集群环境搭建的错误
安装redis集群需要版本号在3.0以上 redis-cluster安装前需要安装ruby环境 搭建集群需要使用到官方提供的ruby脚本. 需要安装ruby的环境. yum -y install ru ...
随机推荐
- Windows Server 2008 R2之六活动目录域服务的卸载
活动目录域服务的卸载是将DC降级为独立服务器或成员服务器的过程. 在删除活动目录之前,为了防止操作失败操作系统故障,须对系统进行备份.同时,我们还必须对待删除的域控制器进行如下检查 1.是否有操作主控 ...
- java使用AES256解密
网上关于java用AES加密解密的文章有很多,我这里只用到解密(加密是服务器那边做^_^),所以更简洁一些: public class AES256Utils { private static fin ...
- Shell for
for循环一般格式为:for 变量 in 列表do command1 command2 ... commandNdone列表是一组值(数字.字符串等)组成的序列,每个值通过空格分隔.每循环一次,就将列 ...
- 记一次centos7内核可能意外丢失(测试直接干掉)恢复方法
本次是虚拟机装的centos7的内核不知原因以外丢失造成无法开机,开机显示找不到内核! 恢复方法: 挂载新的ISO文件,然后进入bios选择dvd启动. 启动后进入Troublesshooting,然 ...
- ubuntu16.04下安装kdevelop和汉化
1.Kdevelop安装 最简单的命令行安装,打开终端,执行 sudo apt-get install kdevelop 2.Kdevelop汉化 不需要自己下载汉化包,Kdevelop安装后,在终端 ...
- Java中子类是否可以继承父类的static变量和方法而呈现多态特性
静态方法 通常,在一个类中定义一个方法为static,那就是说,无需本类的对象即可调用此方法,关于static方法,声明为static的方法有以下几条限制: 它们仅能调用其他的static 方法. 它 ...
- 25个站长必备的SEO优化工具
搜索引擎抓取内容模拟器 可以模拟蜘蛛抓取指定网页,包括Text.Link.Keywords及Description信息等.http://www.webconfs.com/search-engine-s ...
- gulp自动化部署:gulp发布express项目(二)
原文:https://my.oschina.net/songzhu/blog/610337 一.服务器准备 服务器ip地址为:172.16.70.174 1.安装 Node.js 参考:http:// ...
- windows底下怎么让cmder通过输入subl去打开sublime text
在window自身的cmd或者你安装的cmder中输入 doskey subl="D:\Program Files\sublime3\Sublime Text 3\sublime_text. ...
- IO流(9)复制指定文件夹下指定文件到目的文件夹,并改名
import java.io.BufferedInputStream;import java.io.BufferedOutputStream;import java.io.File;import ja ...