redis集群测试环境搭建

测试环境 两台centos7
1.下载解压redis,
两台机器 192.168.160.154 (简称154)和 192.168.160.135 (简称135)
在主机192.168.160.154上进行
cd /opt
mkdir redis
cd redis
tar xvf redis-4.0.9.tar.gz
cd redis-4.0.9/
make
此时redis已经准备完毕

2.单机多redis进程配置
由于redis-cluster属于master-slave模式,master至少3节点,slave至少3节点,最小的集群配置需要redis6个进程。
每台机器上起3个redis进程
进入135
cd /opt
mkdir redis
然后进入下载redis安装包的机器,这里是154服务器
进入154
cd /opt/redis/redis-4.0.9/src
mkdir 7000
mkdir 7001
mkdir 7002
cp ../redis.conf 7000/
cp ../redis.conf 7001/
cp ../redis.conf 7002/
分别将7000 7001和7002目录下的redis.conf按照如下方面更改:
    1.绑定ip更改:bind 192.168.160.154
    2.更改端口:    port 7000  #(更改成文件夹对应的端口)
    3.更改进程运行模式为后台模式:daemonize yes
    4.进程id文件更改为:pidfile /var/run/redis_7000.pid  #(redis_xxx.pid xxx为文件夹7000对应的数字)
    5.日志文件更改:logfile "/opt/redis/redis-4.0.9/src/7000/7000.log"  #(7000为对应的文件夹数字)
    6.更改db文件:dbfilename dump7000.rdb  #(7000为对应的文件夹数字)
    7.工作目录更改:dir /opt/redis/redis-4.0.9/src/7000 #(7000为对应的文件夹数字)
    8.更改AOF:appendfilename "appendonly7000.aof" #(7000为对应的文件夹数字)
    9.打开集群模式:cluster-enabled yes
    10.配置集群模式的配置文件:cluster-config-file nodes.conf 
    11.配置节点通信的超时时间:cluster-node-timeout 5000 #(5秒)
    12.打开AOF:appendonly yes 
将7001和7002下的redis.conf配置完成后可以将配置好的redis拷贝到135上
cd /opt/redis/
scp -r redis-4.0.9 root@192.168.160.135:/opt/redis/
输入密码

    更改各个目录下的135机器上的 /opt/redis/redis-4.0.9/src下,7000、7001和7002中的配置文件,将绑定IP更改成192.168.160.135

此时两台机器上的redis运行环境是相同的。
在154和135两台机器都启动redis 7000 7001 7002
cd /opt/redis/redis-4.0.9/src
./redis-server 7000/redis.conf
./redis-server 7001/redis.conf
./redis-server 7002/redis.conf
通过如下命令检测是否启动
ps -ef|grep redis
返回如下为正常
    root       7664      1  0 11:23 ?        00:00:22 ./redis-server 192.168.160.154:7000 [cluster]
    root       7669      1  0 11:23 ?        00:00:22 ./redis-server 192.168.160.154:7001 [cluster]
    root       7674      1  0 11:23 ?        00:00:24 ./redis-server 192.168.160.154:7002 [cluster]
    root      10013   3819  0 14:28 pts/2    00:00:00 grep --color=auto redis

