【转】redis-cluster安装配置
需要三台虚拟机(生产环境是3个物理机),分配静态IP。cluster中共6个节点。3主3从。本文中每个虚拟机上的redis端口:6379 6380。
需要注意的两点:
3个主节点分别位于3台虚拟机上,已保证某个虚拟机挂掉,集群仍然可以正常工作。
同一对主从节点(存储的是相同的数据),也不能分配到一台虚拟机上,防止某台虚拟机挂掉,应用无法访问这对redis存储的数据。
redis源码tar包路径: /usr/local/redis-3.0.6.tar.gz
redis解压后源码安装包路径: /usr/local/redis-3.0.6
redis安装位置: /usr/local/redis
redis的启动配置文件放在路径: /etc/redis 文件夹下
redis集群配置配置文件(自动生成)放在路径 /etc/redis/clusterconf 文件夹下
redis数据放在路径: /data/redis 文件夹下
redis日志放在路径: /logs/redis 文件夹下
1、安装依赖
wget http://downloads.sourceforge.net/tcl/tcl8.6.1-src.tar.gz
sudo tar xzvf tcl8.6.1-src.tar.gz -C /usr/local/
cd /usr/local/tcl8.6.1/unix/
sudo ./configure
sudo make
sudo make install
2、安装Redis
解压展开源码包
# tar xf redis-3.0.6.tar.gz
进入解压后的源码目录
# cd redis-3.0.6
编译安装 redis
# make PREFIX=/usr/local/redis install
安装完成,进行安装是否成功的测试
# make test
如果显示“All tests passed without errors!”表示安装成功。 如果安装测试提示失败,请重新解压覆盖。 说明: 根据操作系统环境不同,依赖的软件也不同,编译安装 Redis 时如果有提示软件依赖问题,根据错误提示安装相应软件即可。
说明:3个虚拟机上相同操作
3、配置Redis
建立目录如下,存放redis启动配置文件(可以放多个,例如redis-6379.conf,redis-6380.conf)
# mkdir /etc/redis
建立目录如下,存放redis集群节点配置文件,启动时自动生成。
# mkdir /etc/redis/clusterconf
建立目录如下,存放持久化文件(例如dump-6379.rdb,dump-6380.rdb)
# mkdir /usr/local/redis/data
拷贝2 步中 redis 解压目录里的配置文件 redis.conf
# cp redis.conf /etc/redis/redis-6379.conf
编辑/etc/redis/redis-6379.conf,以下配置的具体内容均为示例,需要根据注释进行实际配置。
# vim /etc/redis/redis-6379.conf
daemonize yes // 以守护进程方式运行
redis pidfile /var/run/redis-6379.pid // pid 文件位置
port 6379 //redis 服务监听端口号
logfile "/logs/redis/6379.log" //redis 日志文件
dbfilename dump-6379.rdb
dir /data/redis
save 900 1 //900 秒内有一次更新,则写入磁盘操作
save 300 10 //300 秒内有 10 次操作,则刷一次磁盘
save 60 30 //60 秒 内有 30 次操作的,则刷一次磁盘
appendonly no
appendfilename "appendonly-6379.aof"
#以下是集群相关配置
cluster-enabled yes
cluster-config-file /etc/redis/clusterconf/nodes-<ip>-6379.conf
cluster-node-timeout 5000
创建redis-6380.conf配置文件
# cp /etc/redis/redis-6379.conf /etc/redis/redis-6380.conf
把redis-6380.conf配置文件中的所有6379修改成6380
说明:3个虚拟机上相同操作
4、集群依赖
3台虚拟机上任选一台安装ruby
yum install ruby rubygems -y
gem install redis
说明:目前yum安装的ruby版本是2.0.0,在执行gem install redis时,会报错:
ERROR: Error installing redis
redis requires Ruby version >= 2.2.2.
解决方法访问下面链接
https://www.cnblogs.com/PatrickLiu/p/8454579.html
5、制作sh脚本,启动6个redis
#!/bin/sh
cd /usr/local/redis/bin
./redis-server /etc/redis/redis-6379.conf
echo "redis 6379 is starting"
./redis-server /etc/redis/redis-6380.conf
echo "redis 6380 is starting"
6、制作sh脚本,在安装ruby的虚拟机上执行
#!/bin/sh
/usr/local/redis-3.0.6/src
./redis-trib.rb create --replicas 1 192.168.233.103:6379 192.168.233.104:6379 192.168.233.105:6379 192.168.233.103:6380 192.168.233.104:6380 192.168.233.105:6380(这行的顺序不要变,前三个是master,后三个是slave)
7、通过命令可以查询 cluster info cluster nodes
8、思考
两个master不能在一台机器上
一对主从(数据相同)不能在一台机器上
---------------------
作者:ljquansky
来源:CSDN
原文:https://blog.csdn.net/ljquansky/article/details/84260558
版权声明:本文为博主原创文章,转载请附上博文链接!
【转】redis-cluster安装配置的更多相关文章
- redis cluster 安装配置
实验环境: 三主三从,从负责备份. 192.168.2.201 6381 192.168.2.201 6382 192.168.2.202 6381 192.168.2.202 6382 192.16 ...
- redis的安装配置
主要讲下redis的安装配置,以及以服务的方式启动redis 1.下载最新版本的redis-3.0.7 到http://redis.io/download中下载最新版的redis-3.0.7 下载后 ...
- 浅谈Redis及其安装配置
一.Redis的介绍 二.Redis的安装配置 三.Redis的配置文件说明 四.Redis的简单操作 简介: Redis是一个开源的使用ANSI C语言编写.支持网络.可基于内存亦可持久化的日志型. ...
- redis cluster安装部署(测试环境)
redis 应用于web前端,做缓存和数据存取的速度是挺可观的,最近看了一些资料,手痒了,就弄了一个测试环境,两台方案,试用一下. ##Redis 集群部署## 一,方案调研: 参考博客: http: ...
- Laravel 5.1中 Redis 的安装配置及基本使用教程
关于Redis的介绍我们在之前Laravel 缓存配置一节中已有提及,Redis是一个开源的.基于内存的数据结构存储器,可以被用作数据库.缓存和消息代理.相较Memcached而言,支持更加丰富的数据 ...
- Redis的安装配置及简单集群部署
最近针对中铁一局项目,跟事业部讨论之后需要我们的KF平台能够接入一些开源的数据库,于是这两天研究了一下Redis的原理. 1. Redis的数据存储原理及简述 1.1Redis简述 Redis是一个基 ...
- mysql cluster 安装配置方案
mysql cluster (mysql 集群)安装配置方案 一.准备 1.准备服务器 计划建立有5个节点的MySQL CLuster体系,需要用到5台服务器,但是我们做实验时没有这么多机器,可以 ...
- Linux下Redis的安装配置
环境: centos7 PHP7 1.切到准备安装的目录 cd /usr/local 2.下载Redis wget http://download.redis.io/redis-stable.tar ...
- Linux系统下Redis缓存安装配置
Redis是一个高性能的key-value数据库,现时越来越多企业与应用使用Redis作为缓存服务器.楼主是一枚JAVA后端程序员,也算是半个运维工程师了.在Linux服务器上搭建Redis,怎么可以 ...
- Centos7:Redis的安装,配置及使用
安装依赖与环境 yum install gcc-c++ 解压缩redis 编译,进入redis源码目录 make 安装 make install PREFIX=/usr/local/redis 注:P ...
随机推荐
- [Hive_3] Hive 建表指定分隔符
0. 说明 Hive 建表示例及指定分隔符 1. Hive 建表 Demo 在 Hive 中输入以下命令创建表 user2 create table users2 (id int, name stri ...
- Linux系统挂载Windows的共享文件夹
解决方案 在window上文件设置共享权限 在Linux上在 使用mount 命令挂载 Windows 共享文件夹 实验环境 redhat linux 7操作系统 服务器IP 192.168.100. ...
- SpringCloud之初识Zuul(网关)---动态路由,权限验证
通过前面的学习,使用Spring Cloud实现微服务的架构基本成型,大致是这样的: 我们使用Spring Cloud Netflix中的Eureka实现了服务注册中心以及服务注册与发现:而服务间通过 ...
- 微服务---Eureka注册中心(服务治理)
在上一篇的初识SpringCloud微服务中,我们简单讲解到服务的提供者与消费者,当服务多了之后,会存在依赖与管理之间混乱的问题,以及需要对外暴露自己的地址,为了解决此等问题,我们学习Eureka注册 ...
- MVC四大筛选器—ExceptionFilter
该筛选器是在系统出现异常时触发,可以对抛出的异常进行处理.所有的ExceptionFilter筛选器都是实现自IExceptionFilter接口 public interface IExceptio ...
- SpringBoot2.0 最简单的 idea 快速创建项目
第一步 第二步 第三步 以上就是idea快速创建springboot的方法,创建之后等maven 依赖下载完成,就可以使用
- Loj #2731 「JOISC 2016 Day 1」棋盘游戏
Loj 2731 「JOISC 2016 Day 1」棋盘游戏 JOI 君有一个棋盘,棋盘上有 \(N\) 行 \(3\) 列 的格子.JOI 君有若干棋子,并想用它们来玩一个游戏.初始状态棋盘上至少 ...
- WPF自定义控件(三)の扩展控件
扩展控件,顾名思义就是对已有的控件进行扩展,一般继承于已有的原生控件,不排除继承于自定义的控件,不过这样做意义不大,因为既然都自定义了,为什么不一步到位呢,有些不同的需求也可以通过此来完成,不过类似于 ...
- nosql:文件存储和sql数据库存储形式之外的存储系统都是nosql
为了设计一个比较好的磁盘缓存,我调查了大量的开源库,包括 TMDiskCache.PINDiskCache.SDWebImage.FastImageCache 等,也调查了一些闭源的实现,包括 NSU ...
- (二 -3-1) 天猫精灵接入Home Assistant-自动发现Mqtt设备--灯系列 esp8266程序
设备1 上电自动注册自己是个1个开关 HASS网页和手机APP控制 外部开关上升沿中断控制 天猫精灵语音控制 一键配网 记录以往WIFI信息 设备2 上电后,自动注册自己有三个开关控制 HASS网页和 ...