Redis 单机安装和哨兵模式集群安装的实现

 更新时间:2022年07月10日 09:54:17   作者:慕菲烟云  
本文主要介绍了Redis 单机安装和哨兵模式集群安装的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧

前言:

本文使用的是操作系统为:linux centos7

本文使用的Redis版本为:redis-5.0.13

其他系统或者版本也可以按照以下步骤安装

1、Redis单机版安装

1.1:下载安装包

官网地址:Redis

下载地址为:https://download.redis.io/releases/redis-5.0.13.tar.gz

cd /usr/local/src/
wget https://download.redis.io/releases/redis-5.0.13.tar.gz

看到redis-5.0.13.tar.gz 文件就说明下载成功了

1.2:解压安装包

tar -zxvf redis-5.0.13.tar.gz

解压完成后进入解压后的文件夹会看到如下的文件内容 

cd redis-5.0.13
ll
 
-rw-rw-r--.  1 root root 125833 Jul 22 02:07 00-RELEASENOTES
-rw-rw-r--.  1 root root     53 Jul 22 02:07 BUGS
-rw-rw-r--.  1 root root   2381 Jul 22 02:07 CONTRIBUTING
-rw-rw-r--.  1 root root   1487 Jul 22 02:07 COPYING
drwxrwxr-x.  6 root root    124 Jul 22 02:07 deps
-rw-rw-r--.  1 root root     11 Jul 22 02:07 INSTALL
-rw-rw-r--.  1 root root    151 Jul 22 02:07 Makefile
-rw-rw-r--.  1 root root   6888 Jul 22 02:07 MANIFESTO
-rw-rw-r--.  1 root root  20555 Jul 22 02:07 README.md
-rw-rw-r--.  1 root root  63088 Jul 22 02:07 redis.conf
-rwxrwxr-x.  1 root root    275 Jul 22 02:07 runtest
-rwxrwxr-x.  1 root root    280 Jul 22 02:07 runtest-cluster
-rwxrwxr-x.  1 root root    373 Jul 22 02:07 runtest-moduleapi
-rwxrwxr-x.  1 root root    281 Jul 22 02:07 runtest-sentinel
-rw-rw-r--.  1 root root   9710 Jul 22 02:07 sentinel.conf
drwxrwxr-x.  3 root root   4096 Jul 22 02:07 src
drwxrwxr-x. 11 root root    182 Jul 22 02:07 tests
drwxrwxr-x.  8 root root   4096 Jul 22 02:07 utils

1.3:执行make命令,编译redis代码

make

一般会出现一下错误,不要慌,由于 redis 是用 C 语言开发,安装之前必先确认是否安装 gcc 环境(gcc -v),如果没有安装,执行以下命令进行安装  yum install -y gcc

 gcc环境安装成功后,执行 make distclean 清楚之间的make记录,然后重新 make

1.4:安装并指定安装目录

make install PREFIX=/usr/local/redis

1.5:配置环境变量

vi /etc/profile
#在最后面加上以下内容
export REDIS_HOME=/usr/local/redis
export PATH=$PATH:$REDIS_HOME/bin
#使环境变量生效
source /etc/profile

1.6:让redis作为服务进行后台启动

1.6.1:从 redis 的源码目录中复制 redis.conf 到 redis 的安装目录

cp /usr/local/src/redis-5.0.13/redis.conf /usr/local/redis/bin/

1.6.2:修改 redis.conf 文件,把 daemonize no 改为 daemonize yes,使redis作为守护线程启动

cd /usr/local/redis/bin/
vi redis.conf

1.6.3:后台启动,并且链接redis测试, 执行一下命令启动redis

redis-server /usr/local/redis/bin/redis.conf

然后执行 redis-cli 连接redis,然后set get 数据测试

至此,单机版redis已经安装成功了!!!

1.7:redis关闭服务

redis-cli shutdown

2、Redis 集群版安装

说明本文的redis集群版本,使用的是主从复制的集群版本安装

2.1:基本的集群拓扑图如下

2.2:修改redis-sentinel的配置文件 sentinel.conf

#sentinel-1 配置文件修改内容
port 26379
sentinel monitor mymaster 192.168.33.100 6379 2
 
#sentinel-2 配置文件修改内容
port 26380
sentinel monitor mymaster 192.168.33.100 6379 2
 
#sentinel-3 配置文件修改内容
port 26380
sentinel monitor mymaster 192.168.33.100 6379 2

sentinel monitor <master-name> <ip> <redis-port> <quorum> 配置文件说明:该配置是告诉sentinel去监听地址为ip:port的一个master,这里的master-name可以自定义,quorum是一个数字,指明当有多少个sentinel认为一个master失效时,master才算真正失效。master-name只能包含英文字母,数字,和“.-_”这三个字符需要注意的是master-ip 要写真实的ip地址而不要用回环地址(127.0.0.1)。

