安装好Redis 5以后,搭建一个典型的Redis集群,确定规格为3主3从模式。
1、集群配置文件
cd /usr/local/redis-5.0.8/conf
将系统默认的配置文件复制并修改为:
redis-8001.conf redis-8002.conf redis-8003.conf redis-8004.conf redis-8005.conf redis-8006.conf
2、编辑配置文件内容详情
#绑定IP地址
bind 192.25.106.216
#端口
port 8001
#pid文件
pidfile /var/run/redis_8001.pid
#日志文件地址
logfile "/usr/local/redis-5.0.8/logs/8001/redis-8001.log"
#数据文件地址
dir /usr/local/redis-5.0.8/redis-cluster/8001
#master连接密码
masterauth 123456
#客户端在处理任何命令时都要验证身份和密码。
requirepass 123456
######################### APPEND ONLY MODE #########################
# 默认情况下,Redis是异步的把数据导出到磁盘上。这种模式在很多应用里已经足够好,但Redis进程出问题或断电时可能造成一段时间的写操作丢失(这取决于配置的save指令)。
# AOF是一种提供了更可靠的替代持久化模式,例如使用默认的数据写入文件策略(参见后面的配置)。
# 在遇到像服务器断电或单写情况下Redis自身进程出问题但操作系统仍正常运行等突发事件时,Redis能只丢失1秒的写操作。
# AOF和RDB持久化能同时启动并且不会有问题。
# 如果AOF开启,那么在启动时Redis将加载AOF文件,它更能保证数据的可靠性。
appendonly yes
appendfilename "appendonly.aof"
aof-load-truncated yes
################################ REDIS CLUSTER ###############################
#集群启用
cluster-enabled yes
#集群配置文件
cluster-config-file nodes-8001.conf
# 集群节点超时毫秒数。超时的节点将被视为不可用状态。
cluster-node-timeout 15000
# replicaof <masterip> <masterport> 这里需要注释掉
3、根据conf配置文件,新建集群用到的各个文件夹
mkdir /usr/local/redis-5.0.8/redis-cluster
在测试环境因为资源有限,所以我们使用8001~8006代替6台节点。在redis-cluster目录下新建目录:8001 8002 8003 8004 8005 8006
4、启动Redis服务
如果Redis进程在的话,需要先关闭所有进程。命令如下:
./redis-cli -h 192.25.106.216 -c -p 8001 -a 123456 shutdown
挨个启动所有的节点。
./redis-server /usr/local/redis-5.0.8/conf/redis-8001.conf
5、创建集群,命令中的-cluster-replicas 代表主从节点的比例这里因为是3主3从,所以参数为1
./redis-cli --cluster create -a 123456 --cluster-replicas 1 192.25.106.216:8001 192.25.106.216:8002 192.25.106.216:8003 192.25.106.216:8004 192.25.106.216:8005 192.25.106.216:8006
命令行不报错的话,则集群基本创建成功。