安装Redis

Redis 是一个高性能的key-value数据库。常用作缓存服务器使用。

1. 下载redis安装包,redis-3.2.11.tar.gz(http://download.redis.io/releases/redis-3.2.11.tar.gz)

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

2. 将安装包放到/usr/local/src/目录下

> mv redis-3.2.11.tar.gz /usr/local/src/

3. 解压安装包

> tar zxvf redis-3.2.11.tar.gz

4. 进入解压后的目录

> cd redis-3.2.11

5. 编译并安装(PREFIX指定目录)

> make PREFIX=/usr/local/redis install

6. 修改redis.conf

daemonize yes #后台运行

7. 将Redis的bin目录(/usr/local/redis/bin)加到系统环境变量中

8. 运行redis(后面加上文件名启动配置才能生效)

> redis-server redis.conf

9. 查看Redis是否已启动

ps -ef|grep redis

配置主从复制应对高并发

配置主从复制实现数据备份,确保数据安全,多个从同时提供读服务,提高并发访问量。

1. 进入redis主目录,将所有正在运行的redis进程关闭。

# redis-cli -p 6379 shutdown

2. 复制两份redis.conf文件,并命名为slave1.conf和slave2.conf。

# cp redis.conf slave1.conf

# cp redis.conf slave2.conf

3. 修改redis.conf、slave1.conf和slave2.conf,修改端口号,使一主两从共三个redis实例不冲突。

redis.conf修改port为6379

slave1.conf修改port为6380

slave2.conf修改port为6381

4. 分别启动三个redis实例。

> redis-server redis.conf

> redis-server slave1.conf

> redis-server slave2.conf

5. 启动后,分别进入两个slave实例客户端执行下面的命令:

> redis-cli -p 6380

127.0.0.1:6380> slaveof 127.0.0.1 6379 #指定本实例成为本机6379端口实例的slave

127.0.0.1:6380> exit

> redis-cli -p 6381

127.0.0.1:6381> slaveof 127.0.0.1 6379 #指定本实例成为本机6379端口实例的slave

127.0.0.1:6381> exit

开启哨兵实现高可用

开启哨兵监控redis服务的运行状态,当出现主服务异常关闭的情况时,哨兵会选举一个从服务为新的主服务,确保服务集群的高可用。

1. 进入redis主目录。

2. 复制两份sentinel.conf文件,并命名为sentinel1.conf和sentinel2.conf。

cp sentinel.conf sentinel1.conf

cp sentinel.conf sentinel2.conf

3. 修改sentinel1.conf和sentinel2.conf,修改端口号,使两个sentinel实例不冲突。

sentinel1.conf修改port为26380

sentinel2.conf修改port为26381

4. 分别启动两个sentinel实例。

> redis-sentinel sentinel1.conf &

> redis-sentinel sentinel2.conf &

开启成功后,当主redis实例异常关闭后,sentinel会从两个从redis实例中选出一个成为新的主人redis实例

当遇异常关闭的redis实例重新启动后,会变成新主人的从redis。

如果你的主从不在同一台服务器上,建议使用redis.conf中的bind绑定多个IP,不建议注释掉IP绑定使用密码来访问,更不要直接关闭保护模式。Redis本身是缓存服务器,为安全起见,不应该暴露在公网中。

Linux搭建高并发高可用Redis集群相关推荐

  1. 基于虚拟机高可用redis集群搭建

    redis集群搭建 介绍 刚开始学习 redis集群搭建可能会被繁琐的配置劝退,但重复配置是我们敲代码路上最平坦的一条路了,希望晨雨和大家以后都有足够的耐心,学好技术,装好B格.本文基于redis-5 ...

  2. 【15W字长文】主从复制高可用Redis集群,完整包含Redis所有知识点

    往期文章一览 分布式会话与单点登录SSO系统CAS,包含完整示例代码实现 [7W字长文]使用LVS+Keepalived实现Nginx高可用,一文搞懂Nginx 主从复制高可用Redis集群 分布式架 ...

  3. 使用Docker Compose部署基于Sentinel的高可用Redis集群

    大家一定非常熟悉如何利用Docker启动单个Redis容器用于开发环境,本文将介绍如何利用Docker Compose模板在本机和云端部署基于Sentinel的高可用Redis 3集群. Redis集 ...

  4. 如何保证 Redis 高可用和高并发(主从+哨兵+集群)

    1. 概述 Redis 作为一种高性能的内存数据库,普遍用于目前主流的分布式架构系统中.为了提高系统的容错率,使用多实例的 Redis 也是必不可免的,但同样复杂度也相比单实例高出很多. 那么如何保证 ...

  5. mysql galera 高并发_MySQL的高可用性集群Galera Cluste

    一.Galera Cluste简介 1.Galera Cluster 集成了Galera插件的MySQL集群,是一种新型的,数据不共享的,高度冗余的高可用方案,目前Galera Cluster有两个版 ...

  6. 【Linux部署】借助Docker部署Redis集群(Docker网卡创建+6个Redis集群搭建shell脚本)

    话不多说,直接上代码- # 创建桥接 网卡 docker network create redis --subnet 172.38.0.0/16 # 查看所有 网卡 docker network ls ...

  7. mac os 开启redis_高并发大流量,总会想到它!来一起通过docker搭建redis集群

    现在一般的项目都会用到redis做缓存,也不免有老铁没用过,我就一起说下吧. redis 官网 https://redis.io/ Redis是一个开源(BSD许可)的内存数据结构存储,用作数据库.缓 ...

  8. 搭建高可用的redis集群,避免standalone模式带给你的苦难

    现在项目上用redis的话,很少说不用集群的情况,毕竟如果生产上只有一台redis会有极大的风险,比如机器挂掉,或者内存爆掉,就比如我们生产环境 曾今也遭遇到这种情况,导致redis内存不够挂掉的情况 ...

  9. 带你搭建一下虚拟机和Redis集群,记得收藏

    前言: 我们看到分析 Redis 使用或原理的文章不少,但是完整搭建一套独立的 redis 集群环境的介绍,并不是很多或者说还不够详细. 那么,本文会手把手带着大家搭建一套 Redis 集群环境,Re ...

最新文章

  1. html5div上下滚动,html5 – 在另一个div上滚动div
  2. 解决电脑重启后 ubuntu 不能联网
  3. 分组聚合显示全部列_小胖带你学SQL(三)聚合与排序
  4. 深度学习将会变革NLP中的中文分词——TODO 待好好细看
  5. 密码控件安全技术浅析及攻击实例
  6. 2-6 基于SpringBoot的SpringSecurity环境快速搭建与验证
  7. 一次性说清楚秒验(本机号码一键登录)基本原理、优势、场景、交互过程和常见的问题
  8. Webrtc demo system
  9. sift算法搭建(上半部,五,求二阶三阶黑塞矩阵的逆程序对比,c#实现)
  10. 林期苏曼属性标签编辑_标签制作软件如何制作椭圆形药品标签
  11. 数据结构与算法(陈越版)第一讲 基本概念
  12. 百度热力图颜色说明_最新黑科技!看完东莞的城市热力图,你就知道该在哪里买房了!...
  13. 使用rapidxml 生成xml文件
  14. RecyclerView添加下划线
  15. 【系统分析师之路】2015年系统分析师上午综合知识真题
  16. TGA--数据压缩第二次作业
  17. 深度剖析APP保活案例
  18. 报告发布|“双轮驱动”重磅升级,天猫联合瓴羊、罗兰贝格发布《天猫DTC企业经营指南 :以人为本,品牌致胜》
  19. 什么叫做展望_什么叫做展望未来。。
  20. 移动游戏性能测试工具

热门文章

  1. 交换两个整型变量的数值
  2. 处理字符集中的算式问题
  3. 第三次作业:PSP耗时
  4. SheevaPlug是什么,有什么用途
  5. R12 应付款模块(AP):预付款(prepayment)的标准处理流程
  6. 通过 .NET Framework 中的 XPath 和 XSLT API 方便地操作 XML 数据
  7. boost::split()的使用方式
  8. 安卓9.0添加服务修改SELinux
  9. Linux背后的思想
  10. Linux C实现简单的shell