Redis版本:5.0.5
1机6节点、3主3从
1.装Redis5.0.5版本至/usr/local/redis/目录下
2.给每个实例创建1个目录,以端口号为区分,用来存放持久化文件和日志等文件。
mkdir /usr/local/redis/6379
mkdir /usr/local/redis/6380
mkdir /usr/local/redis/6381
mkdir /usr/local/redis/6382
mkdir /usr/local/redis/6383
mkdir /usr/local/redis/6384
3.在/usr/local/redis/bin/conf/目录下给每个实例拷贝1个redis配置文件,以每个实例的端口号进行区分。
redis6379.conf
redis6380.conf
redis6381.conf
redis6382.conf
redis6383.conf
redis6384.conf
4.每个配置文件在原来的redis.conf的配置基础上更改以下配置,这里以redis6379.conf为例
port 6379 #端口
cluster-enabled yes #启用集群模式
cluster-config-file nodes-6379.conf
cluster-node-timeout 15000 #超时时间
appendonly yes
daemonize yes #后台运行
protected-mode no #非保护模式
pidfile /var/run/redis_6379.pid
logfile "/usr/local/redis/6379/redis_6379.log"
其中 6379 需要随着 文件名的不同调增。
4.启动redis
/usr/local/redis/bin/redis-server /usr/local/redis/bin/conf/redis6379.conf
/usr/local/redis/bin/redis-server /usr/local/redis/bin/conf/redis6380.conf
/usr/local/redis/bin/redis-server /usr/local/redis/bin/conf/redis6381.conf
/usr/local/redis/bin/redis-server /usr/local/redis/bin/conf/redis6382.conf
/usr/local/redis/bin/redis-server /usr/local/redis/bin/conf/redis6383.conf
/usr/local/redis/bin/redis-server /usr/local/redis/bin/conf/redis6384.conf
启动集群(生产环境写外网ip,自己测试写127.0.0.1)
/usr/local/redis/bin/redis-cli --cluster create 148.70.153.63:6379 148.70.153.63:6380 148.70.153.63:6381 148.70.153.63:6382 148.70.153.63:6383 148.70.153.63:6384 --cluster-replicas 1
至此,Reids5 集群搭建完成。
5.关闭集群
把redis-5.0.5安装目录(解压的redis安装源码包)里的 utils文件夹拷贝到redis目录
cp -r /usr/local/redis-5.0.5/utils/ /usr/local/redis/bin/
切换到redis下的untils/create-cluster文件夹下
cd /usr/local/redis/bin/utils/create-cluster
修改create-cluster文件
端口PROT设置为6378,NODES为6,工具会自动累加1 生成 6379-6384 六个节点 用于操作。
将 start和stop操作时路径改为自己的路径(写成绝对路径)
修改后,执行如下命令关闭集群:
/usr/local/redis/bin/utils/create-cluster/create-cluster stop
开启集群
/usr/local/redis/bin/utils/create-cluster/create-cluster start
可用 ps -ef | grep redis 查看
借鉴
https://www.gjie.cn/2487.html
https://www.jianshu.com/p/9d6a55a42a8b
https://my.oschina.net/ruoli/blog/2252393