redis集群搭建

  1. 下载、编译、安装 Ruby
    yum install zlib-devel readline openssl-devel gcc gcc-c++

wget https://cache.ruby-lang.org/pub/ruby/2.6/ruby-2.6.1.tar.gz

tar xf ruby-2.6.1.tar.gz -C /usr/local
cd ruby-2.6.1/
./configure
make && make install

  1. 安装rubygem redis
    cd …
    wget https://rubygems.org/rubygems/rubygems-3.0.2.tgz
    tar -xf rubygems-3.0.2.tgz
    cd rubygems-3.0.2/
    ruby setup.rb

gem install redis

  1. 安装 redis-trib.rb
    mkdir /etc/redis
    cd /usr/local/redis-4.0.10/
    cp redis.conf /etc/redis/
    cp ~/redis-4.0.10/src/redis-trib.rb /usr/local/bin/

mkdir -p /redis/data/
rm -rf /redis/data/*
cd /etc/redis/

  1. 修改配置文件
    redis-6380.conf的配置文件如下
    port 6380
    daemonize yes
    protected-mode no
    pidfile “/var/run/redis-6380.pid”
    logfile “/var/log/redis-6380.log”
    dir “/redis/data”
    cluster-enabled yes
    cluster-config-file redis-6380.conf
    cluster-require-full-coverage no

sed ‘s/6380/6381/g’ redis-6380.conf > redis-6381.conf
sed ‘s/6380/6382/g’ redis-6380.conf > redis-6382.conf
sed ‘s/6380/7001/g’ redis-6380.conf > redis-7001.conf
sed ‘s/6380/7002/g’ redis-6380.conf > redis-7002.conf
sed ‘s/6380/7003/g’ redis-6380.conf > redis-7003.conf

  1. 启动服务
    redis-server /etc/redis/redis-6380.conf
    redis-server /etc/redis/redis-6381.conf
    redis-server /etc/redis/redis-6382.conf

scp redis-700* root@ela2:/etc/redis/

redis-server /etc/redis/redis-7001.conf
redis-server /etc/redis/redis-7002.conf
redis-server /etc/redis/redis-7003.conf

  1. 启动集群
    redis-trib.rb create --replicas 1 192.168.203.192:6380 192.168.203.192:6381 192.168.203.192:6382 192.168.203.128:7001 192.168.203.128:7002 192.168.203.128:7003

  2. 此时集群建立
    检测
    redis-cli -p 6380 set hello wenqian
    redis-cli -p 6381(任意一个节点) -c get hello
    在别的节点可以得到hello这个key对应的值

  3. 添加两个新的节点 6384 和 7004
    cp redis-7001.conf redis-6384.conf
    sed -i ‘s/7001/6384/g’ redis-6384.conf
    redis-server redis-6384.conf

cp redis-7001.conf redis-7004.conf
sed -i ‘s/7001/7004/g’ redis-7004.conf
redis-server redis-7004.conf

  1. 添加一个新的节点到集群为主节点
    redis-trib.rb add-node 192.168.203.192:6384 192.168.203.192:6380

  2. 添加一个新节点到集群为从节点
    (查看节点信息 redis-trib.rb del-node 192.168.203.192:7004)
    (查看节点id redis-cli -p 6380 cluster nodes)

redis-trib.rb add-node --slave --master-id 192.168.203.192:7004 192.168.203.192:6381

  1. 重新分配槽
    ./redis-trib.rb reshard 127.0.0.1:7001

  2. 移动要删除节点的数据槽到目前集群中的任意一个主节点
    redis-trib.rb reshard --from (要删除节点的id) --to (任意一个节点的id) --slots 100(槽数) 192.168.203.192:7001

反复操作以上指令,知道把需要删除节点的所有槽移动完毕

  1. 删除从节点
    redis-trib.rb del-node 192.168.122.106:7004 868c5098d6aab08d8cd41acbac046319700e4729

  2. 删除主节点
    redis-trib.rb del-node 192.168.122.106:6384 ed643cf5be217bc0bf78fe5c99fb6afa7c854e66

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值