redis-cluster部署
redis版本:v6.2.10 安装redis-cluster集群模式 三台物理机 主从模式
172.22.15.94
172.22.15.95
172.22.15.84
1介绍
1.Redis-Cluster采用无中心结构,每个节点保存数据和整个集群状态,每个节点都和其他所有节点连接。
2.Redis-cluster集群中有16384(0-16383)个哈希槽,每个redis实例负责一部分slot/槽位。也可以向集群中添加或者删除节点。
3.主从模式:为保证高可用性,从节点则是从主节点拉取数据备份,当主节点挂掉,就会有这个从节点充当主节点,从而保证集群不会挂掉.
2.每台节点做解析
vim /etc/hosts
172.22.15.84 node1
172.22.15.94 node2
172.22.15.95 node3
3.每台安装redis
安装redis(首先准备v6.2.10的安装包)
tar xzvf redis-6.2.10.tar.gz -C /usr/local/
cd /data/
mv redis-6.2.10/ redis
cd /usr/local/redis/
make #编译
mkdir /usr/local/redis/data #创建存放数据的目录
4.每台创建节点目录
mkdir /usr/local/redis/data/{redis6380,redis6381}
5.修改配置文件
cp /usr/local/redis/redis.conf /usr/local/redis/data/redis6380
cd /usr/local/redis/data/redis6380
vim redis.conf(:/ 搜出来进行修改)
bind 192.168.116.172 ---->0.0.0.0
port 6379 ---->6380
daemonize no ---->yes
pidfile /var/run/redis_6379.pid ---->6380
logfile "" ---->logfile /var/log/redis_6380.log
dir /data/redis/data ---->/usr/local/redis/data
appendonly no ---->yes
cluster-enabled yes ---->解开注释,去掉空格
cluster-config-file nodes-6379.conf---->6380
cluster-node-timeout 5000 ---->解开注释,去掉空格
cluster-replica-validity-factor 10 ---->解开注释,去掉空格
cluster-migration-barrier 1 ---->解开注释,去掉空格
cluster-require-full-coverage yes ---->解开注释,去掉空格
6.将配置文件cp到其他节点
cp redis.conf /usr/local/redis/data/redis6381
之后去到每个配置文件下面去修改(5行改变,包括注释的一行)
/usr/local/redis/data/redis6381
:%s/6380/6381/g #根据端口进行修改
systemctl stop firewalld
cd /usr/local/redis/src #三台机器上都需要操作
nohup ./redis-server ../data/redis6380/redis.conf & #根据端口进行修改
nohup ./redis-server ../data/redis6381/redis.conf & #根据端口进行修改
7.查看端口
netstat -nltp |grep redis
8.创建cluster集群,在任意一个节点操作,这个过程需保证6个redis实例都是运行状态
cd /usr/local/redis/src
./redis-cli --cluster create --cluster-replicas 1 172.22.15.84:6380 172.22.15.84:6381 172.22.15.94:6380 172.22.15.94:6381 172.22.15.95:6380 172.22.15.95:6381
9.查看集群状态
./redis-cli -h 172.22.15.94 -c -p 6380
6380> ping
PONG
6380> cluster info #查看集群信息
6380> cluster nodes #查看集群实例