码迷,mamicode.com
首页 > 其他好文 > 详细

docker建立redis集群(多分片+多副本)

时间:2021-04-06 14:07:09      阅读:0      评论:0      收藏:0      [点我收藏+]

标签:直接   shard   des   通过   存储   自身   读写分离   cas   key   

# 整理下docker 创建redis集群多分片shards、多副本replicas的命令

# 分片平均系统数据,副本保证读写分离,
docker pull redis
docker rm redis-node1 redis-node2 redis-node3 redis-node4 redis-node5 redis-node6 redis-node7 redis-node8 redis-node9

# 指定集群模式,通过宿主机网络,直接对应端口。 -v表示将宿主机目录和docker目录对应,直接在宿主机可以查看/修改docker内数据
docker create --name redis-node1 --net host -v /Users/bytedance/Documents/project/docker/redis_cluster/data/node1:/data redis --cluster-enabled yes --cluster-config-file nodes-node-1.conf --port 6378
docker create --name redis-node2 --net host -v /Users/bytedance/Documents/project/docker/redis_cluster/data/node2:/data redis --cluster-enabled yes --cluster-config-file nodes-node-2.conf --port 6379
docker create --name redis-node3 --net host -v /Users/bytedance/Documents/project/docker/redis_cluster/data/node3:/data redis --cluster-enabled yes --cluster-config-file nodes-node-3.conf --port 6380
docker create --name redis-node4 --net host -v /Users/bytedance/Documents/project/docker/redis_cluster/data/node4:/data redis --cluster-enabled yes --cluster-config-file nodes-node-4.conf --port 6381
docker create --name redis-node5 --net host -v /Users/bytedance/Documents/project/docker/redis_cluster/data/node5:/data redis --cluster-enabled yes --cluster-config-file nodes-node-5.conf --port 6382
docker create --name redis-node6 --net host -v /Users/bytedance/Documents/project/docker/redis_cluster/data/node6:/data redis --cluster-enabled yes --cluster-config-file nodes-node-6.conf --port 6383
docker create --name redis-node7 --net host -v /Users/bytedance/Documents/project/docker/redis_cluster/data/node7:/data redis --cluster-enabled yes --cluster-config-file nodes-node-7.conf --port 6384
docker create --name redis-node8 --net host -v /Users/bytedance/Documents/project/docker/redis_cluster/data/node8:/data redis --cluster-enabled yes --cluster-config-file nodes-node-8.conf --port 6385
docker create --name redis-node9 --net host -v /Users/bytedance/Documents/project/docker/redis_cluster/data/node9:/data redis --cluster-enabled yes --cluster-config-file nodes-node-9.conf --port 6386

docker rm redis-node1 redis-node2 redis-node3 redis-node4 redis-node5 redis-node6 redis-node7 redis-node8 redis-node9

docker start redis-node1 redis-node2 redis-node3 redis-node4 redis-node5 redis-node6 redis-node7 redis-node8 redis-node9

# 创建集群模式, --cluster-replicas 2 表示每个主节点有多少slave node,整个可以计算有多少master(集群最少三个主节点)
redis-cli --cluster create 127.0.0.1:6378 127.0.0.1:6379 127.0.0.1:6380 127.0.0.1:6381 127.0.0.1:6382 127.0.0.1:6383 127.0.0.1:6384 127.0.0.1:6385 127.0.0.1:6386 --cluster-replicas 2

# -c表示集群模式,否则是单机,set 到非自身节点存储的数据时 会报err
redis-cli -c 进入集群模式,执行set,会自动redirect到key对应slot的节点,get获取对应数据。 太方便了

docker建立redis集群(多分片+多副本)

标签:直接   shard   des   通过   存储   自身   读写分离   cas   key   

原文地址:https://www.cnblogs.com/rickyWang/p/14615112.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!