一、Redis的安装(前提是已经安装了EPEL)
 
安装redis:
yum -y install redis
启动/停止/重启 Redis
启动服务:
systemctl start redis.service
停止服务:
systemctl stop redis.service
重启服务:
systemctl restart redis.service
检查状态:
systemctl status redis.service
随系统启动服务:
systemctl enable redis.service
关闭随系统启动:
systemctl disable redis.service
 
二、redis基本命令的使用
登陆redis
> redis-cli -h 127.0.0.1 -p 6379
set操作
> set k1 123456
get操作
> get k1
查找所有key
> keys *
判断key是否存在
> exists 123
删除指定key
> del k1
获取key的类型
> type k1
查看当前redis的信息
> info
选择不同的db,redis中的db并没有很强的区分
> select 1
清除所有的key
> flushall
 
三、开启远程连接服务
ps -ef | grep redis 查看只能本机IP的机器可以访问

打开配置文件
vi /etc/redis.conf

常用工具redis desktop manageer 使用指南

查看redis版本
 redis-server --version
 
四、Redis的主从配置
例如:四台服务器
192.168.237.101, matser
192.168.237.102   slave
192.168.237.103   slave
192.168.237.104   slave
 
四台机器全部安装redis
修改配置文件
vi /etc/redis.conf
 
#bind 127.0.0.1
protected-mode no
daemonize yes
appendonly yes
slaveof 192.168.237.101 6379 #只有slave节点需要开启这条指令
 
重新启动四台机器redis
 
Master服务器可读写,
slave服务器同步成功只能读不能写,打开可以读需要修改配置
slave-read-only no

五、Redis-sentinel的哨兵灾备切换配置
两台机器安装redis
例如
192.168.236.104
192.168.236.105
修改该sentinel配置文件
vi /etc/redis-sentinel.conf
 
protected-mode no
sentinel monitor mymaster 192.168.237.101 6379 2
sentinel down-after-milliseconds mymaster 5000
sentinel failover-timeout mymaster 15000
sentinel parallel-syncs mymaster 1
 
 
mymaster 后面跟master的ip 和端口 最后一个2 代表只要有两个sentienl认为master下线就认为该master 客观下线 启动failover 并选举新的master 通常最后一个参数不能多余启动的sentinel实例数
 
down-after-milliseconds 服务器不可靠的判断依据
parallel-syncs 在故障转移成功后,马上将切到新的master的slave数量
启动sentinel 服务
Systemctl start redis-sentinel
参数参考意义地址
 
查看sentinel日志文件
vi  /var/log/redis/sentinel.log
杀掉 redis master 进程

查看sentinel日志进程

Sdown 检测到主观下线
Odown 检测到客观下线
try-failover master mymaster  尝试故障转移切换
switch-master mymaster 192.168.237.101 6379 192.168.237.102 6379
切换主master 101 到 102
 
查看主从配置

SDOWN适合于Master和Slave,只要一个Sentinel 发现Master进入了ODOWN, 这个Sentinel就可能会被其他Sentinel推选出, 并对下线的主服务器执行自动故障迁移操作。
ODOWN只适用于Master,对于Slave的Redis实例,Sentinel在将它们判断为下线前不需要进行协商,所以Slave的Sentinel永远不会达到ODOWN。
 

