Redis单机安装和哨兵模式集群安装的实现
来源:脚本之家
时间:2022-12-30 10:42:55 196浏览 收藏
本篇文章给大家分享《Redis单机安装和哨兵模式集群安装的实现》,覆盖了数据库的常见基础知识,其实一个语言的全部知识点一篇文章是不可能说完的,但希望通过这些问题,让读者对自己的掌握程度有一定的认识(B 数),从而弥补自己的不足,更好的掌握它。
前言:
本文使用的是操作系统为: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
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单机安装和哨兵模式集群安装的实现》的介绍应该让你收获多多了吧!欢迎大家收藏或分享给更多需要学习的朋友吧~golang学习网公众号也会发布数据库相关知识,快来关注吧!
-
501 收藏
-
501 收藏
-
501 收藏
-
501 收藏
-
501 收藏
-
342 收藏
-
361 收藏
-
159 收藏
-
164 收藏
-
221 收藏
-
156 收藏
-
- 前端进阶之JavaScript设计模式
- 设计模式是开发人员在软件开发过程中面临一般问题时的解决方案,代表了最佳的实践。本课程的主打内容包括JS常见设计模式以及具体应用场景,打造一站式知识长龙服务,适合有JS基础的同学学习。
- 立即学习 542次学习
-
- GO语言核心编程课程
- 本课程采用真实案例,全面具体可落地,从理论到实践,一步一步将GO核心编程技术、编程思想、底层实现融会贯通,使学习者贴近时代脉搏,做IT互联网时代的弄潮儿。
- 立即学习 507次学习
-
- 简单聊聊mysql8与网络通信
- 如有问题加微信:Le-studyg;在课程中,我们将首先介绍MySQL8的新特性,包括性能优化、安全增强、新数据类型等,帮助学生快速熟悉MySQL8的最新功能。接着,我们将深入解析MySQL的网络通信机制,包括协议、连接管理、数据传输等,让
- 立即学习 497次学习
-
- JavaScript正则表达式基础与实战
- 在任何一门编程语言中,正则表达式,都是一项重要的知识,它提供了高效的字符串匹配与捕获机制,可以极大的简化程序设计。
- 立即学习 487次学习
-
- 从零制作响应式网站—Grid布局
- 本系列教程将展示从零制作一个假想的网络科技公司官网,分为导航,轮播,关于我们,成功案例,服务流程,团队介绍,数据部分,公司动态,底部信息等内容区块。网站整体采用CSSGrid布局,支持响应式,有流畅过渡和展现动画。
- 立即学习 484次学习