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 ...
随机推荐
- C/C++ 弱符号
为什么会出现弱符号 在两个目标文件(a.o与b.o)链接的过程中,如果其中一个目标文件(a.o)通过extern的方式引用了另外一个目标文件(b.o)中的符号flag,但很不幸,在连接的过程中b.o没 ...
- eclipse-切换分支-用途描述
操作细节参考文章 https://www.cnblogs.com/sunrunzhi/p/6509448.html 分析切换分支的用途: 背景: 1. 项目开发使用分支1.分支2: 2. 分支1代码是 ...
- java操作HDFS相关demo(TDH,kerberos认证)
public class Test { private static Configuration conf; private static FileSystem fs; //开 ...
- 申请免费域名并配置DNS解析及CDN加速
标题: 申请免费域名并配置DNS解析及CDN加速 作者: 梦幻之心星 sky-seeker@qq.com 标签: [#申请,#免费,#域名,#DNS解析,#CDN加速,#子域名] 目录: [网站] 日 ...
- 项目实战--解决运行sql文件错误
说明: 新项目启动,通过公司运维同学给的数据库脚本在Navicat中建项目的数据库,运行脚本时报错 Error Code: 1227. Access denied; you need (at leas ...
- 在Docker下搭建MySQL双主双重集群(单机展示,与多机原理一致)
前言 Docker的安装部署&在Docker下MySQL的安装与配置 https://www.cnblogs.com/yumq/p/14253360.html 在Docker进行单机主从复制M ...
- transmission protocol
传输层主要定义了主机应用程序间端到端的连通性,它一般包含四项基本功能 . 将应用层发往网络层的数据分段或将网络层发往应用层的数据段合并 建立端到端的链接,主要是建立逻辑连接以传送数据流 将数据段从一台 ...
- 【.NET与树莓派】上手前的一些准备工作
.NET Iot 不是什么新鲜事物,百科很强大,故老周在此也不必多介绍.现在的时代和老周当年学 QBasic 的时代不同,那时候拉根电话线上网,下载速度只有可怜的 3.5 kb/s.而且还要去店里买上 ...
- 2021升级版微服务教程5—通过IDEA运行多个项目实例「模拟集群」
2021升级版SpringCloud教程从入门到实战精通「H版&alibaba&链路追踪&日志&事务&锁」 教程全目录「含视频」:https://gitee.c ...
- Session、Cookie与Token
http协议是无状态协议 协议是指计算机通信网络中两台计算机之间进行通信所必须共同遵守的规定或规则,超文本传输协议(HTTP)是一种通信协议,它允许将超文本标记语言(HTML)文档从Web服务器传送到 ...