Centos7下安装redis实战(单机版以及集群)

本文涉及的产品
Redis 开源版,标准版 2GB
推荐场景:
搭建游戏排行榜
云数据库 Tair(兼容Redis),内存型 2GB
简介: 一、背景   因项目需要,要引入redis做缓存,就在centos7下亲自安装了一遍redis,刚好趁着这个机会就来把redis的概念以及单机版和集群版redis安装步骤记录下来,在此和大家一起分享。

一、背景

  因项目需要,要引入redis做缓存,就在centos7下亲自安装了一遍redis,刚好趁着这个机会就来把redis的概念以及单机版和集群版redis安装步骤记录下来,在此和大家一起分享。

二、Redis介绍

1.什么是Redis?

  Redis是用C语言开发的一个开源的高性能键值对(key-value)数据库。它通过提供多种键值数据类型来适应不同场景下的存储需求,目前为止Redis支持的键值数据类型有:字符串类型、散列类型、列表类型、集合类型、有序集合类型。

2.Redis的应用场景:   

  缓存(数据查询、短连接、新闻内容、商品内容等等);(最多使用)
  分布式集群架构中的session分离;
  聊天室的在线好友列表;
  任务队列;(秒杀、抢购、12306等等)
  应用排行榜;
  网站访问统计;
  数据过期处理(可以精确到毫秒).

三、安装前准备

1.因为redis是C语言开发的,所以我们建议在linux上运行,故本文介绍在centos7上安装redis.

2.安装redis需要先将官网下载的源码进行编译,编译依赖gcc环境,如果没有gcc环境,需要安装gcc,命令如下:

  yum -y install gcc-c++

