一、redis 的集中搭建方式
1.单体架构
单独一个redis服务
2.主从模式
一主多从,出问题需要运维手动切换主从
3.哨兵模式
通过哨兵自动切换,存在问题:出现 master 挂了后,重新选主后可能瞬间不可用

4.高可用集群
如果一个小集群挂了后,其他小集群依然可以使用
二.高可用集群模式配置
1.下载 redis
官网地址:https://redis.io/
https://download.redis.io/releases/redis-6.2.5.tar.gz
下载后放到 /usr/local/src
2.解压
cd /usr/local/src
tar -zxvf redis-6.2.5.tar.gz
3.移动redis 到 /usr/local
mv redis-6.2.5 ../
4.编译&安装
cd /usr/local/redis-6.2.5
make
make install
5.配置集群
1)配置第一个节点
mkdir -p /usr/local/redis-cluster
cd /usr/local/redis-cluster
mkdir 8001
cp /usr/local/redis-6.2.5/src/redis-server /usr/local/redis-cluster/8001
cp /usr/local/redis-6.2.5/src/redis.conf /usr/local/redis-cluster/8001
#修 改redis 配置
vim /usr/local/redis-cluster/8001/redis.conf
配置其他节点
cp -r /usr/local/redis-cluster/8001 /usr/local/redis-cluster/8002
cp -r /usr/local/redis-cluster/8001 /usr/local/redis-cluster/8003
cp -r /usr/local/redis-cluster/8001 /usr/local/redis-cluster/8004
cp -r /usr/local/redis-cluster/8001 /usr/local/redis-cluster/8005
cp -r /usr/local/redis-cluster/8001 /usr/local/redis-cluster/8006
注意:8001、8002、8003、8004、8005、8006 需要注意修改bind 的地址、端口信息
可以用批量替换 :%s/8001/8003/g 格式,将 8001 批量替换成 8003
2)启动服务确认配置文件是否正常;
分别进入 8001、8002、8003、8004、8005、8006目录执行
redis-server redis.conf
如上图,配置没问题,可以正常启动
3)安装 ruby 注意:高版本是否需要,还不确定,redis 3.0版本需要
如果安装慢,可以考虑阿里云加速镜像
yum install ruby
yum install rubygems
gem install redis
注意:可以通过 --version 指定版本,例如:gem install redis --version 3.0.0
6.创建 redis 集群
cd /usr/local/redis-6.2.5/src
./redis-cli --cluster create 192.168.116.129:8001 192.168.116.129:8002 192.168.116.129:8003 192.168.116.129:8004 192.168.116.129:8005 192.168.116.129:8006 --cluster-replicas 1
最后的一个1,是 master/salve 的数量, 我这里每个小集群是1主1从 1/1 ,所以是1,假设配置1主2从,则是1/2=0.5
提示是否配置,输入 yes :
7.验证集群
cd /usr/local/redis-cluster/8001
./redis-cli -c -h 192.168.116.129 -p 8001
发现执行 set key value 的时候,会自动切换服务区自动设置
8.查看集群状态
cluster info
9.关闭集群
./redis-cli -c -h 192.168.116.129 -p 8001 shutdown