目录
步骤五、Node01节点修改7001端口Redis服务配置文件
步骤六、Node01节点修改7002端口Redis服务配置文件
步骤九、Node02节点、Node03节点根据步骤一至步骤八分别安装和启动7001、7002端口Redis服务
三、模拟master节点192.168.110.131:7001宕机
(五)、更换192.168.110.133的7003端口Redis服务节点身份
Redis服务主从模式下,当主节点宕机时,需要人工干预手动切换主节点,无法进行故障自动切换。为了解决这个问题,Redis服务在主从模式的基础上延伸出哨兵(Sentinel)模式。
Redis服务哨兵(Sentinel)模式下,虽然可以进行故障自动切换,但是仍然只有一个主节点。当服务并发写请求比较大时,哨兵(Sentinel)模式下并不能缓解写压力,故而Redis服务延伸出集群模式。集群模式具有高可用、可扩展性、分布式、容错等特性。最大的特点在于可扩展性,拥有多个主节点,可同时对多个主节点进行写入操作,从而缓解了写压力。当系统容量足够大时,读请求也可以通过增加从节点来分摊读压力。
本次Redis服务集群模式搭建采取三主三从的架构。为了节约服务器资源,每台服务器节点部署两个Redis服务实例,通过不同的端口号进行区分。
一、环境规划
- 集群节点规划
节点名称 |
IP地址 |
Redis实例01端口 |
Redis实例02端口 |
Node01 |
192.168.110.131 |
7001 |
7002 |
Node02 |
192.168.110.132 |
7001 |
7002 |
Node03 |
192.168.110.133 |
7001 |
7002 |
- 系统版本
CentOS Linux release 7.7.1908 (Core)
- 关闭防火墙
此处为方便演示,Node01节点、Node02节点、Node03节点直接关闭防火墙。
生产环境可以根据实际需求开通服务器防火墙策略。
systemctl stop firewalld
systemctl stop iptables
- Redis版本
此处使用redis-5.0.10版本
- 环境依赖
需要安装gcc-c++
[root@Node01 ~]# yum install -y gcc-c++
[root@Node02 ~]# yum install -y gcc-c++
[root@Node03 ~]# yum install -y gcc-c++
二、Redis服务集群搭建过程
步骤一、Node01节点创建目录
- 创建安装主目录
[root@Node01 ~]# mkdir -p /data/redis/cluster
- 创建7001端口Redis实例相关目录
创建7001端口Redis实例主目录
[root@Node01 ~]# mkdir -p /data/redis/cluster/redis_7001
创建7001端口Redis实例数据目录
[root@Node01 ~]# mkdir -p /data/redis/cluster/redis_7001/data
- 创建7002端口Redis实例相关目录
创建7002端口Redis实例主目录
[root@Node01 ~]# mkdir -p /data/redis/cluster/redis_7002
创建7002端口Redis实例数据目录
[root@Node01 ~]# mkdir -p /data/redis/cluster/redis_7002/data
- 查看目录是否成功创建
[root@Node01 ~]# ll /data/redis/cluster
[root@Node01 ~]# ll /data/redis/cluster/redis_7001
[root@Node01 ~]# ll /data/redis/cluster/redis_7002
步骤二、Node01节点下载Redis安装包
- 安装wget命令
[root@Node01 ~]# yum install -y wget
- 进入主目录
[root@Node01 ~]# cd /data/redis/cluster
- 下载安装包
此处使用redis-5.0.10版本。
[root@Node01 cluster]# wget http://download.redis.io/releases/redis-5.0.10.tar.gz
- 复制安装包到7001端口Redis实例主目录
[root@Node01 cluster]# cp /data/redis/cluster/redis-5.0.10.tar.gz /data/redis/cluster/redis_7001
[root@Node01 cluster]# ll /data/redis/cluster/redis_7001
- 复制安装包到7002端口Redis实例主目录
[root@Node01 cluster]# cp /data/redis/cluster/redis-5.0.10.tar.gz /data/redis/cluster/redis_7002
[root@Node01 cluster]# ll /data/redis/cluster/redis_7002
步骤三、Node01节点安装7001端口Redis服务
- 解压安装包
[root@Node01 cluster]# cd /data/redis/cluster/redis_7001/
[root@Node01 redis_7001]# tar -zxvf redis-5.0.10.tar.gz
- make编译
[root@Node01 redis_7001]# cd /data/redis/cluster/redis_7001/redis-5.0.10
[root@Node01 redis-5.0.10]# make