配置redis三主三从
主从环境
centos7.6
redis4.0.1
| 主 | 从 |
|---|---|
| 192.168.181.139:6379 | 192.168.181.136:6379 |
| 192.168.181.136:6380 | 192.168.181.137:6380 |
| 192.168.181.137:6381 | 192.168.181.139:6381 |
集群实例配置
这里展示192.168.181.139:6379节点的,其他配置修改ip、端口号和文件名
bind 192.168.181.139
port 6379
pidfile /var/run/redis-master-6379.pid
logfile "/data/logs/redis/redis-master-6379.log"
dbfilename dump-master-6379.rdb
dir "/data/redis"
appendonly yes
appendfilename "appendonly-master-6379.aof"
aof-use-rdb-preamble yes
cluster-enabled yes
cluster-config-file nodes-master-6379.conf
cluster-node-timeout 10000
启动实例
完成各个实例启动,该过程略,自行完成实例启动
配置三主三从
配置过程有两种方法,第一个是手动配置,第二个是采用redis-trib.rb工具配置,这先用手动配置。集群配置过程分为节点握手和数据槽分配以及主从关系配置三个操作构成。
手动配置三主三从
以下操作在192.168.181.139主机上完成,集群信息共享,所以只用一个节点操作即可
节点握手
# 实例发现
redis-cli -h 192.168.181.139 -p 6379 cluster meet 192.168.181.139 6379
redis-cli -h 192.168.181.139 -p 6379 cluster meet 192.168.181.139 6381
redis-cli -h 192.168.181.139 -p 6379 cluster meet 192.168.181.136 6380
redis-cli -h 192.168.181.139 -p 6379 cluster meet 192.168.181.136 6379
redis-cli -h 192.168.181.139 -p 6379 cluster meet 192.168.181.137 6381
redis-cli -h 192.168.181.139 -p 6379 cluster meet 192.168.181.137 6380
*数据槽分配
# 分配数据槽
for i in {0..5400}; do redis-cli -h 192.168.181.139 -p 6379 cluster addslots $i; done > /dev/null
for i in {5401..11000}; do redis-cli -h 192.168.181.136 -p 6380 cluster addslots $i; done > /dev/null
for i in {11001..16383}; do redis-cli -h 192.168.181.137 -p 6381 cluster addslots $i; done > /dev/null
到这一步,一个三主的redis集群已经搭建起来了,接下来配置主从关系,注意,尽量不要让一对主从关系出现在同一个系统上,避免系统故障带来损失
配置集群主从关系是通过实例ID的来配置的,实例ID是唯一性的,查看集群节点,注意查看节点ID,接下来配置主从关系需要用到
# 查看节点ID
[root@ware2 ~]# redis-cli -h 192.168.181.139 -p 6379 cluster nodes
0b03d2098d7cb7e10d540747eed9b2804c424d18 192.168.181.136:6380@16380 master - 0 1551059531000 2 connected 5401-11000
4bf34e9120d54a4d3d609fdea3cf5613787f0d2d 192.168.181.139:6379@16379 myself,master - 0 1551059528000 1 connected 0-5400
ea9e5923466ee0df2447f10c3835ddf1041c0d7f 192.168.181.137:6380@16380 master - 0 1551059531661 5 connected
f0e6d8f9d84209623613dd48a00c8c263b5ecc88 192.168.181.137:6381@16381 master - 0 1551059531000 0 connected 11001-16383
c32bb72dda43f27dd9554cfda556de10ea1220cf 192.168.181.139:6381@16381 master - 0 1551059532000 4 connected
3c2e20644c38878cceb5e4b89a9c9ba7adf03d2a 192.168.181.136:6379@16379 master - 0 1551059532669 3 connected
配置主从关系
# 192.168.181.136:6379作为4bf34e9120d54a4d3d609fdea3cf5613787f0d2d(192.168.181.139:6379)的从实例,以下类似
redis-cli -h 192.168.181.136 -p 6379 cluster replicate 4bf34e9120d54a4d3d609fdea3cf5613787f0d2d
redis-cli -h 192.168.181.137 -p 6380 cluster replicate 0b03d2098d7cb7e10d540747eed9b2804c424d18
redis-cli -h 192.168.181.139 -p 6381 cluster replicate f0e6d8f9d84209623613dd48a00c8c263b5ecc88

