标签:直接 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获取对应数据。 太方便了
标签:直接 shard des 通过 存储 自身 读写分离 cas key
原文地址:https://www.cnblogs.com/rickyWang/p/14615112.html