redis集群中至少应该有三个节点,以保证当集群中的某个节点挂掉,其他节点进行容错投票时,投票数能超过半票. 要保证高可用,则还需要每一个节点有一个备份机. 因此redis集群至少需要6台服务器.这里使用搭建伪分布式的方式,可以使用一台虚拟机运行6个redis实例.此时需要修改6个redis实例为不同的端口号

redis cluster管理工具redis-trib.rb 
搭建redis集群环境需要redis cluster管理工具redis-trib.rb, 
redis-trib.rb是redis官方推出的管理redis集群的工具,集成在redis的源码src目录下,是基于redis提供的集群命令封装成简单、便捷、实用的操作工具。redis-trib.rb是redis用ruby完成的

一、安装redis4.0.9软件包
tar fxv redis-4.0.9.tar.gz
yum -y install gcc tcl
cd redis-4.0.9
make MALLOC=libc && make test

二、安装集群管理工具ruby2.4.4
mkdir /usr/local/redis_cluster ##创建集群文件存放目录便于管理
wget https://cache.ruby-lang.org/pub/ruby/2.3/ruby-2.3.1.tar.gz ###ruby官方网站
tar fxv ruby-2.4.4.tar.gz
cd ruby-2.4.4
./configure --prefix=/usr/local/redis_cluster/ruby ###编译并指定安装目录所在位置
make && make install ###时间有点长! 注意看它停不停止就行!
cd /usr/local/redis_cluster/ruby
cp bin/ruby /usr/local/bin ###方便直接使用ruby和gem命令,若不复制,则使用ruby命令需要到此目录下才能用
cp bin/gem /usr/local/bin

三、升级zlib
tar -xvzf zlib-1.2.11.tar.gz
cd zlib-1.2.8.tar.gz
./configure --prefix=/usr/local/redis_cluster/zlib ## 设置安装路径
make && make install
###执行安装后,需要重新刷新下,ruby的zlib库
cd /opt/ruby-2.4.4/ext/zlib
ruby extconf.rb --with-zlib-include=/usr/local/redis_cluster/zlib/include/ --with-zlib-lib=/usr/local/redis_cluster/zlib/lib/ ##执行后会生成新的Makefile文件
vim Makefile
:%s+$(top_srcdir)/include/ruby.h+../../include/ruby.h+ ##执行替换路径$(top_srcdir)/include/ruby.h替换成../../include/ruby.h
make && make install

四、升级openssl
tar fxv openssl-1.0.2o.tar.gz
cd openssl-1.0.2o
./config -fPIC --prefix=/usr/local/redis_cluster/openssl -enable-shared
./config -t
make && make install
执行安装后,需要重新刷新下,ruby的openssl库
cd /opt/ruby-2.4.4/ext/openssl
ruby extconf.rb --with-openssl-include=/usr/local/redis_cluster/openssl/include/ --with-openssl-lib=/usr/local/redis_cluster/openssl/lib/ ##执行后会生成新的Makefile文件
vim Makefile
:%s+$(top_srcdir)/include/ruby.h+../../include/ruby.h+ ##执行替换路径$(top_srcdir)/include/ruby.h替换成../../include/ruby.h
make && make install

gem install /opt/redis-4.0.1.gem

五、创建伪集群
cd /usr/local/redis_cluster/
mkdir cluster
mkdir 16001 16002 16003 16004 16005 16006
cp redis-4.0.9/redis.conf cluster/16001
cp redis-4.0.9/redis.conf cluster/16002
cp redis-4.0.9/redis.conf cluster/16003
cp redis-4.0.9/redis.conf cluster/16004
cp redis-4.0.9/redis.conf cluster/16005
cp redis-4.0.9/redis.conf cluster/16006
vi redis.conf
##修改每个配置文件中的下面选项
port 16001 #每个配置文件的port端口号不能相同这里分别为16001.。。。16006
daemonize yes
cluster-enabled yes
cluster-config-file nodes.conf
cluster-node-timeout 5000
appendonly yes

六、分别启动每个实例
cp /usr/local/redis_cluster/redis-4.0.9/src/redis-server /usr/local/bin/
cd /usr/local/redis_cluster/cluster
redis-server 16001/redis.conf
redis-server 16002/redis.conf
redis-server 16003/redis.conf
redis-server 16004/redis.conf
redis-server 16005/redis.conf
redis-server 16006/redis.conf

七、创建集群
redis-trib.rb create --replicas 1 127.0.0.1:16006 127.0.0.1:16005 127.0.0.1:16004 127.0.0.1:16003 127.0.0.1:16002 127.0.0.1:16001

报错:

解决:
1. error: jemalloc/jemalloc.h: No such file or directory解决方法
make MALLOC=libc

报错:

解决:
yum - y install tcl ##(时间同步)

报错:

解决:
升级zlib

报错:

解决:
升级openssl

