【前言】

之前自己在Windows中玩过一段时间Redis(感兴趣的朋友可以看下-Redis系列博客),这次在项目中也有幸能负责起Redis,也由于前两天服务器硬盘损坏导致开发的Redis服务器重新装系统,自己有幸能重新装一遍集群版的Redis,在这个过程中还是遇到些小麻烦,在此总结一下,希望对各位读者有所帮助。

【跌宕起伏安装流程】

     一、说明:          

1、服务器Linux系统---CentOS 7.0.1406 ;

2、所装Redis版本3.2.8(目前Redis官网最新稳定版);

3、连接Linux工具 Xshell ;

4、Redis集群效果:由于项目需要和服务器资源有限,最终装成的效果:在同一台机器上装但是端口分为六个---集群版端口:6380—6385共六个;(另外一种形式是在不同的IP上装,方法步骤都一样)。

     二、基本安装:

1、准备环境:

命令:yum -y install cpp binutils glibc glibc-kernheaders glibc-common glibc-devel gcc make gcc-c++ libstdc++-devel tcl

2、创建相应的文件夹

命令:mkdir -p /usr/local/src/redis

3、进入刚创建好的文件夹

命令:cd /usr/local/src/redis

4、上传Redis的tar

命令:wget http://download.redis.io/releases/redis-3.2.8.tar.gz

5、解压刚下载的安装包

命令:tar -xvf redis-3.2.8.tar.gz

6、编译

命令:make

7、安装

命令:make PREFIX=/usr/local/redis install

8、查看

命令:cd /usr/local/redis/bin

命令:ll

9、启动Redis服务

命令:./redis-server(注没有指定redis.conf会去读默认的conf)

10、退出时,服务被关,所以要修改配置文件中的如下配置

(1)Ctrl+Z 退出

(2)vi /usr/local/bin/redis.conf

将daemonize 改为yes 保存

11、测试

命令:redis-cli

     三、主从复制:

1、创建文件夹

在/usr/local/redis/下创建 6380 6381 6382 6383 6384 6385 六个文件夹

           

        2、复制redis.conf到6个文件夹中(在此只演示复制到6380文件夹中,其他的也如此)

3、同理将以下文件均复制到6个文件夹中

4、配置6个redis.conf(以配置6380为例,其他初端口外不同外均相同)

5、启动6个redis服务,指向各自的redis.conf

6、用命令检测状态

     四、创建集群:

1、安装ruby环境

因为redis-trib.rb是有ruby语言编写的所以需要安装ruby环境

命令:yum –y install zlib reby rubygems

命令:gem install redis

温馨提示:如果报以下错误:

则yum -y install gem

2、创建集群

(1)进入redis的安装包路径下 cd /usr/local/src/redis/redis-3.2.8/src/

(2)./redis-trib.rb create --replicas 1 192.168.246.44:6380 192.168.246.44:6381 192.168.246.44:6382 192.168.246.44:6383 192.168.246.44:6384 192.168.246.44:6385

3、测试

注:若不能正常连接到Redis,请做如下两步检查

(1)检查Redis.conf文件中的bind 配置

①所有IP可以访问:在Redis 3.2版本之前,bind注释代表所有IP可以访问,3.2版本之后则bind 0.0.0.0 代表所有IP可以访问;

②指定IP可以访问若: bind 127.0.0.1 192.168.21.17 代表本机和192.168.21.17这两个机器可以访问。

(2)确保服务器的防火墙是关闭状态(如下截图)

检查防火墙状态命令firewall-cmd --state

关闭防火墙命令service firewalld stop

4、编写启动和关闭redis集群的脚本(非必做步骤)

(1)说明:编写和关闭集群脚本步骤为非必做步骤,只是为了方便管理Redis集群启动和关闭建议执行该步骤。

(2)创建Redis集群启动脚本并将其提升可执行权限---start-all.sh(这个名称可以随意命名)

①cd /usr/local/redis/ (进入Redis集群安装目录 在此以/usr/local/redis/为例)

②vi start-all.sh 编辑文件(在此没有改文件,在保存时会自动创建)并输入以下内容,保存并退出(Esc键进入命令模式输入 :wq 按下回车)

③提升启动文件可执行权限

A.用ls查看是否存在该文件不过发现该文件名为白色字体(使用Xshell连接),说明不具备可执行权限。

B.用chmod +x start-all.sh提升为可执行权限,并用ls命令查看文件名变色


          (3)创建Redis集群关闭脚本并将其提升可执行权限---stop-redis.sh(这个名称可以随意命名)步骤和创建启动脚本一样,只是stop-redis.sh中的内容修改为

(4)测试启动和关闭脚本:

①用命令ps -ef | grep redis 查看当前无正在启动的Redis服务

②进入集群安装目录(cd /usr/local/redis) 执行启动脚本(./start-all.sh)

③再次查看Redis服务器ps -ef | grep redis (Redis服务全部启动说明启动脚本成功)

④测试关闭脚本----./stop-redis.sh

