redis主从复制、Sentinel 分布式系统、redis集群

redis是一种高级的存储系统,支持多种数据类型的存储,包括字符串、酸列、列表、集合和有序集合。
一、redis安装并启动
解压安装包 并进入目录进行源码编译安装
tar zxf redis-6.2.1.tar.gz
在这里插入图片描述

修改启动脚本
vim /root/redis-6.2.1/utils/install_server.sh
redis主从复制、Sentinel 分布式系统、redis集群_第1张图片

安装redis启动脚本./install_server.sh
启动redis/etc/init.d/redis_6379 start
交互式测试
redis主从复制、Sentinel 分布式系统、redis集群_第2张图片

二、redis常用命令
redis主从复制、Sentinel 分布式系统、redis集群_第3张图片

三、redis实现主从复制
redis主从复制、Sentinel 分布式系统、redis集群_第4张图片

主机redis配置,使其监听所有网段 重启服务
从机安装redis,并配置相关文件
vim /etc/redis/6379.conf

在这里插入图片描述
在这里插入图片描述

重启服务

测试:
redis主从复制、Sentinel 分布式系统、redis集群_第5张图片
redis主从复制、Sentinel 分布式系统、redis集群_第6张图片

四、Sentinel分布式监控
主要作用:当集群中的某个节点有故障时,可以自动的进行故障转移的操作。

监控(Monitoring): Sentinel 会不断地检查你的主服务器和从服务器是否运作正常。
提醒(Notification): 当被监控的某个 Redis 服务器出现问题时, Sentinel 可以通过 API 向管理员或者其他应用程序发送通知。
自动故障迁移(Automatic failover): 当一个主服务器不能正常工作时, Sentinel 会开始一次自动故障迁移操作, 它会将失效主服务器的其中一个从服务器升级为新的主服务器, 并让失效主服务器的其他从服务器改为复制新的主服务器。

操作:
server 4中修改配置文件vim /etc/redis/sentinel.conf 修改二处
84 sentinel monitor mymaster 172.25.9.5 6379 2
125 sentinel down-after-milliseconds mymaster 10000

将修改后的配置文件传给slave机
scp sentinel.conf server5:/etc/redis/
scp sentinel.conf server6:/etc/redis/

开始监控redis-sentinel /etc/redis/sentinel.conf #监控
其余两台机也开始监控redis主从复制、Sentinel 分布式系统、redis集群_第7张图片
down掉master
redis-cli
可以看到监控两次后切换到了新的master

redis主从复制、Sentinel 分布式系统、redis集群_第8张图片

查看slave主机redis信息
redis-cli
info

原来的slave切换到成了master主机。
redis主从复制、Sentinel 分布式系统、redis集群_第9张图片

重启server4 变成了slave
redis主从复制、Sentinel 分布式系统、redis集群_第10张图片

redis主从复制、Sentinel 分布式系统、redis集群_第11张图片

查看server4的redis主配置文件

redis主从复制、Sentinel 分布式系统、redis集群_第12张图片

五、redis集群–Cluster
集群就是一组相互独立的计算机,通过高速的网络组成一个计算机系统,每个集群节点都是运行其自己进程的一个独立服务器。通过网络连接组合成一个组合来共同完一个任务。

redis集群特点:
1.去中心化,不存在中心节点或者代理节点;
2.没有统一的入口,集群内部的节点是相互通信的(PING-PONG机制),每个节点都是一个redis实例;
3.redis-cluster 投票容错机制判断节点是否能够正常使用,少数过半判断节点down掉则判定节点down。
4.哈希槽:集群内置了16384个slot(哈希槽),将所有的物理节点映射到了这16384[0-16383]个slot上,或者说把这些slot均等的分配给了各个节点。注意:当任意一个节点挂掉后,集群将无法使用。
5.redis集群最多有16384个节点。

1.手动创建集群
创建集群目录

cd /usr/local/
mkdir cluster
cd cluster
mkdir 7000 7001 7002 7003 7004 7005
在这里插入图片描述

编辑各个节点配置文件
cd 7000 vim redis.conf
redis主从复制、Sentinel 分布式系统、redis集群_第13张图片

启动集群
redis主从复制、Sentinel 分布式系统、redis集群_第14张图片
在这里插入图片描述

redis主从复制、Sentinel 分布式系统、redis集群_第15张图片

编辑配置文件并启动所有集群

yum install tcl

创建集群并配对
redis主从复制、Sentinel 分布式系统、redis集群_第16张图片

测试:

redis主从复制、Sentinel 分布式系统、redis集群_第17张图片

注意:重新启动集群需要进入指定集群目录

down掉其中的一个masterredis主从复制、Sentinel 分布式系统、redis集群_第18张图片

集群自动分配master

redis主从复制、Sentinel 分布式系统、redis集群_第19张图片

重新启动后变为slave
redis主从复制、Sentinel 分布式系统、redis集群_第20张图片

2.脚本创建集群

redis主从复制、Sentinel 分布式系统、redis集群_第21张图片

生成集群
redis主从复制、Sentinel 分布式系统、redis集群_第22张图片

集群配对
redis主从复制、Sentinel 分布式系统、redis集群_第23张图片

你可能感兴趣的:(redis,缓存,数据库)