到这一步,集群配置完成,可以用以下命令分别查看主从状态和集群信息
# 主从状态
redis-cli -h 192.168.181.139 -p 6379 cluster nodes
# 集群信息
redis-cli -h 192.168.181.139 -p 6379 cluster info
使用redis-trib.rb创建集群
该工具在redis安装后的src目录,对应配置redis集群非常方便,需要安装ruby(version>2.2)环境
本次实验在centos7.6,但自带的ruby2.0版本低于要求,需要手动安装ruby
安装ruby
# 安装rvm
# 通过gpg2导入密钥
gpg2 --keyserver hkp://keys.gnupg.net --recv-keys D39DC0E3
curl -sSL https://rvm.io/pkuczynski.asc | gpg2 --import -
https://rvm.io/mpapis.asc | gpg2 --import -
curl -L get.rvm.io | bash -s stable
source /usr/local/rvm/scripts/rvm
rvm常见操作
# 查看rvm库中已知的ruby版本
rvm list known
# 安装一个ruby版本
rvm install 2.3.3
# 使用一个ruby版本
rvm use 2.3.3
# 设置默认版本
rvm use 2.3.3 --default
# 卸载一个已知版本
rvm remove 2.0.0
# 安装redis,这一步很关键
gem install redis
到这一步已经可以使用redis-trib.rb配置集群了
使用redis-trib.rb create命令完成节点握手和槽分配过程
注意:指定 主从节点时,前三个为主节点;后三个为对应从节点
# 在这之前重新搭配环境,删除文件,然后启动各个实例
redis-trib.rb create --replicas 1 192.168.181.139:6379 192.168.181.136:6380 192.168.181.137:6381 192.168.181.139:6381 192.168.181.136:6379 192.168.181.137:6380
配置redis三主三从的更多相关文章
- redis cluster + sentinel详细过程和错误处理三主三备三哨兵
redis cluster + sentinel详细过程和错误处理三主三备三哨兵1.基本架构192.168.70.215 7001 Master + sentinel 27001192.168.70. ...
- centos 7 两台机器搭建三主三从 redis 集群
参考自:https://linux.cn/article-6719-1.htmlhttp://blog.csdn.net/xu470438000/article/details/42971091 ## ...
- 在三台服务器,搭建redis三主三从集群
一.资源准备 1.准备三台服务器H1.H2.H3 172.26.237.83 H1 172.26.237.84 H2 172.26.237.85 H3 二.配置服务器 1.在H1服务器设置SSH免密登 ...
- Redis集群搭建 三主三从
Redis集群介绍 Redis 是一个开源的 key-value 存储系统,由于出众的性能,大部分互联网企业都用来做服务器端缓存.Redis在3.0版本之前只支持单实例模式 虽然支持主从模式,哨兵模式 ...
- 搭建Redis三主三从集群
Redis三主三从集群规划 10.0.128.19 使用端口 7000 7001 10.0.128.22 使用端口 7002 7003 10.0.128.23 使用端口 7004 7 ...
- Redis Cluster 集群三主三从高可用环境搭建
前言 Redis 是我们目前大规模使用的缓存中间件,由于它强大高效而又便捷的功能,得到了广泛的使用. Window环境下载地址:https://github.com/tporadowski/redis ...
- RocketMQ三主三从二命名服务平滑版本升级实操
本文介绍本次进行RocketMQ平滑过渡升级的实际操作 前文已经介绍过了升级基本原理,主要思想就是先升级NameSrv(命名服务)然后在升级broker节点.broker节点先升级master节点然 ...
- k8s 上部署 Redis 三主三从 集群
目录 介绍 为什么要使用Redis? 什么是Redis群集? 在Kubernetes中部署Redis集群 从 GitHub 上下载: 创建pv 创建statefulset 创建service 初始化 ...
- K8S部署Redis Cluster集群(三主三从模式) - 部署笔记
一.Redis 介绍 Redis代表REmote DIctionary Server是一种开源的内存中数据存储,通常用作数据库,缓存或消息代理.它可以存储和操作高级数据类型,例如列表,地图,集合和排序 ...
随机推荐
- Mac SavePanel 保存文件的GUI代码
// Move the recorded temporary file to a user-specified location (视频文件另存储过程,依据用户选择的路径和文件保存名) NSSaveP ...
- JavaScript基础 -- 常见DOM树操作
1.创建并增加元素节点 <ul id="ul"> <li>1</li> <li>2</li> <li>3&l ...
- 动态代理3--Spring AOP分析
Spring AOP的基本实现方式 Spring AOP,一种模块化机制,能够动态的对切点添加行为,而不破坏原有的代码结构. 这是一个非常好地动态代理的应用方式.Spring AOP实现依赖于JDK ...
- RK3288 6.0 双屏异显,横屏+竖屏【转】
本文转载自:http://blog.csdn.net/clx44551/article/details/78215730?locationNum=8&fps=1 RK3288 6.0 双屏异显 ...
- JFreeChart自我总结
想飞就别怕摔 大爷的并TM骂人 JFreeChart自我总结 1.饼图.柱状图.折线图生成的工具类 1 package com.text.util; 2 3 import java.awt. ...
- list集合去重复元素
//set集合去重,不打乱顺序 public static void main(String[] args){ List<String> list = new ArrayList<S ...
- 8 种提升ASP.NET Web API性能的方法
ASP.NET Web API 是非常棒的技术.编写 Web API 十分容易,以致于很多开发者没有在应用程序结构设计上花时间来获得很好的执行性能. 在本文中,我将介绍8项提高 ASP.NET Web ...
- 给独立搭建的博客启用https的过程
申请SSL证书 我自己独立搭建的博客部署在阿里云服务器上,因此我就先搜索阿里云启用https的方法,网上有比较详细的讲解,在此提供一个参考网址: https://blog.csdn.net/csluc ...
- ASP.NET 之页面重定向和传值
在开发 ASP.NET 网站时,经常需要从一个网页重定向(导航)到另一个网页,同时希望能够将信息从源页传递到目标页.例如,如果你正在开发一个保险网站,需要用一个页面来收集基本信息(用户信息.保险产品信 ...
- dubbo面试题
40 道 Dubbo 面试题及答案:https://blog.csdn.net/BinshaoNo_1/article/details/83024303 (原地址奉上:https://mp.weixi ...