centos7 快速搭建redis集群环境
本文主要是记录一下快速搭建redis集群环境的方式。
环境简介:centos 7 + redis-3.2.4
本次用两个服务6个节点来搭建:192.168.116.120 和 192.168.116.121
192.168.116.120 端口为7000 7001 7002 3台
192.168.116.121 端口为7000 7001 7002 3台
注意 ,redis 集群使用redis-trib.rb 必须3主3从 ,也就是6个节点!
详细步骤:
1:下载解压redis-3.2.4
cd /usr/local/software
wget http://download.redis.io/releases/redis-3.2.4.tar.gz
tar -zxvf redis-3.2.4.tar.gz
2.安装 三个节点都安装
cd redis-3.2.4
make && make install
3. 将 redis-trib.rb 复制到 /usr/local/bin 目录下
cd src
cp redis-trib.rb /usr/local/bin
4.创建运行目录复制配置文件 创建3个节点redis
cd /usr/local
mkdir redis-cluster
cd redis-cluster
mkdir redis-3.2.4-node1 redis-3.2.4-node2 redis-3.2.4-node3
cd redis-3.2.4 -node1
mkdir logs data
cd /usr/local/software/redis-3.2.4
cp redis.conf /usr/local/redis-cluster/redis-3.2.4-node1
cp redis.conf /usr/local/redis-cluster/redis-3.2.4-node2
cp redis.conf /usr/local/redis-cluster/redis-3.2.4-node3
cd src
cp redis.cli redis.server /usr/local/redis-cluster/redis-3.2.4-node1
cp redis.cli redis.server /usr/local/redis-cluster/redis-3.2.4-node2
cp redis.cli redis.server /usr/local/redis-cluster/redis-3.2.4-node3
5.3个节点分布进行如下配置
vim /usr/local/redis-3.2.4-node1/redis.conf //其他两个类似
port 7000 //端口7000,7001,7002
bind 192.168.116.120 //默认ip为127.0.0.1 需要改为其他节点机器可访问的ip 否则创建集群时无法访问对应的端口,无法创建集群
daemonize yes //redis后台运行
pidfile /usr/local/redis-cluster/redis-3.2.4-node1/redis_7000.pid //pidfile文件对应7000,7001,7002
cluster-enabled yes //开启集群 把注释#去掉
cluster-config-file nodes_7000.conf //集群的配置 配置文件首次启动自动生成 7000,7001,7002
cluster-node-timeout 15000 //请求超时 默认15秒,可自行设置
appendonly yes //开启aof
logfile "/usr/local/redis-cluster/redis-3.2.4-node1/logs/redis_7001.log" //配置日志输入路劲 7000 7001 7002
dir "/usr/local/redis-cluster/redis-3.2.4-node1/data" //配置数据文件存放路劲
6.分别运行redis
cd /usr/local/redis-cluster/redis-3.2.4-node1
./redis.server redis.conf
cd /usr/local/redis-cluster/redis-3.2.4-node2
./redis.server redis.conf
cd /usr/local/redis-cluster/redis-3.2.4-node3
./redis.server redis.conf
7.检查是否运行
ps -ef|grep redis
8.使用 redis-trib.rb创建集群
8.1 因为依赖ruby 所以先安装ruby
yum -y install ruby ruby-devel rubygems rpm-build
gem install redis
当出现错误时
ERROR: Error installing redis:
redis requires Ruby version >= 2.2.2.
这一步骤中出现了bug,度娘告诉我是Ruby版本太低,需要升级版本。
先升级ruby版本
curl -L get.rvm.io | bash -s stable
当出现错误时
NOTE: GPG version 2.1.17 have a bug which cause failures during fetching keys from remote server. Please downgrade or upgrade to newer version (if available) or use the second method described above.
获得密钥
gpg --keyserver hkp://keys.gnupg.net --recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3
继续执行
curl -sSL https://get.rvm.io | bash -s stable
8.2安装完成,是rvm可用
8.2安装完成,是rvm可用
source /usr/local/rvm/scripts/rvm
8.3查看Ruby可用版本
rvm list known
8.4 即可查看到2.2 2.3 和2.4 三个版本我们安装2.3
rvm install 2.3.0
这一步可能耗时较长,耐心等待。
8.5 安装gem redis接口
rvm use 2.3.0
rvm remove 1.8.7
ruby --version
gem install redis
8.6 安装rubygems
yum install -y rubygems
到目前为止,我们的Ruby和运行redis-trib.rb需要的环境安装完成了
9.测试集群
redis-trib.rb create --replicas 1 192.168.116.120:7000 192.168.116.120:7001 192.168.116.120:7002 192.168.116.121:7000 192.168.116.121:7001 192.168.116.121:7002
error 1 : 这里出现join......,记得关闭防火墙。
error 2: 连接失败。需要将logs和data文件先清空,进入redis flushall 即可。在重启redis
10 测试客户端连接
随便进一个节点
redis-cli -h 192.168.116.120 -c -p 7000
set k1 v1
另外一个服务选一个节点
redis-cli -h 192.168.116.121 -c -p 7000
get k1
SUCCESS !
centos7 快速搭建redis集群环境的更多相关文章
- linux系统centOS7下搭建redis集群中ruby版本过低问题的解决方法
问题描述: 在Centos7中,通过yum安装ruby的版本是2.0.0,但是如果有些应用需要高版本的ruby环境,比如2.2,2.3,2.4... 那就有点麻烦了,譬如:我准备使用redis官方给的 ...
- 用C、python手写redis客户端,兼容redis集群 (-MOVED和-ASK),快速搭建redis集群
想没想过,自己写一个redis客户端,是不是很难呢? 其实,并不是特别难. 首先,要知道redis服务端用的通信协议,建议直接去官网看,博客啥的其实也是从官网摘抄的,或者从其他博客抄的(忽略). 协议 ...
- 搭建redis集群环境
Redis的集群机制 ============================= 转自http://lib.csdn.net/article/redis/39999 别人写的,写得不错,转了. Red ...
- Redis集群环境搭建实践
0 Redis集群简介 Redis集群(Redis Cluster)是Redis提供的分布式数据库方案,通过分片(sharding)来进行数据共享,并提供复制和故障转移功能.相比于主从复制.哨兵模式, ...
- 带你自行搭建虚拟机和Redis集群环境,值得收藏!
前言: 我们看到分析 Redis 使用或原理的文章不少,但是完整搭建一套独立的 redis 集群环境的介绍,并不是很多或者说还不够详细. 那么,本文会手把手带着大家搭建一套 Redis 集群环境,Re ...
- redis集群环境的搭建和错误分析
redis集群环境的搭建和错误分析 redis集群时,出现的几个异常问题 09 redis集群的搭建 以及遇到的问题
- Windows 环境搭建Redis集群(win 64位)
转: http://blog.csdn.net/zsg88/article/details/73715947 参考:https://www.cnblogs.com/tommy-huang/p/6240 ...
- Windows 环境搭建Redis集群
环境以及引用资料 1.windows server 2008 r2 enterprise (木有办法,公司的服务器全是如此,就这种环境搭建吧) 2.redis官方资料下载: https://redi ...
- windows环境下搭建Redis集群
转载请注明出处,原文章地址: https://www.cnblogs.com/tommy-huang/p/6240083.html Redis集群: 如果部署到多台电脑,就跟普通的集群一样:因为Red ...
随机推荐
- hashmap有一个loadFactory为什么是0.75从泊松分布解析看看
简述: 写这篇文章是看到网上的一篇面试题,有面试官问hashmap有一个loadFactory为什么是0.75 我先解释一下 0.75上下文,当一个hashmap初始数组大小暂时不考虑扩容情况,初始 ...
- 初探JAVA内部类细节一
定义: 可以将一个类的定义放在另一个类的内部 这就是内部类.--摘自java编程思想 一般实现方式: public class SimpleInnerClass { class Content { p ...
- 面试官:数据库自增ID用完了会怎么样?
看到这个问题,我想起当初玩魔兽世界的时候,25H难度的脑残吼的血量已经超过了21亿,所以那时候副本的BOSS都设计成了转阶段.回血的模式,因为魔兽的血量是int型,不能超过2^32大小. 估计暴雪的设 ...
- node实现文件下载
1.引入fs const fs = require('fs') const path = reqire('path') 2.方法 const downloadFile = function (dest ...
- win8.1默认输入法设置
1.右击左下角,选择控制面板 2.选择更改输入法 3.选择高级设置 4.在替代默认输入法,从下拉列表中选择自己已安装的输入法,比如搜狗拼音输入法,qq拼音输入法等其他输入法
- Liunx运维(十二)-Liunx系统常用内置命令
文档目录: 一.Liunx内置命令概述 二.LIunx常用内置命令实例 1.help查看内置命令帮助2.查看内置命令使用方法3.":" 占位符4. "." 与s ...
- HP Proliant DL580 gen9 阵列卡P440AR 高速缓存 被禁用
摘录内容: IMPORTANT: This issue does NOT occur when the operating system shuts down gracefully. In addit ...
- 剑指offer 面试题4:二维数组中的查找
题目描述 在一个二维数组中(每个一维数组的长度相同),每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序.请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数 ...
- Tomcat配置上遇到的一些问题
Tomcat启动:在bin目录下双击startup.bat文件就行. 访问:在浏览器输入http://localhost:8080 回车访问的是自己 的界面: http://othersip:8080 ...
- Python作业---内置数据类型
实验2 内置数据类型 实验性质:验证性 一.实验目的 1.掌握内置函数.列表.切片.元组的基本操作: 2.掌握字典.集合和列表表达式的基本操作. 二.实验预备知识 1.掌握Python内置函数的基/本 ...