redis高可用(哈希槽做法)

版权声明:皆为本人原创,复制必究 https://blog.csdn.net/m493096871/article/details/88026431

只需要一台master

sysctl vm.overcommit_memory

如果是0要打开

sysctl -w vm.overcommit_memory=1

mkdir /usr/local/rediscluster

cd /usr/local/rediscluster

mkdir 700{1..6}

cd 7001

vim redis.conf

port 7001

cluster-enabled yes

cluster-config-file  nodes.conf

cluster-node-timeout  5000

appendonly yes

pidfile "/usr/local/rediscluster/7001/redis.pid"

logfile "/usr/local/rediscluster/7001/redis.log"

daemonize yes

dir "/usr/local/rediscluster/7001"

##############

port 7001
cluster-enabled yes
cluster-config-file  nodes.conf
cluster-node-timeout  5000
appendonly yes
pidfile "/usr/local/rediscluster/7001/redis.pid"
logfile "/usr/local/rediscluster/7001/redis.log"
daemonize yes
dir "/usr/local/rediscluster/7001"

##############

master 端

redis-server  /usr/local/rdiscluster/7001/redis.conf

cp redis.conf ../7002/

3 4 5 6

修改端口

vim ../7002/redis.conf

%s/7001/7002/g

全部修改为对应文件的端口和名字

分别用 redis-server  redis.conf 启动

 

创建集群

redis-cli --cluster help 

redis-server redis.conf    6个打开

[root@server4 7001]# redis-server ../7003/redis.conf
[root@server4 7001]# redis-server ../7004/redis.conf
[root@server4 7001]# redis-server ../7005/redis.conf
[root@server4 7001]# redis-server ../7006/redis.conf

redis-cli --cluster  create --cluster-replicas 1  127.0.0.1:7001 127.0.0.1:7002 127.0.0.1:7003 127.0.0.1:7004 127.0.0.1:7005 127.0.0.1:7006

后面的1表示拥有一个slave

无中心化,任何一个都是master

rediscli --cluster info 127.0.0.1:7001

 redis-cli -c -p 7001

-c 表示集群管理 cluster

set name wxh

get name

任何一个结点都是一个入口

如果shutdown 7002

2的奴隶自动接管

但是shutdown主人的奴隶、半数以上集群不能挂掉,否则会出问题。

直接redis-cli redis.conf  对应的down号即可

再添加

上述方法添加7007 7008

redis-cli --cluster add-node 127.0.0.1:7007 127.0.0.1:7001

后面为已存在的端口

redis-cli -cluster check 12.0.0.1:7001

检查下发现没有槽

为主添加从

 redis-cli --cluster add-node   --cluster-slave  --cluster-master-id=fc3e9fdd5b64e64758fea68c4ae1a4200a30c7d6  127.0.0.1:7007 127.0.0.1:7008 

注意顺序

迁移哈希槽

redis-cli --cluster reshard --cluster-from all --cluster-to  fdsfa87f87dsf87y8weyf87hy8fhew934r98   --cluster-slots 300 --cluster--yes 127.0.0.1:7001

均衡哈希槽

redis-cli --cluster rebalance --cluster-threshold 1 --cluster-use-empty-masters 127.0.0.1:7001

猜你喜欢

转载自blog.csdn.net/m493096871/article/details/88026431
今日推荐