四、安装单机版redis

  1.从官方网站下载对应的redis源码包,命令如下:

    wget http://download.redis.io/releases/redis-3.0.0.tar.gz

  2.对源码文件的压缩包进行解压缩,命令如下:

    tar -zxvf redis-3.0.0.tar.gz

  3.进入到解压后的源码文件夹,并对源码进行编译,命令如下:    

    cd redis-3.0.0.tar.gz && make

  4.安装编译完成后的文件(prefix参数用来指定redis的安装位置,一般建议安装在/usr/local/redis下)

    make install PREFIX=/usr/local/redis

  5.把/usr/local/redis/bin文件夹下所有文件移动到/usr/local/redis文件夹下,并删除/usr/local/redis/bin文件夹

    mv /usr/local/redis/bin/* /usr/local/redis/ && rm -rf /usr/local/redis/bin

  6.安装完成,启动单机版redis

    1).控制台直接启动:cd /usr/local/redis && ./redis-server

    2).后台启动:

      I.复制源码包下的redis.conf到redis的安装目录.

      II.修改redis.conf,将其中daemonize no项修改daemonize yes

      III.后台启动:cd /usr/local/redis && ./redis-server redis.conf

  7.启动并测试客户端

    redis-cli -p 端口(默认6379) -h 主机ip(默认localhost即127.0.0.1)

五、安装redis集群

  1.redis-cluster集群架构图

  

架构细节:

(1)所有的redis节点彼此互联(PING-PONG机制),内部使用二进制协议优化传输速度和带宽.

(2)节点的fail是通过集群中超过半数的节点检测失效时才生效.

(3)客户端与redis节点直连,不需要中间proxy.客户端不需要连接集群所有节点,连接集群中任何一个可用节点即可

(4)redis-cluster把所有的物理节点映射到[0-16383]slot,cluster 负责维护node<->slot<->value

  Redis 集群中内置了 16384 个哈希槽,当需要在 Redis 集群中放置一个 key-value 时,redis 先对 key 使用 crc16 算法算出一个结果,然后把结果对 16384 求余数,这样每个 key 都会对应一个编号在 0-16383 之间的哈希槽,redis 会根据节点数量大致均等的将哈希槽映射到不同的节点。

  2.创建集群:(说明:由于机器有限,我们先使用一台linux服务器来创建6个redis实例从而创建一个伪集群)

  第一步:在/usr/local文件夹下创建redis-cluster文件夹作为redis集群根目录

    cd /usr/local && mkdir redis-cluster

  第二步:在redis-cluster文件夹下安装6个redis实例,安装步骤同单机版安装步骤。

  第三步:分别编辑每个实例的redis.conf文件指定端口为7001到7006,并打开每一个配置文件中cluster-enable yes前面的注释(即去掉'#'号)。

  第四步:拷贝redis源码文件夹下的名为redis-trib.rb的ruby脚本文件到redis-cluster文件夹下

    cp redis-trib.rb /usr/local/redis-cluster/

  第五步:执行该ruby脚本前,在系统中安装ruby环境

    1).yum -y install ruby

    2).yum -y install rubygems

  第六步:安装执行ruby脚本redis-trib.rb执行所依赖的gem包:redis-3.0.0.gem

    gem install redis-3.0.0.gem

  第七步:启动所有的redis实例

    ./redis-server redis.conf

  第八步:使用redis-trib.rb创建集群(如果是在不同的机器上安装实例,只需要在任意一台机器上执行以下命令即可)

    ./redis-trib.rb create --replicas 1 192.168.25.153:7001 192.168.25.153:7002 192.168.25.153:7003 192.168.25.153:7004 192.168.25.153:7005  192.168.25.153:7006

  出现以下界面,证明redis集群安装成功。

  

  第九步:进入任意一台实例安装位置,可以使用以下命令来进行连接集群:

  ./redis-cli -p 7001 -c(-c说明是连接集群,单机的时候不需要加该参数)

  到此,我们就完成了redis的单机 以及集群版的安装和测试。

三、总结

  通过这次redis安装的经历,让我感觉到远处看安装集群什么的很困难,其实自己操作起来,感觉没有什么困难的,只要记住步骤就好了。所以不能给自己设限,什么事情都要保持一颗想要尝试的心。

相关实践学习
基于Redis实现在线游戏积分排行榜
本场景将介绍如何基于Redis数据库实现在线游戏中的游戏玩家积分排行榜功能。
云数据库 Redis 版使用教程
云数据库Redis版是兼容Redis协议标准的、提供持久化的内存数据库服务,基于高可靠双机热备架构及可无缝扩展的集群架构,满足高读写性能场景及容量需弹性变配的业务需求。 产品详情:https://www.aliyun.com/product/kvstore &nbsp; &nbsp; ------------------------------------------------------------------------- 阿里云数据库体验:数据库上云实战 开发者云会免费提供一台带自建MySQL的源数据库&nbsp;ECS 实例和一台目标数据库&nbsp;RDS实例。跟着指引,您可以一步步实现将ECS自建数据库迁移到目标数据库RDS。 点击下方链接,领取免费ECS&amp;RDS资源,30分钟完成数据库上云实战!https://developer.aliyun.com/adc/scenario/51eefbd1894e42f6bb9acacadd3f9121?spm=a2c6h.13788135.J_3257954370.9.4ba85f24utseFl
相关文章
|
21天前
|
NoSQL Linux PHP
如何在不同操作系统上安装 Redis 服务器,包括 Linux 和 Windows 的具体步骤
本文介绍了如何在不同操作系统上安装 Redis 服务器,包括 Linux 和 Windows 的具体步骤。接着,对比了两种常用的 PHP Redis 客户端扩展:PhpRedis 和 Predis,详细说明了它们的安装方法及优缺点。最后,提供了使用 PhpRedis 和 Predis 在 PHP 中连接 Redis 服务器及进行字符串、列表、集合和哈希等数据类型的基本操作示例。
47 4
|
1月前
|
存储 SQL 关系型数据库
2024Mysql And Redis基础与进阶操作系列(1)作者——LJS[含MySQL的下载、安装、配置详解步骤及报错对应解决方法]
Mysql And Redis基础与进阶操作系列(1)之[MySQL的下载、安装、配置详解步骤及报错对应解决方法]
|
2月前
|
NoSQL Ubuntu Linux
Redis 安装
10月更文挑战第14天
58 1
|
28天前
|
NoSQL 编译器 Linux
【赵渝强老师】Redis的安装与访问
本文基于Redis 6.2版本,详细介绍了在CentOS 7 64位虚拟机环境中部署Redis的步骤。内容包括安装GCC编译器、创建安装目录、解压安装包、编译安装、配置文件修改、启动服务及验证等操作。视频讲解和相关图片帮助理解每一步骤。
|
2月前
|
NoSQL Linux Redis
Docker学习二(Centos):Docker安装并运行redis(成功运行)
这篇文章介绍了在CentOS系统上使用Docker安装并运行Redis数据库的详细步骤,包括拉取Redis镜像、创建挂载目录、下载配置文件、修改配置以及使用Docker命令运行Redis容器,并检查运行状态和使用Navicat连接Redis。
306 3
|
SQL NoSQL Java
Redis学习---大数据技术之Redis(NoSQL简介、Redis简介、Redis安装、五大数据类型、相关配置、持久化)
Redis学习---大数据技术之Redis(NoSQL简介、Redis简介、Redis安装、五大数据类型、相关配置、持久化)
|
2月前
|
NoSQL 数据可视化 Linux
redis学习四、可视化操作工具链接 centos redis,付费Redis Desktop Manager和免费Another Redis DeskTop Manager下载、安装
本文介绍了Redis的两个可视化管理工具:付费的Redis Desktop Manager和免费的Another Redis DeskTop Manager,包括它们的下载、安装和使用方法,以及在使用Another Redis DeskTop Manager连接Redis时可能遇到的问题和解决方案。
142 1
redis学习四、可视化操作工具链接 centos redis,付费Redis Desktop Manager和免费Another Redis DeskTop Manager下载、安装
|
6月前
|
存储 NoSQL 关系型数据库
Redis系列学习文章分享---第一篇(Redis快速入门之初始Redis--NoSql+安装redis+客户端+常用命令)
Redis系列学习文章分享---第一篇(Redis快速入门之初始Redis--NoSql+安装redis+客户端+常用命令)
154 1
|
存储 消息中间件 缓存
Redis 学习 | Redis 初识与安装
Redis 学习 | Redis 初识与安装
115 0
|
存储 NoSQL Linux
【Redis 系列】redis 学习二,redis 的特性,安装方式,及为什么 redis 会这么快
【Redis 系列】redis 学习二,redis 的特性,安装方式,及为什么 redis 会这么快