若要让集群正常运作至少需要三个主节点,每个主节点附带一个从节点,所以一共六个节点。端口为7000-7005。
1、创建配置文件目录
mkdir /mydata/redis cd /mydata/redis mkdir 7000 7001 7002 7003 7004 7005
2、redis.conf配置
port 7000 cluster-enabled yes cluster-config-file nodes.conf cluster-node-timeout 5000 appendonly yes
配置文件中的 cluster-enabled 选项用于开实例的集群模式, 而 cluster-conf-file 选项则设定了保存节点配置文件的路径, 默认值为 nodes.conf。该节点配置文件无须人为修改,它由Redis集群在启动时自动创建, 并在有需要时自动进行更新。
cat <7000/redis.conf port 7000 cluster-enabled yes cluster-config-file nodes.conf cluster-node-timeout 5000 appendonly yes EOF cat < 7001/redis.conf port 7001 cluster-enabled yes cluster-config-file nodes.conf cluster-node-timeout 5000 appendonly yes EOF cat < 7002/redis.conf port 7002 cluster-enabled yes cluster-config-file nodes.conf cluster-node-timeout 5000 appendonly yes EOF cat < 7003/redis.conf port 7003 cluster-enabled yes cluster-config-file nodes.conf cluster-node-timeout 5000 appendonly yes EOF cat < 7004/redis.conf port 7004 cluster-enabled yes cluster-config-file nodes.conf cluster-node-timeout 5000 appendonly yes EOF cat < 7005/redis.conf port 7005 cluster-enabled yes cluster-config-file nodes.conf cluster-node-timeout 5000 appendonly yes EOF
启动Redis实例
docker run -d --name redis7000 -v /mydata/redis/7000/redis.conf:/redis.conf --net=host --restart=always redis redis-server /redis.conf docker run -d --name redis7001 -v /mydata/redis/7001/redis.conf:/redis.conf --net=host --restart=always redis redis-server /redis.conf docker run -d --name redis7002 -v /mydata/redis/7002/redis.conf:/redis.conf --net=host --restart=always redis redis-server /redis.conf docker run -d --name redis7003 -v /mydata/redis/7003/redis.conf:/redis.conf --net=host --restart=always redis redis-server /redis.conf docker run -d --name redis7004 -v /mydata/redis/7004/redis.conf:/redis.conf --net=host --restart=always redis redis-server /redis.conf docker run -d --name redis7005 -v /mydata/redis/7005/redis.conf:/redis.conf --net=host --restart=always redis redis-server /redis.conf
执行命令配置集群
# 进入容器执行集群配置命令 docker exec -it redis7000 redis-cli --cluster create 192.168.31.252:7000 192.168.31.252:7001 192.168.31.252:7002 192.168.31.252:7003 192.168.31.252:7004 192.168.31.252:7005 --cluster-replicas 1
查看集群信息
docker exec -it redis7000 redis-cli -c -p 7000 cluster info cluster nodes
参考地址:https://blog.csdn.net/weixin_38305440/article/details/119374989