redis集群搭建_超详细的更多相关文章

  1. Redis集群搭建,伪分布式集群,即一台服务器6个redis节点

    Redis集群搭建,伪分布式集群,即一台服务器6个redis节点 一.Redis Cluster(Redis集群)简介 集群搭建需要的环境 二.搭建集群 2.1Redis的安装 2.2搭建6台redi ...

  2. Redis 集群搭建详细指南

    先有鸡还是先有蛋? 最近有朋友问了一个问题,说毕业后去大城市还是小城市?去大公司还是小公司?我的回答都是大城市!大公司! 为什么这么说呢,你想一下,无论女孩男孩找朋友都喜欢找个子高胸大的.同样的道理嘛 ...

  3. [转载] Redis集群搭建最佳实践

    转载自http://blog.csdn.net/sweetvvck/article/details/38315149?utm_source=tuicool 要搭建Redis集群,首先得考虑下面的几个问 ...

  4. Redis集群搭建最佳实践

    要搭建Redis集群.首先得考虑以下的几个问题; Redis集群搭建的目的是什么?或者说为什么要搭建Redis集群? Redis集群搭建的目的事实上也就是集群搭建的目的.全部的集群主要都是为了解决一个 ...

  5. redis集群搭建(简单简单)一台机器多redis

      redis集群搭建 在开始redis集群搭建之前,我们先简单回顾一下redis单机版的搭建过程 下载redis压缩包,然后解压压缩文件: 进入到解压缩后的redis文件目录(此时可以看到Makef ...

  6. 新手redis集群搭建

    redis集群搭建在开始redis集群搭建之前,我们先简单回顾一下redis单机版的搭建过程 下载redis压缩包,然后解压压缩文件:进入到解压缩后的redis文件目录(此时可以看到Makefile文 ...

  7. Redis学习之路(二)Redis集群搭建

    一.Redis集群搭建说明 基于三台虚拟机部署9个节点,一台虚拟机三个节点,创建出4个master.4个slave的Redis集群. Redis 集群搭建规划,由于集群至少需要6个节点(3主3从模式) ...

  8. 25.redis集群搭建笔记

    ###Redis集群### 0.准备 软件: redis-3.0.0.gem redis-3.0.0.tar.gz#源码   1.安装ruby环境 redis基于ruby槽位计算,hash算法技术,k ...

  9. 二、redis集群搭建

    redis集群搭建 redis3.0后支持集群.集群中应该至少有三个节点,每个节点有一备份节点.需要6台服务器.搭建伪分布式,需要6个redis实例.搭建集群的步骤: 一.安装单机版redis 第一步 ...

随机推荐

  1. zabbix日志报错解决

    [root@bogon ldap]# cat /tmp/zabbix_server.log 9135:20181204:085433.351 using configuration file: /us ...

  2. 【Qt开发】Qt控件之进度条

    QT 进度条操作实例是本文要介绍的内容,在QT中可以用QProgressBar或着QProgressDialog来实现进度条. QProgressBar的使用   首先在designer中拖一个按钮和 ...

  3. NFC读写器调试总结20191203

    以下为NFC读写器调试经验总结: 1.读写器部分,从TX1/TX2输出的13.56MHZ信号主要由L0/C0构成低通滤波器,用于滤除13.56MHZ的高次谐波,取值L0=1UH,C0=47PF时候,谐 ...

  4. ROS安装(国内源)

    1.添加源 1.1 USTC源 sudo sh -c '. /etc/lsb-release && echo "deb http://mirrors.ustc.edu.cn/ ...

  5. [转帖].NET Core单文件发布静态编译AOT CoreRT

    .NET Core单文件发布静态编译AOT CoreRT https://www.cnblogs.com/linezero/p/CoreRT.htm .NET Core单文件发布静态编译AOT Cor ...

  6. springboot笔记-文件上传

    使用 Spring Boot 和 Thymeleaf 上传文件 Spring Boot 利用 MultipartFile 的特性来接收和处理上传的文件,本示例前端页面使用 Thymeleaf 来处理. ...

  7. 【6.12校内test】T3 城市交通费

    要不我先去写T2吧(逃 先把题目搞上来: [问题描述] 有 n 个城市,编号 1~n.其中 i 号城市的繁华度为 pi.省内有 m 条可以双向同行的高速 公路,编号 1~m.编号为 j 的高速公路连接 ...

  8. POJ2387 Til the Cows Come Home (最短路 dijkstra)

    AC代码 POJ2387 Til the Cows Come Home Bessie is out in the field and wants to get back to the barn to ...

  9. RabbitMQ入门教程(九):首部交换机Headers

    原文:RabbitMQ入门教程(九):首部交换机Headers 版权声明:本文为博主原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明. 本文链接:https://blog ...

  10. 利用bing图片搜索接口开发图片搜索应用程序

    概述:通过bing的图片搜索引擎,开发自己的图片搜索应用程序.bing的图片搜索接口是收费的,但是初次注册使用,key可以免费试用30天 程序运行效果如下 一,代码如下 static SearchRe ...