此文档主要介绍在linux环境下安装redis并且搭建自己的redis集群

搭建环境: ubuntun 16.04 + redis-3.0.6

本文章分为三个部分:redis安装、搭建redis集群

一.本机安装redis:

    1.下载redis: wget http://download.redis.io/releases/redis-3.0.6.tar.gz

    2.redis安装解压、编译与安装:安装路径在root用户下的:~/softwares文件下

        解压:先将安装包放到~/softwares文件下, 然后执行:tar -zxvf redis-3.0.0.6.tar.gz,解压完成后,就会有一个redis-3.0.0.6文件夹

        编译:先 cd /redis-3.0.0.6,进入此文件夹, 然后运行命令: make

        安装:make install PREFIX=~/softwares/redis-3 (PREFIX=~/softwares/redis-3:redis指定的安装路径)

    3.启动redis-server:

        复制redis.conf配置文件:在~/softwares/redis-3.0.0.6目录下,执行:cp redis.conf ~/softwares/redis-3/bin,就会将文件移过来

        修改配置文件:cd ~/softwares/redis-3/bin目录下, 将redis.conf 里面的 "daemonize no" 改为"daemonize yes"

        启动:在当前目录下,执行: ./redis-server ./redis.conf

        查看启动是否成功: ps -ef|grep redis

    4.登录redis-cli:要保证当前路径在~/softwares/redis-3/bin下:

        登录:执行命令 ./redis-cli -h 127.0.0.1 -p 6379

二.redis集群的搭建:

    注:该集群中有三个节点,每个节点有一主一备,需要6台虚拟机。在此搭建一个伪分布式的集群,使用6个redis实例来模拟。

    1.安装ruby环境: redis-trib.rb是redis官方推出的管理redis集群的工具,集成在redis的源码src目录下(~/softwares/redis-3.0.0.6/)。

    是基于redis提供的集群命令封装成简单、便捷、实用的操作工具。redis-trib.rb是redis作者用ruby完成的。所以redis集群需要先安装ruby环境

        apt-get install ruby

        apt-get install rubygems

        gem install redis-3.0.6.gem   执行此命令的时候会报一个这样的错:ERROR: Could not find a valid gem 'redis-3.0.0.6'

        (>= 0) in any repository,此时只需要执行此命令:wget https://rubygems.global.ssl.fastly.net/gems/redis-3.2.1.gem,

        会将redis-3.0.6.gem安装包下载到当前路径,只需要再次执行: gem install redis-3.0.6.gem, 此刻已经成功安装ruby环境

    2.开始搭建redis集群: 在~/softwares下创建redis-cluster文件夹,在该文件夹中创建6个redis实例,端口号从7001~7006

        2.1 首先,创建6个实例,并且从~/softwares/redis-3/bin拷贝redis-cli、redis-server、redis.conf三个文件到每个实例下分别:

            redis-cluster-01: redis-cli、redis-server、redis.conf,

            redis-cluster-02: redis-cli、redis-server、redis.conf

            redis-cluster-03: redis-cli、redis-server、redis.conf

            redis-cluster-04: redis-cli、redis-server、redis.conf

            redis-cluster-05: redis-cli、redis-server、redis.conf

            redis-cluster-06: redis-cli、redis-server、redis.conf

        2.2 然后, 修改6个实例下面的redis.conf文件参数,修改如下:

            redis-cluster-01: 1) 打开 #cluster-enable注释; 2) port修改为:7001; 3) daenonize no 改为:daenonize yes

            redis-cluster-02: 1) 打开 #cluster-enable注释; 2) port修改为:7002; 3) daenonize no 改为:daenonize yes

            redis-cluster-03: 1) 打开 #cluster-enable注释; 2) port修改为:7003; 3) daenonize no 改为:daenonize yes

            redis-cluster-04: 1) 打开 #cluster-enable注释; 2) port修改为:7004; 3) daenonize no 改为:daenonize yes

            redis-cluster-05: 1) 打开 #cluster-enable注释; 2) port修改为:7005; 3) daenonize no 改为:daenonize yes

            redis-cluster-06: 1) 打开 #cluster-enable注释; 2) port修改为:7006; 3) daenonize no 改为:daenonize yes

        2.3 接着, 进入~/softwares/redis-3.0.6/src目录下,将文件redis-trib.rb复制到~/softwares/redis-cluster目录下

            具体执行的命令如下: cd ~/softwares/redis-3.0.6/src  cp redis-trib.rb ~/softwares/redis-cluster

        2.4 下来, 在~/softwares/redis-cluster 创建一个 redis-server.sh的脚本文件,内容如下:

            #!/bin/sh

            cd ./redis-cluster-01/

            ./redis-server ./redis.conf

            cd ..

            cd ./redis-cluster-02/

            ./redis-server ./redis.conf

            cd ..

            cd ./redis-cluster-03/

            ./redis-server ./redis.conf

            cd ..

            cd ./redis-cluster-04/

            ./redis-server ./redis.conf

            cd ..

            cd ./redis-cluster-05/

            ./redis-server ./redis.conf

            cd ..

            cd ./redis-cluster-06/

            ./redis-server ./redis.conf

            cd ..

        2.5 更改脚本权限,并且执行脚本之后,在查看6个redis实例是否正常启动,具体的执行命令如下:

            该权限: chmod 777 start-server.sh

            执行脚本 ./start-server.sh

            查看是否正常启动: ps -ef|grep redis

        2.6 创建集群:

            ./redis-trib.rb create --replicas 1 127.0.0.1:7001 127.0.0.1:7002 127.0.0.1:7003

            127.0.0.1:7004 127.0.0.1:7005 127.0.0.1:7006