2.3:修改redis-server的配置文件 redis.conf

# redis-1 的 redis.conf配置
port 6379
 
# redis-2 的 redis.conf配置
port 6380
replicaof 127.0.0.1 6379
 
# redis-3 的 redis.conf配置
port 6381
replicaof 127.0.0.1 6379

2.4:分别启动 redis-1,redis-2,redis-3 服务

2.5:分别启动 sentinel-1, sentinel-2, sentinel-3

cd /usr/local/redis/bin
redis-sentinel sentinel.conf

2.6:验证集群效果

2.6.1:连接到主redis服务,查看集群情况,可以看到有当前redis为master,其他两台redis服务为slave

redis-cli -h 192.168.33.100 -p 6379
info replication
#得到以下内容
role:master
connected_slaves:2
slave0:ip=192.168.33.101,port=6380,state=online,offset=246573,lag=1
slave1:ip=192.168.33.102,port=6381,state=online,offset=246706,lag=0
master_replid:bc4a9331019d765fe16199fcdcb357b4681a9f75
master_replid2:b41587d209ec96c2b2c634c1880fed7b12ded6e8
master_repl_offset:246839
second_repl_offset:221755
repl_backlog_active:1
repl_backlog_size:1048576
repl_backlog_first_byte_offset:9553
repl_backlog_histlen:237287

2.6.2:停止redis主服务

redis-cli -h 192.168.33.100 -p 6379 shutdown

2.6.3:查看sentinel服务的日志,可以看到redis主服务宕机,sentinel服务主动切换6381为主redis服务

2.6.4:再次启动6379端口 redis 服务查看集群情况,可以看到,6379已经变为从服务了

 至此,哨兵模式的高可用主从复制集群已经搭建好了

到此这篇关于Redis 单机安装和哨兵模式集群安装的实现的文章就介绍到这了,更多相关Redis 哨兵模式集群安装内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • 基于Redis实现抽奖功能及问题小结

    基于Redis实现抽奖功能及问题小结

    这篇文章主要介绍了基于Redis实现抽奖功能,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2021-08-08
  • Redis实现布隆过滤器的代码详解

    Redis实现布隆过滤器的代码详解

    布隆过滤器(Bloom Filter)是Redis 4.0版本提供的新功能,它被作为插件加载到Redis服务器中,给Redis提供强大的去重功能,本文将给大家详细介绍一下Redis布隆过滤器,文中有相关的代码示例,需要的朋友可以参考下
    2023-07-07
  • 一篇文章带你弄清楚Redis的精髓

    一篇文章带你弄清楚Redis的精髓

    Redis是一个开源的、支持网络、基于内存的键值对存储系统,它可以用作数据库、缓存和消息中间件。它支持多种数据类型,包括字符串、散列、列表、集合、位图等,拥有极快的读写速度,并且支持丰富的特性,如事务、持久化、复制、脚本、发布/订阅等。
    2023-02-02
  • Redis配合SSDB实现持久化存储代码示例

    Redis配合SSDB实现持久化存储代码示例

    这篇文章主要介绍了Redis配合SSDB实现持久化存储代码示例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-11-11
  • redis初学者常见字符乱码问题及解决方案

    redis初学者常见字符乱码问题及解决方案

    这篇文章主要介绍了redis初学者常见字符乱码问题及解决方案,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2023-09-09
  • Linux中Redis安装部署的操作步骤

    Linux中Redis安装部署的操作步骤

    公司一直在使用redis集群,寻思着自己也部署一套练练手,下面这篇文章主要给大家介绍了关于Linux中Redis安装部署的操作步骤,需要的朋友可以参考下
    2022-04-04
  • Redis事务处理的使用操作方法

    Redis事务处理的使用操作方法

    Redis保证一个事务中的所有命令要么都执行,要么都不执行(原子性),如果客户端发送了EXEC命令,所有的命令就都会被执行,即使此后客户端断线也没关系,因为Redis中已经记录了所有要执行的命令,下面通过本文给大家介绍Redis事务处理的使用操作,感兴趣的朋友一起看看吧
    2021-10-10
  • redis3.2配置文件redis.conf详细说明

    redis3.2配置文件redis.conf详细说明

    redis3.2配置详解,Redis启动的时候,可以指定配置文件,详细说明请看本文说明
    2018-03-03
  • redis开启和禁用登陆密码校验的方法

    redis开启和禁用登陆密码校验的方法

    今天小编就为大家分享一篇redis开启和禁用登陆密码校验的方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-05-05
  • Redis使用bloom-filter过滤器实现推荐去重

    Redis使用bloom-filter过滤器实现推荐去重

    这篇文章主要介绍了Redis使用bloom-filter过滤器实现推荐去重,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-11-11

最新评论