实验服务器 :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个从节点

输入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

redis集群cluster模式搭建的更多相关文章

  1. redis单点、redis主从、redis哨兵sentinel,redis集群cluster配置搭建与使用

    目录 redis单点.redis主从.redis哨兵 sentinel,redis集群cluster配置搭建与使用 1 .redis 安装及配置 1.1 redis 单点 1.1.2 在命令窗口操作r ...

  2. Redis集群-Cluster模式

    我理解的此模式与哨兵模式根本区别: 哨兵模式采用主从复制模式,主和从数据都是一致的.全量数据: Cluster模式采用数据分片存储,对每个 key 计算 CRC16 值,然后对 16384 取模,可以 ...

  3. 超详细,多图文介绍redis集群方式并搭建redis伪集群

    超详细,多图文介绍redis集群方式并搭建redis伪集群 超多图文,对新手友好度极好.敲命令的过程中,难免会敲错,但为了截好一张合适的图,一旦出现一点问题,为了好的演示效果,就要从头开始敲.且看且珍 ...

  4. Docker快速构建Redis集群(cluster)

    Docker快速构建Redis集群(cluster) 以所有redis实例运行在同一台宿主机上为例子 搭建步骤 redis集群目录清单 . ├── Dockerfile ├── make_master ...

  5. redis集群环境的搭建和错误分析

    redis集群环境的搭建和错误分析 redis集群时,出现的几个异常问题 09 redis集群的搭建 以及遇到的问题

  6. 一文轻松搞懂redis集群原理及搭建与使用

    今天早上由于zookeeper和redis集群不在同一虚拟机导致出了点很小错误(人为),所以这里总结一下redis集群的搭建以便日后所需同时也希望能对你有所帮助. 笔主这里使用的是Centos7.如果 ...

  7. redis集群cluster简单设置

    环境: 这里参考官方使用一台服务器:Centos 7  redis-5.0.4    192.168.10.10 redis集群cluster最少要3个主节点,所以本次需要创建6个实例:3个主节点,3 ...

  8. Redis | 一文轻松搞懂redis集群原理及搭建与使用

    转载:https://juejin.im/post/5ad54d76f265da23970759d3 作者:SnailClimb 这里总结一下redis集群的搭建以便日后所需同时也希望能对你有所帮助. ...

  9. Redis集群~windows下搭建Sentinel环境及它对主从模式的实际意义

    回到目录 关于redis-sentinel出现的原因 Redis集群的主从模式有个最大的弊端,就是当主master挂了之前,它的slave从服务器无法提升为主,而在redis-sentinel出现之后 ...

随机推荐

  1. 将你的Vim 打造成轻巧强大的IDE

    Vim和Emacs一个称为神之编辑器一个被称为编辑器之神,固然很是夸张,但也足以说明这两 款软件的优秀和在程序员界的地位.但是它们都已漫长的学习曲线让人望而生畏,阻止了大 多数人进入.作为一名几乎完全 ...

  2. windows 系统分布式版本控制 git 使用学习

    1. 在 Windows 上安装 Git 在Windows上使用Git,可以从Git官网直接下载安装程序,(网速慢的同学请移步国内镜像),然后按默认选项安装即可. 安装完成后,在开始菜单里找到“Git ...

  3. java高级---->Serializable的过程分析

    本次讲解中我们在上次的基础上,深入的了解一下序列化的流程以及其中的原理.关于序列化的一些知识与使用,请参见我的另一篇博客:java基础---->Serializable的使用.好了,我们进行以下 ...

  4. 漫谈moosefs中cgi各项的意义

    原创:http://www.cnblogs.com/bugutian/p/6869278.html 转载请注明出处 一.先上一张图 二.解释 1. Metadata Servers (masters) ...

  5. Oracle 如何将“26-9月 -17 06.46.00.000000000 下午”字符串转换成标准日期格式

    今天,在读取日期格式数据时,出现这样的格式“26-9月 -17 06.46.00.000000000 下午”,在网上找了一下, 这个也是oracle的一种日期保存格式,数据都是日期类型,只是显示的结果 ...

  6. Win10系列:JavaScript 控件的使用

    向页面中添加的控件可分为两种类型:标准的HTML控件和WinJS库控件.其中标准的HTML控件是指HTML标准中定义的基本控件,如按钮和复选框:WinJS库控件是为开发基于JavaScript 的Wi ...

  7. learning scala ide tools install

    reference : https://www.jetbrains.com/help/idea/install-and-set-up-product.html env in ubuntu 16.04 ...

  8. Unity中物体碰撞后去掉相互之间的反弹力

    最近自制了一个的角色控制器(没有重力的角色)时发现,角色碰撞到墙壁之后会有一个小小的反弹力导致角色有一个微弱的反弹位移,这样给人一种不好的感觉.研究了一下,除了限制坐标轴( Rigidbody---C ...

  9. javascript 跑马灯

    1.看了写跑马灯的教程案例,隔了段时间自己写了一个简单的跑马灯.将过程中遇到的问题特此记录下来 代码如下: <!DOCTYPE html> <html> <head> ...

  10. Oracle shrink space

    一.开启表的行迁移 alter table table_name enable row movement; select 'alter table '||s.owner||'.'||s.table_n ...