CentO7 安装 redis, 主从配置,Sentinel集群故障转移切换的更多相关文章

  1. redis 主从配置和集群配置

    主从配置 |  集群配置 redis主从 主从配置原因: 1.到达读写分离,读的操作和写操作比例10 : 1读数据频繁,写数据次数少,这样可以配置1个master数据库用来写数据,配置多个slave从 ...

  2. redis主从配置+sentinel哨兵

    redis主从配置+sentinel哨兵 1:编译环境准备 1.1环境确认 Redis是一个开源.支持网络.基于内存.键值对存储数据库,使用ANSI C编写.所以在搭建Redis服务器时需要C语言的编 ...

  3. kubernetes部署redis主从高可用集群

    1.redis主从高可用集群结构 2.k8s部署有状态的服务选择 对于K8S集群有状态的服务,我们可以选择deployment和statefulset statefulset service& ...

  4. 【Redis】集群故障转移

    集群故障转移 节点下线 在集群定时任务clusterCron中,会遍历集群中的节点,对每个节点进行检查,判断节点是否下线.与节点下线相关的状态有两个,分别为CLUSTER_NODE_PFAIL和CLU ...

  5. Redis主从哨兵和集群搭建

    主从配置 哨兵配置 集群配置 1.主从: 国王和丞相,国王权力大(读写),丞相权利小(读) 2.哨兵: 国王和王子,国王死了(主服务挂掉),王子继位(从服务变主服务) 3.集群: 国王和国王,一个国王 ...

  6. redis + 主从 + 持久化 + 分片 + 集群 + spring集成

    Redis是一个基于内存的数据库,其不仅读写速度快,每秒可以执行大约110000的写操作,81000的读取操作,而且其支持存储字符串,哈希结构,链表,集合丰富的数据类型.所以得到很多开发者的青睐.加之 ...

  7. Centos7下安装redis实战(单机版以及集群)

    一.背景 因项目需要,要引入redis做缓存,就在centos7下亲自安装了一遍redis,刚好趁着这个机会就来把redis的概念以及单机版和集群版redis安装步骤记录下来,在此和大家一起分享. 二 ...

  8. Redis单机配置以及集群(sentinel、jediscluster)配置

    最近一直在使用Redis作为缓存数据库,在使用当中,刚开始没有注意配置问题. 1.纯粹的注入单机模式 <bean id="jedisPoolConfig" class=&qu ...

  9. CentOS7.2 安装redis 3.0.6集群

    1.环境确认 a.系统版本查看 [hadoop@p168 ~]$ cat /etc/redhat-release CentOS Linux release 7.2.1511 (Core)  b.安装依 ...

随机推荐

  1. oracle树形语句

    oracle树查询的最重要的就是select…start with…connect by…prior语法了.依托于该语法,我们可以将一个表形结构的以树的顺序列出来.在下面列述了oracle中树型查询的 ...

  2. WEBXONE IIS部署C/S程序

    WEBXONE IIS部署C/S程序 在EXE的主窗体的ONCREATE()里添加如下代码,部署的时候记得带wxoBase.dll. uses wxoExec; procedure TFrmMain. ...

  3. UnicodeEncodeError:'latin-1' codec can't encode characters in position 0-1: ordinal not in range(256)

    Scrapy爬虫向数据库写入数据时报错: UnicodeEncodeError:'latin-1' codec can't encode characters in position 0-1: ord ...

  4. linux下强行umount卸载设备

    卸载NFS,结果出现无法卸载的情况 umount /mnt/umount: /mnt: device is busy使用umount -f,问题依旧umount -f /mnt/umount2: De ...

  5. Solr 使用自定义 Query Parser(短语查询,精准查询)

    原文出处:http://blog.chenlb.com/2010/08/solr-use-custom-query-parser.html 由于 Solr 默认的 Query Parser 生成的 Q ...

  6. IEqualityComparer的使用

    当我们用Linq操作我们自定义的对像数组时,我们会发现有些方法直接使用的话根本不起作用,比如:Distinct.Except.Intersect等扩展方法. 对于我们自定义的对象的比较,我们必须实现I ...

  7. layui json数据格式要求

    layui  数据格式要求 layui有自己的一套特定的数据格式交互(这很重要),必须参数code:0,msg:“”,count:数据size(int),data:”数据List”.一般我们选择封装返 ...

  8. python网络编程--管道,信号量,Event,进程池,回调函数

    1.管道 加锁可以保证多个进程修改同一块数据时,同一时间只能有一个任务可以进行任务修改,即串行修改,速度慢了,但牺牲了速度却保证了数据安全. 文件共享数据实现进程间的通信,但问题是: 1.效率低(共享 ...

  9. GO学习笔记 - map

    map是GO语言中的一种高级数据类型,特点是key和value对应,这和Delphi中的Dictionary一样!map的声明格式:map[key数据类型]value数据类型.使用map前,必须用ma ...

  10. shell脚本报错:-bash: xxx: /bin/bash^M: bad interpreter: No such file or directory

    当我们把文件从windows系统中编辑的文件拷贝到linux系统中,如果我们执行文件会保存如下的错: shell脚本报错:-bash: xxx: /bin/bash^M: bad interprete ...