3.集群配置
以下操作在154(或135)上进行:
用过yum 安装ruby 和 ruby-gem
yum install ruby,rubygems -y
更改gem源:
gem sources --remove  https://rubygems.org/
gem sources -a  https://ruby.taobao.org/
安装 gem redis (4.0.9版本可能找不到,替代方案为--version 4.0.0 )
gem install  redis --version 4.0.9
此时可能报错:redis requires Ruby version >= 2.2.2
解决方案:
gpg --keyserver  hkp://keys.gnupg.net--recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3
安装rvm
\curl -sSL  https://get.rvm.io| bash -s stable
安装完成后需要生效rvm命令
source ~/.bashrc
source ~/.bash_profile
source /etc/profile.d/rvm.sh
验证rvm 安装
rvm -v
  返回如下为正常 rvm 1.29.3 (latest) by Michal Papis, Piotr Kuczynski, Wayne E. Seguin [ https://rvm.io]
rvm list known
  返回如下:    [ruby-]1.8.6[-p420]
            [ruby-]1.8.7[-head] # security released on head
            [ruby-]1.9.1[-p431]
            [ruby-]1.9.2[-p330]
            [ruby-]1.9.3[-p551]
            [ruby-]2.0.0[-p648]
            [ruby-]2.1[.10]
            [ruby-]2.2[.7]
            [ruby-]2.3[.4]
            [ruby-]2.4[.1]
            ruby-head
安装新的ruby版本
rvm install 2.4.1 --disable-binary
开机使用2.4.1版本
rvm use 2.4.1 --default
gem install  redis --version 4.0.0 (由于4.0.9没有找到,使用4.0.0替代)
执行redis集群配置
./redis-trib.rb create --replicas 1 192.168.160.154:7000 192.168.160.154:7001 192.168.160.154:7002 192.168.160.135:7000 192.168.160.135:7001 192.168.160.135:7002
返回如下为正常:
            >>> Creating cluster
            >>> Performing hash slots allocation on 6 nodes...
            Using 3 masters:
            192.168.160.154:7000
            192.168.160.135:7000
            192.168.160.154:7001
            Adding replica 192.168.160.135:7002 to 192.168.160.154:7000
            Adding replica 192.168.160.154:7002 to 192.168.160.135:7000
            Adding replica 192.168.160.135:7001 to 192.168.160.154:7001
            M: 2de28fc36edcde201184854285623bf47899384b 192.168.160.154:7000
               slots:0-5460 (5461 slots) master
            M: d50d2d34b6578e27dc757dad988120f0e4b0ca65 192.168.160.154:7001
               slots:10923-16383 (5461 slots) master
            S: 5e53bd9cda64a60227f26c2a32538fbe9f6f8957 192.168.160.154:7002
               replicates a8f54e8f000c09ddfdb0677fc8ad08d90351af5e
            M: a8f54e8f000c09ddfdb0677fc8ad08d90351af5e 192.168.160.135:7000
               slots:5461-10922 (5462 slots) master
            S: e78d212d9e85e8e5212c93c26e47f867b198054b 192.168.160.135:7001
               replicates d50d2d34b6578e27dc757dad988120f0e4b0ca65
            S: 4a0d3f0e33b103bd92e0e7a7fdce97f76c3e0ebe 192.168.160.135:7002
               replicates 2de28fc36edcde201184854285623bf47899384b
            Can I set the above configuration? (type 'yes' to accept):
输入yes 接受此配置后返回如下为正常:
            >>> Nodes configuration updated
            >>> Assign a different config epoch to each node
            >>> Sending CLUSTER MEET messages to join the cluster
            Waiting for the cluster to join...
            >>> Performing Cluster Check (using node 192.168.160.154:7000)
            M: 2de28fc36edcde201184854285623bf47899384b 192.168.160.154:7000
               slots:0-5460 (5461 slots) master
               1 additional replica(s)
            S: e78d212d9e85e8e5212c93c26e47f867b198054b 192.168.160.135:7001
               slots: (0 slots) slave
               replicates d50d2d34b6578e27dc757dad988120f0e4b0ca65
            M: a8f54e8f000c09ddfdb0677fc8ad08d90351af5e 192.168.160.135:7000
               slots:5461-10922 (5462 slots) master
               1 additional replica(s)
            S: 4a0d3f0e33b103bd92e0e7a7fdce97f76c3e0ebe 192.168.160.135:7002
               slots: (0 slots) slave
               replicates 2de28fc36edcde201184854285623bf47899384b
            M: d50d2d34b6578e27dc757dad988120f0e4b0ca65 192.168.160.154:7001
               slots:10923-16383 (5461 slots) master
               1 additional replica(s)
            S: 5e53bd9cda64a60227f26c2a32538fbe9f6f8957 192.168.160.154:7002
               slots: (0 slots) slave
               replicates a8f54e8f000c09ddfdb0677fc8ad08d90351af5e
            [OK] All nodes agree about slots configuration.
            >>> Check for open slots...
            >>> Check slots coverage...
            [OK] All 16384 slots covered.
至此集群配置完毕!
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值