zoukankan      html  css  js  c++  java
  • redis集群cluster模式搭建

    实验服务器 :192.168.44.139    192.168.44.138  192.168.44.144

    在 192.168.44.139上操作:

    将redis的包上传的新建的目录newtouch

    解压

    tar -zxf redis-3.0.7.tar.gz

    安装redis依赖的包

    yum  -y  install gcc gcc-c++ make  tcl

    cd到解压的redis的包里安装

    make && make install

    在opt下新建/opt/redis/redis-cluster/

     mkdir  -p /opt/redis/redis-cluster/

    将redis.conf cp到/opt/redis/redis-cluster/ 起名redis-6379.conf  redis-6380.conf

    cp /newtouch/redis-3.0.7/redis.conf /opt/redis/redis-cluster/redis-6379.conf

    cp /newtouch/redis-3.0.7/redis.conf /opt/redis/redis-cluster/redis-6380.conf

    编辑redis-6379.conf  redis-6380.conf

    bind 127.0.0.1 //修改为当前服务器IP地址

    port 6379 //修改对应的端口

    daemonize yes //由no改为yes

    cluster-enabled yes //将#号去掉

    cluster-node-timeout 5000 //将#号去掉

    appendonly yes //将#号去掉

    logfile "redis-6379.log"  //修改日志文件为对应的端口好

    pidfile  /var/run/redis_6379.pid      //修改为对应端口号

    cluster-config-file  nodes_6379.conf  //修改为对应端口号

    修改完之后

    :x保存退出。

    启动redis服务

    redis-server /opt/redis/redis-cluster/redis-6379.conf

    redis-server /opt/redis/redis-cluster/redis-6380.conf

    其余两台也找这样操作。

      搭建集群有两种方法手动和自动我们先自动在试试手动

    1,自动:

    安装redis-trid.rd搭建集群(可以自动实现握手和自动分配虚拟槽)

    redis-strid.rd是采用ruby实现redis集群管理的工具:

    安装ruby:

    下载ruby:

    wget https://cache.ruby-lang.org/pub/ruby/2.3/ruby-2.3.1.tar.gz

    创目录:mkdir /usr/local/ruby

    解压ruby的包

    tar -zxf ruby-2.3.1.tar.gz

    监测环境并制定安装目录在/usr/local/ruby

    ./configure –prefix=/usr/local/ruby/

    安装:

    Make && make install

    Cd到/usr/local/ruby下执行一下操作

    [root@localhost ruby]# cp bin/ruby /usr/local/bin/

    [root@localhost ruby]# cp bin/gem /usr/local/bin/

    安装rubygem   redis的依赖:

    下载:

    wget http://rubygems.org/downloads/redis-3.3.0.gem

    安装

    gem install -l redis-3.3.0.gem

    {如执行这抱一下错误:那是系统没有zlib的包下载zlib的包安装

    zlib包的下载地址

    http://www.zlib.net/fossils/

    下载后执行解压和。/configure   和make  make install  就可以了

    在进入到ruby的安装目录的ext/zli执行一下操作    (ruby-2.3.1/ext/zlib/)

    ruby ./extconf.rb

    make && make install   就ok啦

    然后在执行gem install -l redis-3.3.0.gem}

    gem list  -- check redis gem

    安装redis-trid.rb

    cp /newtouch/redis/src/redis-trib.rb /usr/local/bin/

    安装完 ruby环境后执行redis-trib.rb命令确认环境是否正确:

    出现以上信息说明环境ok

    创建集群:

    [root@localhost redis]# redis-trib.rb create --replicas 1 192.168.44.139:6379 192.168.44.139:6380 192.168.44.138:6379 192.168.44.138:6380 192.168.44.144:6379 192.168.44.144:6380

    --replicas 参数制定一个主节点有几个从节点 后面的1 表示1个从节点

    新redis已近弃用了redis-trib.rb命令换用

    redis-cli --cluster create  192.168.44.139:6379 192.168.44.139:6380 192.168.44.138:6379 192.168.44.138:6380 192.168.44.144:6379 192.168.44.144:6380 --cluster-replicas 1

    输入yes就可以了redis-trib.rb 就开始节点握手和槽的分配

    可以查看是否分配成功

    isred-tric.rb check  192.168.44.144:6379

    出现一下信息可就ok

    Redis-trib.rb  就在一台上暗转 我在192.168.44.139的服务器上的安装的。

    这样集群就可以搭建完成在192.168.44.139上set值  别的服务器上可以gei到值。

    我做的 是3主3从 主从 会自动分配的。

    现在可以测试

    在192.168.44.139上执行set name lili

    在别的端口查看

    至此cluster的集群搭建完成  进入是一定加-c参数

    2,下面是手动完成集群的操作:

    节点搭建好后 开始搭建集群

    节点握手:

    在一个节点操作一下命令

    加入集群  之后还不能 同步数据还没有分槽:可以通过cluster  nodes  查看信息

    cluster  info  查看 并没有分配槽

    下面开始分槽:

    redis-cli  -h 192.168.44.139  -p 6379 cluster addslots {0...5461}

    redis-cli  -h 192.168.44.141  -p 6379 cluster addslots {5462…10922}

    redis-cli  -h 192.168.44.144  -p 6379 cluster addslots {10923…16383}

    通过cluster info  查看槽分配的信息 

    分配从节点:

    进入到没有分配操的节点

    执行  (主节点的id就是cluster info  命令查看出的master的id)

    在每个没有分配槽的几点执行

    之后就可以cluster  nodes  查看了

    就此手动大家cluster的集群完成

    凡事要细心。要有耐心

    可以参考 https://www.cnblogs.com/hello-daocaoren/p/8431902.html

  • 相关阅读:
    冒泡排序
    Objective-C 命名规范
    时间轴的制作
    CocoaPods 哪些事
    消息转发机制入门篇
    架构
    算法学习
    AutoLayout自动布局
    网络学习
    HDU 3832 Earth Hour (最短路)
  • 原文地址:https://www.cnblogs.com/houchaoying/p/8505900.html
Copyright © 2011-2022 走看看