node1-node6
1.到http://download.redis.io/redis-stable/redis.conf下载官方redis.conf文件
2.修改对应端口
# bind 127.0.0.1 //加上注释# protected-mode no //关闭保护模式 port 6061 //绑定自定义端口 # daemonize yes //禁止redis后台运行 pidfile /var/run/redis_6061.pid cluster-enabled yes //开启集群 把注释#去掉 cluster-config-file nodes_6061.conf //集群的配置 配置文件首次启动自动生成 appendonly yes //开启aof cluster-announce-ip 10.xx.xx.xx //要宣布的IP地址。nat模式要指定宿主机IP cluster-announce-port 6061 //要宣布的数据端口。 cluster-announce-bus-port 16061 //要宣布的集群总线端口
3.docker-compose.yml
version: '3.4' services: node1: image: redis:5.0.5 container_name: redis-node1 restart: always ports: - 6061:6061 - 16061:16061 volumes: - /home/smb/data/redis-cluster/node1:/data - /home/smb/config/redis-cluster/node1:/usr/local/etc/redis command: redis-server /usr/local/etc/redis/redis.conf node2: image: redis:5.0.5 container_name: redis-node2 restart: always ports: - 6062:6062 - 16062:16062 volumes: - /home/smb/data/redis-cluster/node2:/data - /home/smb/config/redis-cluster/node2:/usr/local/etc/redis command: redis-server /usr/local/etc/redis/redis.conf node3: image: redis:5.0.5 container_name: redis-node3 restart: always ports: - 6063:6063 - 16063:16063 volumes: - /home/smb/data/redis-cluster/node3:/data - /home/smb/config/redis-cluster/node3:/usr/local/etc/redis command: redis-server /usr/local/etc/redis/redis.conf node4: image: redis:5.0.5 container_name: redis-node4 restart: always ports: - 6064:6064 - 16064:16064 volumes: - /home/smb/data/redis-cluster/node4:/data - /home/smb/config/redis-cluster/node4:/usr/local/etc/redis command: redis-server /usr/local/etc/redis/redis.conf node5: image: redis:5.0.5 container_name: redis-node5 restart: always ports: - 6065:6065 - 16065:16065 volumes: - /home/smb/data/redis-cluster/node5:/data - /home/smb/config/redis-cluster/node5:/usr/local/etc/redis command: redis-server /usr/local/etc/redis/redis.conf node6: image: redis:5.0.5 container_name: redis-node6 restart: always ports: - 6066:6066 - 16066:16066 volumes: - /home/smb/data/redis-cluster/node6:/data - /home/smb/config/redis-cluster/node6:/usr/local/etc/redis command: redis-server /usr/local/etc/redis/redis.conf
4. docker run --rm -it zvelo/redis-trib create --replicas 1 ip1:6061 ip2:6062 ip3:6063 ip4:6064 ip5:6065 ip6:6066