CentOS6.7方式搭建redis(多机多节点)集群步骤

本文档详细记录了在CentOS6.7上搭建redis多机多节点集群的完整步骤,包括ruby和rubygems的安装,以及redis的下载、配置和集群创建,适合初学者参考。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

CentOS6.7方式搭建redis(多机多节点)集群步骤

版本:0.0.1 编辑:朱* 内容:创建文档 时间:20190814

按流程操作,自测有效
网上看了很多教程,都有坑,花了很对时间才搭完,记录我的流程

一、ruby的安装

  • 1、官网下载,这里选择的是ruby-2.2.10.tar.gz
    https://www.ruby-lang.org/en/downloads/

  • 2、安装编译
    跳转到:cd /usr/local
    创建文件夹:mkdir ruby
    将tar 包上传至/usr/local/ruby目录:cp /home/****/ruby-2.2.10.tar.gz /usr/local/ruby

    tar -zxvf ruby-2.2.10.tar.gz
    cd ruby-2.2.10
    ./configure
    make
    make install

  • 3、查看ruby是否安装成功
    ruby -v

二、rubygems的安装

RubyGems简称gems,是一个用于对 Ruby组件进行打包的 Ruby 打包系统。

1、下载zlib-1.2.11.tar.gz包

cd /home/****/
wget http://www.zlib.net/zlib-1.2.11.tar.gz
tar -zxvf zlib-1.2.11.tar.gz
cd zlib-1.2.11
指定安装目录:
./configure --prefix=/usr/local/zlib/install/
编译安装:
make
make install

再到ruby目录下安装一下,
cd /usr/local/ruby/ruby-2.2.10/ext/zlib/
ruby extconf.rb --with-zlib-include=/usr/local/zlib/install/include/ --with-zlib-lib=/usr/local/zlib/install/lib/
make
make install

2、下载rubygems-3.0.3.tgz

cd /home/****/
https://rubygems.org/pages/download    下载后复制到虚拟机
解压安装
tar -zxvf rubygems-3.0.3.tgz
cd ./rubygems-3.0.3
ruby setup.rb

三、redis集群的搭建

1、下载、安装redis4.0.6的tar包

cd /usr/local
mkdir redis
命令: wget http://download.redis.io/releases/redis-4.0.6.tar.gz
命令: tar -zxvf redis-4.0.6.tar.gz
cd redis-4.0.6
make && make install

2、安装openssl:

cd /home/***/
wget https://www.openssl.org/source/openssl-1.0.2h.tar.gz
tar -zxvf openssl-1.0.2h.tar.gz
cd openssl-1.0.2h
./config -fPIC --prefix=/usr/local/openssl enable-shared
./config -t
make && make install
编译ruby中的openssl:
cd /usr/local/ruby/ruby-2.2.10/ext/openssl/
ruby extconf.rb --with-openssl-include=/usr/local/openssl/include/ --with-openssl-lib=/usr/local/openssl/lib/
修改Makefile,增加变量 :
vim Makefile,加入下面一行
top_srcdir = …/…
保存后
make
make install
openssl 安装成功

3、下载安装redis-4.0.3.gem

https://rubygems.org/gems/redis/versions/4.0.3
cd /home/*****/
在redis-4.0.3.gem目录同级执行 gem install redis-4.0.3.gem完成安装

4、编写配置文件并启动各个节点

* 1、跳转到redis安装目录
cd /usr/local

* 2、创建一个新目录:cluster  (该目录名称、位置任意,此处我是建在了redis安装目录下)
mkdir cluster

* 3、在cluster目录下,创建两个目录,分别是6379  6380(用于存储redis配置文件)
备注:此处新建的目录名必须与redis节点对应的端口号对应
cd cluster
mkdir 6379 6380

* 4、添加redis节点对应的配置文件,此处我直接拷贝redis安装目录下的配置文件redis.conf再加以修改
cp /usr/local/redis/redis-4.0.6/redis.conf  ./6379
cp /usr/local/redis/redis-4.0.6/redis.conf  ./6380
cd /usr/local/redis/cluster/6379
mv redis.conf redis_6379.conf 
cd /usr/local/redis/cluster/6380
mv redis.conf redis_6380.conf 

* 5、修改redis配置文件(目录6379、6380下的redis.conf),主要修改如下配置,
绑定局域网ip,使得三台服务器可相互访问
bind 192.168.103.54
protected-mode yes
redis节点监听端口
port 6380
以守护进程启动
daemonize yes
pidfile /var/run/redis_6380.pid
logfile "/usr/local/redis/cluster/6379.log"
dbfilename dump_6380.rdb
dir /usr/local/redis/cluster/6379
如下为集群配置
cluster-enabled yes  启用集群
cluster-config-file nodes-6380.conf  集群配置文件,由redis自动更新,不需要手动配置
cluster-node-timeout 5000  集群节点超时时间,即集群中主从节点断开连接时间阈值,超过该值则认为主节点不可以,从节点将有可能转为master
cluster-slave-validity-factor 10  
在进行故障转移的时候全部slave都会请求申请为master,但是有些slave可能与master断开连接一段时间了导致数据过于陈旧,不应该被提升为master。该参数就是用来判断slave节点与master断线的时间是否过长
(计算方法为:cluster-node-timeout * cluster-slave-validity-factor,此处为:5000 * 10 毫秒)
cluster-migration-barrier 1
cluster-require-full-coverage yes 集群中的所有slot(16384个)全部覆盖,才能提供服务

5、启动3台机器上的6个节点

cd /usr/data/redis-4.0.8/src
./redis-server ../cluster/6379/redis.conf 
./redis-server ../cluster/6380/redis.conf 

6、创建集群

因为此处我是以192.168.103.54作为集群控制端,所有一下操作都在改机器上完成
注:集群创建时 先不要设置密码,
gem install redis
./redis-trib.rb create --replicas 1 192.168.103.54:6379 192.168.103.54:6380 192.168.103.56:6379 192.168.103.56:6380 192.168.103.57:6379 192.168.103.57:6380

7、注意

1、如果建立集群时报错:CLUSTERDOWN Hash slot not served,
解决办法如下:
用命令检测:redis-trib.rb check 127.0.0.1:7000
检测结果:[ERR] Not all 16384 slots are covered by nodes
执行修复命令:redis-trib.rb fix 127.0.0.1:7000
修复完成之后,便可正常使用Redis集群了。

用到的包:D:\rubygems-3.0.4.tar.gz  
		  d:\redis-4.0.6.tar.gz 
		  d:\redis-4.0.3.gem
		  ruby-2.2.10.tar.gz
		  zlib-1.2.11.tar.gz
		  openssl-1.0.2h.tar.gz
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值