1、在三台主机上安装redis
将配置文件放在/usr/local/docker/redis/master/conf/和/usr/local/docker/redis/slave/conf/文件中,配置文件信息如下
### 允许远程连接
bind 0.0.0.0
##任何client不用认证即可连接
protected-mode no
## 持久化
appendonly yes
## 密码
requirepass {ztb06|^E+DmO|t-vv5h
##集群密码
masterauth {ztb06|^E+DmO|t-vv5h
##默认为6379端口
port ${PORT}
# 集群
cluster-enabled yes
##集群配置名
cluster-config-file nodes.conf
##超时时间
cluster-node-timeout 15000
##实际为各节点网卡分配ip
cluster-announce-ip 外网ip
##节点映射端口
cluster-announce-port ${PORT}
##节点总线端
cluster-announce-bus-port 1${PORT}
启动master容器
docker run -dti -p 6379:6379 -p 16379:16379 --restart=always --name redis_master -v /usr/local/docker/redis/master/data:/data -v /usr/local/docker/redis/master/conf/redis.conf:/etc/redis/redis.conf -d redis redis-server /etc/redis/redis.conf
启动slave容器
docker run -dti -p 6378:6379 -p 16378:16379 --restart=always --name redis_slave -v /usr/local/docker/redis/slave/data:/data -v /usr/local/docker/redis/slave/conf/redis.conf:/etc/redis/redis.conf -d redis redis-server /etc/redis/redis.conf
2、启动集群
在主节点master上运行
#进入redis容器
docker exec -it redis_master /bin/bash
#启动集群 -a 后为密码 --cluster-replicas 1 1代表1个主节点有一个备份节点
redis-cli --cluster create 10.24.68.209:6379 10.24.68.210:6379 10.24.68.207:6379 10.24.68.210:6378 10.24.68.207:6378 10.24.68.209:6378 --cluster-replicas 1 -a '{ztb06|^E+DmO|t-vv5h'