Redis搭建一主一从及哨兵模式(二)
废话不多说,直接进入正题。
一、主从搭建
进入redis的根目录,拷贝一份redis.conf,最初的一份留作模版:
①cp redis.conf redis.conf.template
②vim redis.conf(主节点的配置)
# Redis使用后台模式
daemonize yes
# 关闭保护模式
protected-mode no
# 注释以下内容开启远程访问
# bind 127.0.0.1
# 启动端口为6379
port 6379
# 修改pidfile指向路径
pidfile /home/softwares/redis3.2.11/6379/redis_6379.pid
③修改从节点redis配置文件
与主服务器配置大致相同,唯一需要在配置文件中多添加一行的配置:slaveof 主服务器ip 端口,我这里是slaveof 10.42.41.16 6379,这种方式配置重启redis还是主从关系
在redis客户端通过slaveof命令挂接只是临时的主从关系,重启redis后会失效。
④启动redis服务
在每个服务器的redis根目录下:redis-server ./redisconf启动redis服务
⑤通过redis-cli -c登录每个客户端
info replication查看角色,此时主从结构已经搭建成功。
二、哨兵模式
主从结构搭建完成以后,主节点与从节点的数据是保持一致的,当主节点宕机以后,可以人工手动设置从节点为主节点,其他进来的节点自动设置为从节点。看到这里你会想到什么?万一凌晨1点,主节点宕机了,你还要从被窝爬起来去设置从节点为主节点吗?显然不会,我们通过一个哨兵,也就是一个进程帮我们完成主从节点的替换,我们也就可以睡个好觉了。由于本次是测试环境,使用的是1个哨兵,实际开发中,还是以集群模式为主,本测试环境中的1个哨兵存在单点故障问题。
进入redis的根目录下:cp sentinel.conf sentinel.conf.template
①编辑sentinel.conf
P15 bind 需要注释掉ip信息不要绑定
P17 protected-mode no放开,配置no
P69 sentinel monitor mymaster 127.0.0.1 6379 1
mymaster这里名称可以自定义
127.0.0.1这是主服务器redis的ip
6379 主服务器redis的端口
1 投票数量,本测试环境只有1个哨兵,所以设置为1
如果哨兵是集群模式,只需要修改投票数量:集群数量/2+1,注意取整
②启动哨兵进程
redis-sentinel ./sentinel.conf,此时哨兵已经开始监听redis主从结构,并且会做到当主节点宕机,从节点自动晋升为主节点。
三、测试主从替换
①登录客户端
在主从服务器:redis-cli -c 进入redis的客户端,使用info replication查看主从结构
②查看redis进程
通过ps -ef | grep redis 来查看redis的进程pid
③kill -9 主redis的pid
查看从节点的角色,它会晋升为主节点,当主节点恢复以后会自动成为丛节点。
ps:本人由于是刚开始接触博客,难免会有不足和错误,写博客只是记录本人在学习和工作的过程中的成长,如有不足,欢迎各位指正,谢谢~
Redis搭建一主一从及哨兵模式(二)的更多相关文章
- Redis搭建(三):哨兵模式
一.sentinel介绍 Redis 2.8中提供了“哨兵”工具来实现自动化的系统监控和故障恢复功能. Redis 2.6 版也提供了哨兵工具,但此时的哨兵是1.0版,存在非常多的问题,任何情况下都不 ...
- (六) Docker 部署 Redis 高可用集群 (sentinel 哨兵模式)
参考并感谢 官方文档 https://hub.docker.com/_/redis GitHub https://github.com/antirez/redis happyJared https:/ ...
- redis 主从复制和哨兵模式(二)
Redis 主从复制 为了分担单机 redis 的数据服务压力,需要进行读写分离,所以搭建 redis 的主从结构,主节点负责写,从节点负责读,主节点定期把数据同步到从节点. 配置主从 # 配置文件中 ...
- Redis高可用集群-哨兵模式(Redis-Sentinel)搭建配置教程【Windows环境】
No cross,no crown . 不经历风雨,怎么见彩虹. Redis哨兵模式,用现在流行的话可以说就是一个"哨兵机器人",给"哨兵机器人"进行相应的配置 ...
- Docker:docker搭建redis一主多从集群(配置哨兵模式)
角色 实例IP 实例端口 宿主机IP 宿主机端口 master 172.19.0.2 6382 192.168.1.200 6382 slave01 172.19.0.3 6383 192.168.1 ...
- Redis哨兵模式(sentinel)学习总结及部署记录(主从复制、读写分离、主从切换)
Redis的集群方案大致有三种:1)redis cluster集群方案:2)master/slave主从方案:3)哨兵模式来进行主从替换以及故障恢复. 一.sentinel哨兵模式介绍Sentinel ...
- [转]Redis哨兵模式(sentinel)学习总结及部署记录(主从复制、读写分离、主从切换)
Redis的集群方案大致有三种:1)redis cluster集群方案:2)master/slave主从方案:3)哨兵模式来进行主从替换以及故障恢复. 一.sentinel哨兵模式介绍Sentinel ...
- redis架构~哨兵模式
一 哨兵模式稳定版本 redis哨兵模式是redis自带的高可用框架,稳定版本为redis2.8以上二 哨兵模式建立 1 避免单点故障,建立启动多个哨兵进程 2 哨兵模式启动命令 redis-s ...
- Redis高可用集群-哨兵模式(Redis-Sentinel)
前言 Redis哨兵模式,用现在流行的话可以说就是一个“哨兵机器人”,给“哨兵机器人”进行相应的配置之后,这个"机器人"可以7*24小时工作,它能能够自动帮助你做一些事情,如监控 ...
随机推荐
- 堆(Heap)和栈(Stack)
详细可以查看这篇文章:https://www.cnblogs.com/qingtianMo/p/5255121.html 栈保存代码执行(调用)的路径,堆负责保存对象(数据) 栈相当于摞盒子,进入一个 ...
- 第四十一篇 入门机器学习——Numpy的基本操作——聚合操作
No.1. 对向量元素求和使用np.sum,也可以使用类似big_array.sum()的方式 No.2. 对向量元素求最小值使用np.min,求最大值使用np.max,也可以使用类似big_arra ...
- C++-POJ3349-Snowflake Snow Snowflakes[STL][set][hash未写]
错误AC解法,sort+set判重,为考虑异构! 比较坑的一点是读入时scanf一定要一次读6个数,不然会TLE #include <set> #include <map> # ...
- vscode中vim插件对ctrl键的设置
vim配置 在使用中经常想使用ctrl-c,虽然在vscode中有配置选项可以让vim与ctrl键解绑,但是这样就使用不了vim的VISUAL BLOCK.所以进行了自定义设置. 设置 - Vim C ...
- 三种方法获取 lua时间戳
ngx.now() 返回:1523174287.735 毫秒级精度的时间戳(获取的是nginx缓存的时间戳,并非实时刷新, 如果希望刷新,可以在获取前一行加上 ngx.update_tim ...
- window cmd下常用操作
创建文件夹 mkdir 创建空文件 type nul>文件名 进入目录 cd 进入分区 分区名 引入文件 当前文件: ./文件名 或 直接文件名 上一级目录文件及上一级目录下子文件:../文件名 ...
- 【C语言】移动指针
移动指针 #include<stdio.h> int main() { char *s="哈哈哈哈哈哈"; for(*s;s!="\0";s++) ...
- python+selenium:浏览器webdriver操作(0)
1.浏览器最大化 启动的浏览器不是全屏的,这样不会影响脚本的执行,但是有时候会影响我们“观看”脚本的执行. #coding=utf-8 from selenium import webdriver i ...
- python2.7 字符处理小节
unicode是字符集 utf-8,gbk是编码方式,将字符集编码为机器识别的字节码 #encoding: utf-8 s = "中文" #unicode的utf-8编码,\xE4 ...
- SSI注入漏洞
简介 SSI是英文Server Side Includes的缩写,翻译成中文就是服务器端包含的意思.从技术角度上说,SSI就是在HTML文件中,可以通过注释行调用的命令或指针.SSI具有强大的功能,只 ...