redis cluster

redis 集群一般由 多个节点 组成,节点数量至少为 6 个,才能保证组成 完整高可用 的集群。每个节点需要 开启配置 cluster-enabled yes,让 redis 运行在 集群模式 下。

redis5之后使用redis-cli创建集群

redis-cli --cluster create  --cluster-replicas 1

--cluster-replicas 1 表示为集群中的每一个主节点指定一个从节点

实战

redis要求至少三主三从共6个节点才能组成redis集群。

1. 创建redis各实例目录
$ sudo mkdir -p /usr/local/redis-cluster
$ cd /usr/local/redis-cluster
$ sudo mkdir conf data log pig
$ sudo mkdir -p data/redis-6379 data/redis-6380 data/redis-6381 data/redis-6382 data/redis-6383 data/redis-6384

2. 修改配置文件(redis.conf)

复制6份 redis.confredis-cluster/conf分别命名为
redis-6379.confredis-6380.confredis-6381.confredis-6382.confredis-6383.confredis-6384.conf

模板:

# redis后台运行
daemonize yes
# 绑定的主机端口
bind 127.0.0.1
# 数据存放目录
dir /usr/local/redis-cluster/data/redis-${自定义}
# 进程文件
pidfile /var/run/redis-cluster/${自定义}.pid
# 日志文件
logfile /usr/local/redis-cluster/log/${自定义}.log
# 端口号
port 6379
# 开启集群模式,把注释#去掉
cluster-enabled yes
# 集群的配置,配置文件首次启动自动生成
cluster-config-file /usr/local/redis-cluster/conf/${自定义}.conf
# 请求超时,设置10秒
cluster-node-timeout 10000
# aof日志开启,有需要就开启,它会每次写操作都记录一条日志
appendonly yes

启动

创建start.sh文件到redis-cluster

执行chmod + x ./start.sh 使start.sh脚本具有执行权限
添加以下内容到start.sh

#!/bin/bash
path=conf/
cd $path
#启动redis
redis-server redis-6379.conf
redis-server redis-6380.conf
redis-server redis-6381.conf
redis-server redis-6382.conf
redis-server redis-6383.conf
redis-server redis-6384.conf
# 创建cluster集群
redis-cli --cluster create 127.0.0.1:6379 127.0.0.1:6380 127.0.0.1:6381 127.0.0.1:6382 127.0.0.1:6383 127.0.0.1:6384 --cluster-replicas 1

你可能感兴趣的:(redis cluster)