三.测试集群是否正常:

        登录集群客户端:  redis-cli -h 127.0.0.1 -p 7001(7002, 7003, 7004, 7005, 7006) -c

至此, 一个简单的redis集群就搭建成功了

在linux环境下安装redis并且搭建自己的redis集群的更多相关文章

  1. Linux环境下安装Redis

    记录一下Linux环境下安装Redis,按顺序执行即可,这里下载的是Redis5,大家可根据自己的需求,修改版本号就好了,亲测可行. 1.下载Redis安装包cd /usr/local/wget ht ...

  2. Linux 环境下安装python相关

    目录 Linux 环境下安装python相关 linux软件包管理工具之yum工具(如同pip3工具) yum源理解 下载阿里云的.repo仓库文件 ,放到/etc/yum.repos.d/ yum安 ...

  3. Linux环境下安装Tigase XMPP Server

    Tigase是一种XMPP服务器,可以作为采用XMPP协议的各种IM(Instant Messeging)工具(如Pandion.Spark等)的服务器. 在Linux环境下安装Tigase的步骤如下 ...

  4. linux环境下安装sphinx中文支持分词搜索(coreseek+mmseg)

     linux环境下安装sphinx中文支持分词搜索(coreseek+mmseg) 2013-11-10 16:51:14 分类: 系统运维 为什么要写这篇文章? 答:通过常规的三大步(./confi ...

  5. Linux环境下安装NodeJS和mongoDB

    前面的话 本文将详细介绍如何下Linux环境下安装NodeJS和mongoDB NodeJS [1]使用二进制包安装 1.在官网下载Linux环境下的NodeJS安装包 2.通过xftp软件将安装包上 ...

  6. ElasticHD Linux环境下安装

    ElasticHD Linux环境下安装教程        ElasticHD windows环境下安装教程   上一篇讲了ElasticHD windows环境下安装,这一篇继续说明ElasticH ...

  7. [Linux]pycharm在Linux环境下安装

    之前转载了一个在Windows环境下pycharm专业破解的安装的文章,今天为了在Linux环境下安装使用odoo10,所以尝试在Linux环境下安装pycharm专业破解版看看. windows下安 ...

  8. JavaWeb入门——在Linux环境下安装Tomcat服务器

    JavaWeb入门——在Linux环境下安装Tomcat服务器 摘要:本文主要学习了如何在Linux环境下安装Tomcat服务器. 准备工作 检查Java环境变量 检查系统是否配置了Java的环境变量 ...

  9. Java入门——在Linux环境下安装JDK并配置环境变量

    Java入门——在Linux环境下安装JDK并配置环境变量 摘要:本文主要说明在Linux环境下JDK的安装,以及安装完成之后环境变量的配置. 使用已下载的压缩包进行安装 下载并解压 在Java的官网 ...

随机推荐

  1. 主存储器与CPU的连接

    半导体存储器的读写时间一般在十几至几百毫微秒之间,其芯片集成度高,体积小,片内含有译码器和寄存器等电路.常用的半导体存储器芯片有多字一位片和多字多位片,如16M位容量的芯片可以有16M×1位和4M×4 ...

  2. nohup使用相关知识

    常规用法nohup ./abc.sh > abc.out &       --输出nohup的日志到abc.outnohup ./abc.sh &                 ...

  3. Eclipse和JDK的安装配置

    工欲善其事,必先利其器.最近开始学习Java语言,必不可少的要先安装一个IDE,我选择了eclipse,下面我们讲讲如何来安装及配置. Step1:工具的下载 这里我们需要用到三个工具安装包,JDK. ...

  4. oracle imp 报12154错误解决办法

    imp test/test@orcl file=/backup.dmp full=y --报错   imp test/test@127.0.0.1/orcl file=/backup.dmp full ...

  5. 了解Session的本质

    有一点我们必须承认,大多数web应用程序都离不开session的使用.这篇文章将会结合php以及http协议来分析如何建立一个安全的会话管理机制. AD: 有一点我们必须承认,大多数web应用程序都离 ...

  6. mvc數據遷移

    在本节中,我们将使用Entity Framework Code First 数据迁移功能将模型类的改变应用到数据库中. 默 认情况下,当我们使用Entity Framework Code First ...

  7. LayIM.AspNetCore Middleware 开发日记(三)基础框架搭建

    前言 在上一篇中简单讲了一些基础知识,例如Asp.Net Core Middleware 的使用,DI的简单使用以及嵌入式资源的使用方法等.本篇就是结合基础知识来构建一个基础框架出来. 那么框架有什么 ...

  8. Golang测试包

    Golang测试包 golang自带了测试包(testing),直接可以进行单元测试.性能分析.输出结果验证等.简单看着官方文档试了试,总结一下: 目录结构和命令 使用golang的测试包,需要遵循简 ...

  9. SpringBoot实战(一)之构建RestFul风格

    RestFul风格是一种非常流行的架构风格,相关实战可以参考我的这篇博客:SSM框架之RestFul示例 论文可参考:https://www.ics.uci.edu/~fielding/pubs/di ...

  10. 【luogu P1879 [USACO06NOV]玉米田Corn Fields】 题解

    题目链接:https://www.luogu.org/problemnew/show/P1879 状压DP. 设dp[i][j]表示第i行,状态为j的方案数 初始dp[0][0] = 1 这样一共12 ...