文档章节

Redis集群搭建

影狼
 影狼
发布于 2017/08/18 11:19
字数 604
阅读 17
收藏 0
点赞 0
评论 1
  • 在3.0之前,提供了Sentinel工具来监控各Master的状态,如果Master异常,则会做主从切换,将slave切换为master,将master作为slave。
  • Redis3.0已经支持集群的容错功能。
  • 集群搭建:至少要三个master。
    • 创建一个文件夹redis-cluster,然后在其下面分别创建6个文件夹。
      • mkdir -p /usr/local/redis-cluster
      • mkdir 7001 7002 7003 7004 7005 7006
    • 把redis.conf配置文件分别copy到700中,进行修改各个文件内容,也就是对700下的每一个copy的redis.conf文件进行修改。
      • daemonize yes
      • port 700* (分别对每个机器的端口号进行设置)
      • bind 192.168.1.171(必须要绑定当前机器的ip)
      • dir /usr/local/redis-cluster/700*/ (指定数据文件存储位置,必须要指定不同的目录位置,不然会丢失数据)
      • cluster-enabled yes(启动集群模式)
      • cluster-config-file nodes700*.conf(这里700*最好跟port对应上)
      • cluster-node-timeout 5000
      • appendonly yes
    • 把修改后的配置文件,分别copy到各个文件夹下,注意每个文件要修改端口号,并且nodes文件也要补相同。
    • 由于redis集群需要使用ruby命令,所以我们要安装ruby。
      • yum install ruby
      • yum install rubygems
      • gem install redis(安装redis和ruby的接口)
    • 分别启动6个redis实例,然后检查是否启动成功
      • /usr/local/redis/bin/redis-server /usr/local/redis-cluster/700*/redis.conf
      • ps -el | grep redis 查看是否启动成功
    • 首先到redis的安装目录下,然后执行redis-trib.rb命令
      • cd /usr/local/redis/src
      • ./redis-trib.rb create --replicas 1 192.168.1.171:7001 192.168.1.171:7002 192.168.1.171:7003 192.168.1.171:7004 192.168.1.171:7005 192.168.1.171:7006
        • —replicas 1 表示主节点和从节点的比例,表示1个主节点下有一个从节点
    • 进行验证
      • 连接任意一个客户端即可:./redis-cli -c -h -p (-c表示集群模式,指定ip地址和端口)如./redis-cli -c -h 192.168.1.171 -p 700*
      • 进行验证:cluster info(查看集群信息)、cluster nodes(查看节点列表)
      • 进行数据操作验证
      • 关闭集群则需要逐个进行关闭,使用命令:/usr/local/redis/bin/redis-cli -c -h 192.168.1.171 -p 700* shutdown
    • 补充
      • 当出现集群无法启动时,删除临时的数据文件,再次重新启动每一个redis服务,然后重新构造集群环境。
  • Redis3.0操作集群
    • redis集群操作主要命令
      • create:构建集群
      • fix:单点修复
      • check:集群验证
      • add-node:添加节点
      • del-node:删除节点
      • reshard:重新分片

© 著作权归作者所有

共有 人打赏支持
影狼
粉丝 18
博文 100
码字总数 50829
作品 0
海淀
程序员
加载中

评论(1)

leehark
leehark
请问 有没有在生产环境下使用过redis3.0 cluster? 并发量有多少?遇到什么坑?

暂无相关文章

Spring Bean基础

1、Bean之间引用 <!--如果Bean配置在同一个XML文件中,使用local引用--><ref bean="someBean"/><!--如果Bean配置在不同的XML文件中,使用ref引用--><ref local="someBean"/> 其实两种......

霍淇滨 ⋅ 24分钟前 ⋅ 0

05、基于Consul+Upsync+Nginx实现动态负载均衡

1、Consul环境搭建 下载consul_0.7.5_linux_amd64.zip到/usr/local/src目录 cd /usr/local/srcwget https://releases.hashicorp.com/consul/0.7.5/consul_0.7.5_linux_amd64.zip 解压consu......

北岩 ⋅ 27分钟前 ⋅ 0

Webpack 4 api 了解与使用

webpack 最近升级到了 v4.5+版 01 官方不再支持 node4 以下版本 官方不再支持 node4 以下版本官方不再支持 node4 以下的版本,所以如果你的node版本太低,先开始升级node吧!话说node10 ...

NDweb ⋅ 36分钟前 ⋅ 0

使用nodeJs安装Vue-cli

Vue脚手架就是一个Vue框架开发环境 脚手架的意思是帮你快速开始一个vue的项目,也就是给你一套vue的结构,包含基础的依赖库,只需要 npm install就可以安装,让我们不需要为了编辑或者一些其...

木筏笔歆 ⋅ 今天 ⋅ 0

【微信小程序开发实战】0x00.开发前准备工作

写在开始 本人资深后端码农一枚,近期项目需求,接触到了微信小程序,将学习过程整理成文分享给小伙伴们,由于是边学边整理难免有表述不对的地方,望大家及时指正,感谢。 本人微信号: dream...

dreamans ⋅ 今天 ⋅ 0

linux redis的安装和php7下安装redis扩展

安装redis服务器 (1)下载安装包: $ wget http://download.redis.io/releases/redis-2.8.17.tar.gz (2)编译程序: $ tar xzf redis-2.8.17.tar.gz $ cd redis-2.8.17 $ make $ cd src &&......

concat ⋅ 今天 ⋅ 0

Guava EventBus源码解析

一、EventBus使用场景示例 Guava EventBus是事件发布/订阅框架,采用观察者模式,通过解耦发布者和订阅者简化事件(消息)的传递。这有点像简化版的MQ,除去了Broker,由EventBus托管了订阅&...

SaintTinyBoy ⋅ 今天 ⋅ 0

http怎么做自动跳转https

Apache 版本 如果需要整站跳转,则在网站的配置文件的<Directory>标签内,键入以下内容: RewriteEngine on RewriteCond %{SERVER_PORT} !^443$ RewriteRule ^(.*)?$ https://%{SERVER_NAME......

Helios51 ⋅ 今天 ⋅ 0

Python爬虫,抓取淘宝商品评论内容

作为一个资深吃货,网购各种零食是很频繁的,但是能否在浩瀚的商品库中找到合适的东西,就只能参考评论了!今天给大家分享用python做个抓取淘宝商品评论的小爬虫! 思路 我们就拿“德州扒鸡”...

python玩家 ⋅ 今天 ⋅ 0

MySQL 内核深度优化

MYSQL数据库适用场景广泛,相较于Oracle、DB2性价比更高,Web网站、日志系统、数据仓库等场景都有MYSQL用武之地,但是也存在对于事务性支持不太好(MySQL 5.5版本开始默认引擎才是InnoDB事务...

java高级架构牛人 ⋅ 今天 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部