⑤再次查看Redis服务器ps -ef | grep redis(没有启动的Redis服务说明脚本正确)

【总结】

1、亲身经历担负起责任才能收获更多;

2、能让机器干的尽量不要让人干;

3、Linux世界非常不错。

Linux上安装集群版Redis相关推荐

  1. 使用Nginx在windows和linux上搭建集群

    Nginx Nginx (engine x) 是一个高性能的HTTP和反向代理服务器,也是一个IMAP/POP3/SMTP服务器 特点:反向代理 负载均衡 动静分离- 反向代理(Reverse Pro ...

  2. 淘淘商城第39讲——使用Spring来管理单机版Redis与集群版Redis

    我们知道Jedis在处理Redis的单机版和集群版时是完全不同的,有可能在开发的时候使用的是单机版,但是当项目上线后使用的则是集群版,这就需要能够方便的在单机版和集群版之间进行切换了.我们的做法便是定 ...

  3. (翻译) MongoDB(10) 在 Red Hat 企业版或者 Centos Linux 上安装MongoDB社区版

    概述 使用这个教程在 Red Hat 企业版 Linux 或者 CentOS6/7 Linux 使用 .rpm 软件包安装 MongoDB 社区版. 虽然一些发行版包含自己的 MongoDB 软件包, ...

  4. linux上elasticsearch集群搭建

    一,准备三台虚拟机 修改主机映射:vi/etc/hosts 192.168.***.*** 主机名 二,es启动时需要使用非root用户,所有创建一个用户 注:(***)为你定义的用户名字 usera ...

  5. linux上搭建集群环境

    说明:在vmware上搭建共有3台机器的集群,已经有一台 一.新增linux系统 1.克隆虚拟机 2.更改新增系统的MAC vim /etc/udev/rules.d/70-persistent-ne ...

  6. linux 上elasticsearch集群搭建详解,手把手教学(tar下载包)

    1.安装jdk: 由于es是基于java的,所以先安装jdk: yum install java-1.8.0-openjdk* -y 此命令install结束后不用再去配置环境变量了,直接输入java ...

  7. Docker系列之搭建集群版Redis

    1. 海量数据需要缓存时,如何设计存储方案? 1.1. 哈希取余分区 假设有N台机器构成一个集群,用户每次读写操作都是根据公式:hash(key)%N个机器台数,计算出哈希值,用来决定数据映射到哪一个 ...

  8. Linux如何安装集群及细节操作

    新增linux系统 第一步: 克隆虚拟机 第二步: 更改新增系统的mac地址 vim /etc/udev/rules.d/70-persistent-net.rules 第三步: 更改网卡信息 (se ...

  9. (转)淘淘商城系列——使用Spring来管理Redis单机版和集群版

    http://blog.csdn.net/yerenyuan_pku/article/details/72863323 我们知道Jedis在处理Redis的单机版和集群版时是完全不同的,有可能在开发的 ...

最新文章

  1. linux alias命令查看和设定别名
  2. 熊猫烧香变种病毒分析
  3. 2019ICPC(南昌) - Magic Master(模拟)
  4. leetcode - 461. 汉明距离
  5. gitlab ProjectMembers
  6. 计算机学院 迎新口号,清华大学迎新标语
  7. Dorado Debugger工具
  8. python高维数据存储_Numpy高维数据的理解
  9. java匹配uri_使用查询字符串中的:在Java中创建URI
  10. java未_Java未被捕获的异常
  11. 手机刷入其它系统跳过谷歌开机引导,谷歌安全验证
  12. 问卷星指定内容批量自动填写的Python+Selenium+Pandas+Excel解决方案
  13. 《洛神赋》髣髴兮若轻云之蔽月,飘飖兮若流风之回雪
  14. ACL20 - Don‘t stop pretraining: adapt language models to domains and tasks
  15. windows 性能监控--Perfmon主要指标
  16. 《Android深度探究HAL与驱动开发》学习笔记----第五章
  17. 云笔记Fusion Compute架构
  18. YOLOv5桌面应用开发(上)——附源代码
  19. SAP库存管理报表(含无价厂)
  20. 验证码输入错误怎么再次刷新验证码

热门文章

  1. 程序员不努力,和咸鱼有什么分别?
  2. 除了写代码,还能如何晋升为高级工程师?
  3. 套现4.88亿美元,百度从此告别外卖!
  4. 问世 20 多年的 PHP 还是最好的编程语言吗?
  5. 005.在Windows下编程让效率起飞
  6. mysql测试什么鬼,where 1=1 是什么鬼?SQL中有这玩意?
  7. mysql在学号列创建主码约束_MySQL 数据完整性
  8. mysql数据库电脑配置_教你怎样正确配置MySQL数据库SQL Mail -电脑资料
  9. 怎么添加本地音乐_原来手机点击这个按钮,就能一键生成音乐电子相册!这也太厉害了...
  10. 没有varselect这个函数_JavaScript学习笔记(四)-- 函数基础