Redis三主三从

redis集群实战,用两台虚拟机模拟6个节点,一台机器3个节点,三主三从架构
1)准备两台机器,一台是cengos6.5,一台是7
二台服务器,启动6个实例,形成三主三从,其中存储相同数据的主从节点不能落在同一台机器上,目的是防止部署的Redis的虚拟机宕机从而造成主从节点全部失效。
实验机器的地址与端口如下所示:
Ip地址 端口
10.30.8.36 7000
10.30.8.36 7001
10.30.8.36 7002
10.30.8.63 7000
10.30.8.63 7001
10.30.8.63 7002
2)查看两台机器的内核
centos6的
Redis三主三从
centos7的
Redis三主三从
3)在6.5上下载redis,使用wget下载3.2版本,下载网址是: http://download.redis.io/releases/redis-3.2.4.tar.gz
Redis三主三从
4)解压redis软件包
Redis三主三从
5)编译安装
解压前记得安装依赖环境
#yum -y install gcc gcc-c++ tcl
#cd redis-3.2.4
#make
6)将redis-trib.rb拷贝到/usr/local/bin 目录下
该工具在redis安装后的src目录
注意:我现在所在的目录为安装包目录:
Redis三主三从
#cp src/redis-trib.rb /usr/local/bin/
7)创建redis三个节点
Redis三主三从
Redis三主三从
8)配置三个节点的目录
Redis三主三从
上面已经copy过,现在去修改三个配置文件:
#vi /usr/local/cluster/7000/redis.conf
#vi /usr/local/cluster/7001/redis.conf
#vi /usr/local/cluster/7002/redis.conf
需要修改四个地方:(三个端口的配置文件都需要修改成自己对应的端口)
port 7000:指定当前Redis服务的端口,默认为6379
daemonize yes:配置redis作为守护进程运行
绑定10.30.8.63 127.0.0.1:绑定本地回环地址
cluster-enabled yes:开启集群(把前面的注释去掉即可)
9)在centos7下使用wget下载redis
wget http://download.redis.io/releases/redis-3.2.4.tar.gz
10)解压redis并安装
#yum -y install gcc gcc-c++ tcl
Redis三主三从
#yum -y install gcc gcc-c++ tcl
#cd redis-3.2.4
#make

11)在centos6上依次启动三个节点
为操作方便,做个软连接
#ln -s /usr/local/src/redis-3.2.4/src/redis-server /usr/bin/
#ln -s /usr/local/src/redis-3.2.4/src/redis-cli /usr/bin/
依次启动三个redis:
#cd /usr/local/cluster/7000/
#redis-server redis.conf
#cd /usr/local/cluster/7001
#redis-server redis.conf
#cd /usr/local/cluster/7002/
#redis-server redis.conf
验证一下:
Redis三主三从
12)按照ruby环境,ruby* rpm-build
安装ruby环境:
redis-trib.rb是官方提供的Redis Cluster的管理工具,无需额外下载,默认位于源码包的src目录下,但因该工具是用ruby开发的,所以需要准备相关的依赖环境。
#gpg --keyserver hkp://keys.gnupg.net --recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3 7D2BAF1CF37B13E2069D6956105BD0E739499BDB
#\curl -sSL https://get.rvm.io | bash -s stable
#source /etc/profile.d/rvm.sh
查看一下版本:
Redis三主三从
安装ruby:
#rvm install 2.5.5
Redis三主三从
使用gem再次安装一下redis:

gem install redis

ln -s /usr/local/src/redis-3.2.4/src/redis-trib.rb /usr/bin/

16)使用redis-trib.rb工具创建集群
参数指定集群中每个主节点配备几个从节点,这里设置为1。
#redis-trib.rb create --replicas 1 10.30.8.63:7000 10.30.8.63:7001 10.30.8.63:7002 10.30.8.36:7000 10.30.8.36:7001 10.30.8.36:7002
Redis三主三从
Redis三主三从
16384个槽全部被分配,集群创建成功。注意:给redis-trib.rb的节点地址必须是不包含任何槽/数据的节点,否则会拒绝创建集群。
17)集群验证
验证:
随便查看一个集群节点的状态即可:
Redis三主三从
查看集群信息:
Redis三主三从