cluster如果不用redis-trib.rb管理的话,手动添加槽是非常痛苦的。因为cluster addslots 需要把添加的槽都要写上。
这里写了一个shell,可以批量添加槽—— cluster_slot.sh
#!/bin/sh
begin_slot=$1
end_slot=$2
m_host=$3
m_port=$4
for((i=$begin_slot;i<=$end_slot;i++));
do
m_slot=”${m_slot} ${i}”
done
echo “add slots from ${begin_slot} to ${end_slot} :”
redis-cli -h ${m_host} -p ${m_port} cluster addslots ${m_slot}
使用:
sh cluster_slot.sh begin_slot end_slot m_host m_port
这里需要传4个参数,分别是起始槽、结束槽、需要分配槽的redis地址、需要分配槽的redis端口:
如:sh cluster_slot.sh 0 5461 127.0.0.1 6379
当建立成功后,会显示:
add slots from 0 to 5461 :
OK