redis集群

来源:互联网 发布:java 延时10秒 编辑:程序博客网 时间:2024/06/05 10:32

redis集群

下载安装包

cluster.tar.gz

    wget http://130.10.7.123/cluster.tar.gz    tar -xvzf cluster.tar.gz    cd cluster

安装redis-trib依赖环境

  • 安装zlib

    解压zlib-1.2.7.tar.gz文件,安装

    tar -xvzf zlib-1.2.7.tar.gz    cd zlib-1.2.7    rpm -Uvh --oldpackage *.rpm    cd ..
  • 安装ruby

解压ruby-2.4.0.tar.gz文件,安装

    tar -xvzf ruby-2.4.0.tar.gz    cd ruby-2.4.0    ./configure --prefix=/usr/local    make && make install    cd ..    
  • 安装gem管理

解压rubygems-2.6.8.tar.gz文件,安装

    tar -xzvf rubygems-2.6.8.tar.gz    cd rubygems-2.6.8    ruby setup.rb --no-rdoc --no-ri    cd ..
  • 通过gem安装redis插件

安装redis-3.2.2.gem

    gem install redis-3.2.2.gem --local --no-rdoc --no-ri

启动集群

进入redis目录执行命令

src/redis-trib.rb create 130.10.7.243:6379 130.10.7.244:6379 130.10.7.245:6379

出现提示Can I set the above configuration? (type 'yes' to accept):输入yes回车。启动成功提示

[OK] All nodes agree about slots configuration.>>> Check for open slots...>>> Check slots coverage...[OK] All 16384 slots covered.

简单测试

[root@server1 redis-3.2.5]# src/redis-cli -c -h 130.10.7.243130.10.7.243:6379> set foo bar-> Redirected to slot [12182] located at 130.10.7.245:6379OK130.10.7.245:6379> set hello world-> Redirected to slot [866] located at 130.10.7.243:6379OK130.10.7.243:6379> get foo-> Redirected to slot [12182] located at 130.10.7.245:6379"bar"130.10.7.245:6379> get hello-> Redirected to slot [866] located at 130.10.7.243:6379"world"

其他命令

  • 查看节点

    src/redis-cli -c -h 130.10.7.243 cluster nodes
    • 设置replicate

      src/redis-cli -c -h 130.10.7.243 cluster replicate <master-id>
    • 增加节点

      src/redis-trib.rb add-node 130.10.7.246:6379 130.10.7.243:6379
    • 增加从节点

      src/redis-trib.rb add-node --slave --master-id <master-id> 130.10.7.246:6379 130.10.7.243:6379
    • Resharding

      src/redis-trib.rb reshard 130.10.7.243
    • 槽指派

      src/redis-cli -c -h 130.10.7.243 cluster addslots {0...5000}
    • 状态查看

      src/redis-trib.rb check 130.10.7.243