IT小栈

  • 主页
  • Java基础
  • RocketMQ
  • Kafka
  • Redis
  • Shiro
  • Spring
  • Spring Boot
  • Spring Cloud
  • 资料链接
  • 关于
所有文章 友链

IT小栈

  • 主页
  • Java基础
  • RocketMQ
  • Kafka
  • Redis
  • Shiro
  • Spring
  • Spring Boot
  • Spring Cloud
  • 资料链接
  • 关于

Redis集群模式安装部署

2020-04-11

Redis的sentinel哨兵模式虽然可以解决Redis单点故障的问题,但是一主多从的结构必然会导致客户端写入数据只能在Master节点上操作,当写入量特别大的时候主节点压力就会很大,sentinel无法分布式将数据存放到其他服务器上。Redis从3.0版本之后提供了cluster集群模式,解决了这个问题。

1、环境准备

下载地址:http://download.redis.io/releases/

版本:redis-5.0.5.tar.gz

IP 端口
192.168.115.241 7001
192.168.115.241 7002
192.168.115.241 7003
192.168.115.242 7004
192.168.115.242 7005
192.168.115.242 7006

2、安装

redis 5.0版本 集群搭建不需要我们安装ruby就可以搭建成功我们先安装一台服务器,另外一台服务器的操作步骤一样。

2.1、编译

创建安装目录

1
mkdir /usr/local/redis-cluster

上传redis-5.0.5.tar.gz安装包到新创建的目录下,解压安装包到当前目录

1
tar -zxvf redis-5.0.5.tar.gz  -C /usr/local/redis-cluster

编译、安装到/usr/local/redis-cluster目录下

1
2
3
cd /usr/local/redis-cluster/redis-5.0.5
make
make PREFIX=/usr/local/redis-cluster install

2.2、配置文件

创建配置文件目录

1
2
3
4
mkdir -p /usr/local/redis-cluster/conf
mkdir -p /usr/local/redis-cluster/data
mkdir -p /usr/local/redis-cluster/logs
cp redis.conf /usr/local/redis-cluster/conf/redis-7001.conf

配置节点文件

1
2
cd /usr/local/redis-cluster/conf
vi redis-7001.conf
1
2
3
4
5
6
7
8
9
10
bind 0.0.0.0
port 7001
daemonize yes
pidfile /var/run/redis_7001.pid
logfile "/usr/local/redis-cluster/logs/redis_7001.log"
dbfilename "dump-7001.rdb"
dir "/usr/local/redis-cluster/data"
cluster-enabled yes
cluster-config-file "/usr/local/redis-cluster/conf/nodes-7001.conf"
cluster-node-timeout 15000

其他两个节点7002、7003将上述配置文件中的7001改成对应的端口即可

1
2
cp redis-7001.conf redis-7002.conf 
cp redis-7001.conf redis-7003.conf

另一台服务器按照上面步骤安装另外三个节点端口号是7004、7005、7006,配置文件中的端口号相应的修改

2.3、创建集群

启动6个单节点

1
2
3
4
cd /usr/local/redis-cluster/bin/
./redis-server ../conf/redis-7001.conf
./redis-server ../conf/redis-7002.conf
./redis-server ../conf/redis-7003.conf

另一台服务器

1
2
3
4
cd /usr/local/redis-cluster/bin/
./redis-server ../conf/redis-7004.conf
./redis-server ../conf/redis-7005.conf
./redis-server ../conf/redis-7006.conf

查看进程

做集群的主从关联

1
![redis-cluster-az-2](D:\Program Files\Hexo\source\_posts\Redis集群模式安装部署\redis-cluster-az-2.png)./redis-cli --cluster create --cluster-replicas 1  192.168.115.241:7001 192.168.115.241:7002 192.168.115.241:7003 192.168.115.242:7004 192.168.115.242:7005 192.168.115.242:7006

结果

2.4、查看节点信息

1
2
[root@node1 bin]# ./redis-cli -h 192.168.115.241 -p 7001 -c
192.168.115.241:7001> cluster info

查看各个节点信息

3、测试故障

从上面的信息中我们看到主节点分别是7001、7002、7004、分别对应的从节点是7006、7005、7003。任伟杀掉7001主点,那么7006则会升级为主节点,我们测试下。

查看集群节点信息

7001节点状态是fail不可用状态,此时的7006节点由slave升级为master

本文作者: 顾 明 训
本文链接: https://www.itzones.cn/2020/04/11/Redis集群模式安装部署/
版权声明: 本作品采用 知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议 进行许可。转载请注明出处!
  • Redis Cluster
  • redis

扫一扫,分享到微信

微信分享二维码
Redis简单介绍
Redis哨兵模式安装部署
  1. 1. 1、环境准备
  2. 2. 2、安装
    1. 2.1. 2.1、编译
    2. 2.2. 2.2、配置文件
    3. 2.3. 2.3、创建集群
    4. 2.4. 2.4、查看节点信息
  3. 3. 3、测试故障
© 2020 IT小栈
载入天数...载入时分秒... || 本站总访问量次 || 本站访客数人次
Hexo Theme Yilia by Litten
  • 所有文章
  • 友链

tag:

  • jvm
  • Java基础
  • kafka HW
  • kafka Leader Epoch
  • kafka
  • kafka位移主题
  • kafka位移提交
  • kafka副本机制
  • kafka ISR
  • zookeeper
  • kafka消息丢失
  • kafka日志存储
  • kafka Log Clean
  • kafka Log Compaction
  • kafka消费位移设置
  • kafka Rebalance
  • kafka分区算法
  • kafka生产者拦截器
  • kafka SASL/SCRAM
  • kafka ACL
  • redis
  • redis Ziplist
  • redis Hashtable
  • redis LinkedList
  • redis QuickList
  • redis intset
  • redis String
  • redis SDS
  • redis SkipList
  • redisDb
  • redisServer
  • redis 简介
  • Redis Cluster
  • 主从同步
  • RocketMQ高可用HA
  • 事务消息
  • 内存映射
  • MMAP
  • 同步刷盘
  • 异步刷盘
  • 消息存储文件
  • RocketMQ安装
  • 延迟消息
  • RocketMQ入门
  • 推拉模式
  • PushConsumer
  • 消费结果处理
  • rebalance
  • RocketMQ权限控制
  • RocketMQ ACL
  • 消息过滤
  • 消息重试
  • 消费位置
  • 集群消费
  • 广播消费
  • 运维命令
  • shiro源码分析
  • shiro入门
  • IOC和DI
  • Spring创建Bean
  • Bean生命周期
  • Sping属性注入
  • 异常
  • SpringMVC
  • springCloud
  • Eureka

    缺失模块。
    1、请确保node版本大于6.2
    2、在博客根目录(注意不是yilia根目录)执行以下命令:
    npm i hexo-generator-json-content --save

    3、在根目录_config.yml里添加配置:

      jsonContent:
        meta: false
        pages: false
        posts:
          title: true
          date: true
          path: true
          text: false
          raw: false
          content: false
          slug: false
          updated: false
          comments: false
          link: false
          permalink: false
          excerpt: false
          categories: false
          tags: true
    

  • 我的OSCHINA
  • 我的CSDN
  • 我的GITHUB
  • 一生太水