两台服务器六节点redis集群环境搭建

两个节点

 192.168.1.177 节点一

 192.168.1.180 节点二

系统版本:

centos7

 

资源下载:

下载

http://download.redis.io/releases/redis-4.0.11.tar.gz

https://cache.ruby-lang.org/pub/ruby/2.5/ruby-2.5.3.tar.gz

https://rubygems.org/rubygems/rubygems-2.7.7.tgz

https://rubygems.org/downloads/redis-4.0.1.gem

 

1、两节点解压,编译安装

# tar -zxf redis-4.0.11.tar.gz

# cd redis-4.0.11/

# make

Hint: It's a good idea to run 'make test' ;)

 

# cd src

测试编译报错

# make test

    CC Makefile.dep

You need tcl 8.5 or newer in order to run the Redis test

make: *** [test] Error 1

 

缺少依赖,进行安装

# yum install tcl

 

再次测试编译ok

# make test

\o/ All tests passed without errors!

 

Cleanup: may take some time... OK

 

安装

# make PREFIX=/usr/local/redis-4.0.11 install

 

Hint: It's a good idea to run 'make test' ;)

 

    INSTALL install

    INSTALL install

    INSTALL install

    INSTALL install

    INSTALL install

 

配置环境变量

# vi /etc/profile

export PATH=/usr/local/edis-4.0.11/bin:$PATH

 

# source /etc/profile

 

2、配置节点创建

节点一创建配置节点

# mkdir -p /usr/local/redis-4.0.11/cluster/7000

# mkdir /usr/local/redis-4.0.11/cluster/7001

# mkdir /usr/local/redis-4.0.11/cluster/7002

# cp /data/opt/redis-4.0.11/redis.conf /usr/local/redis-4.0.11/cluster/7000

# cp /data/opt/redis-4.0.11/redis.conf /usr/local/redis-4.0.11/cluster/7001

# cp /data/opt/redis-4.0.11/redis.conf /usr/local/redis-4.0.11/cluster/7002

 

节点二创建配置节点

# mkdir -p /usr/local/redis-4.0.11/cluster/7003

# mkdir /usr/local/redis-4.0.11/cluster/7004

# mkdir /usr/local/redis-4.0.11/cluster/7005

# cp /data/opt/redis-4.0.11/redis.conf /usr/local/redis-4.0.11/cluster/7003

# cp /data/opt/redis-4.0.11/redis.conf /usr/local/redis-4.0.11/cluster/7004

# cp /data/opt/redis-4.0.11/redis.conf /usr/local/redis-4.0.11/cluster/7005

 

3、修改配置文件

节点一修改配置文件

# vi /usr/local/redis-4.0.11/cluster/7000/redis.conf

port 6379

 

>>

 

port 7000

 

bind 127.0.0.1

 

>>

 

bind 192.168.1.177

 

daemonize no

 

>>

 

daemonize yes

 

pidfile /var/run/redis_6379.pid

 

>>

 

pidfile /var/run/redis_7000.pid

 

# cluster-enabled yes

 

>>

 

cluster-enabled yes

 

# cluster-config-file nodes-6379.conf

 

>>

 

cluster-config-file nodes-7000.conf

 

# cluster-node-timeout 15000

 

>>

 

cluster-node-timeout 15000

 

appendonly no

 

>>

 

appendonly yes

 

拷贝配置文件

# cp /usr/local/redis-4.0.11/cluster/7000/redis.conf /usr/local/redis-4.0.11/cluster/7001/redis.conf

# cp /usr/local/redis-4.0.11/cluster/7000/redis.conf /usr/local/redis-4.0.11/cluster/7002/redis.conf

# scp /usr/local/redis-4.0.11/cluster/7000/redis.conf root@192.168.1.180:/usr/local/redis-4.0.11/cluster/7003/redis.conf

# scp /usr/local/redis-4.0.11/cluster/7000/redis.conf root@192.168.1.180:/usr/local/redis-4.0.11/cluster/7004/redis.conf

# scp /usr/local/redis-4.0.11/cluster/7000/redis.conf root@192.168.1.180:/usr/local/redis-4.0.11/cluster/7005/redis.conf

 

把带有端口号的配置按照实际情况做修改

 

4、两节点拷贝src目录下的redis-trib.rb到安装目录下

# scp /data/opt/redis-4.0.11/src/redis-trib.rb /usr/local/redis-4.0.11/bin

 

当然也可以编译一台上的redis,之后拷贝到另一台上,然后做修改配置文件及目录即可。

 

5、两节点编译安装ruby

使用yum安装的话,版本的2.0,不符合要求,所以源码编译更高的版本

上传ruby源码包编译安装

 

检查下面包有没有安装,没有的话安装,不然编译会报错

zlib

zlib-devel

openssl 

openssl-devel 

readline

readline-devel 

 

# tar -zxf ruby-2.5.3.tar.gz

# cd ruby-2.5.3/

# ./configure --prefix=/usr/local/ruby

# make

# make install

 

修改配置文件

# vi /etc/profile

export PATH=/usr/local/ruby/bin:/usr/local/edis-4.0.11/bin:$PATH

# source /etc/profile

 

# ruby -v

ruby 2.5.3p105 (2018-10-18 revision 65156) [x86_64-linux

 

6、启动服务

节点一启动服务

# cd /usr/local/redis-4.0.11/bin

# ./redis-server /usr/local/redis-4.0.11/cluster/7000/redis.conf

# ./redis-server /usr/local/redis-4.0.11/cluster/7001/redis.conf

# ./redis-server /usr/local/redis-4.0.11/cluster/7002/redis.conf

 

节点二启动服务

# cd /usr/local/redis-4.0.11/bin

# ./redis-server /usr/local/redis-4.0.11/cluster/7003/redis.conf

# ./redis-server /usr/local/redis-4.0.11/cluster/7004/redis.conf

# ./redis-server /usr/local/redis-4.0.11/cluster/7005/redis.conf

 

7、两节点安装gen

如果缺少gen工具的话在创建集群的时候就会报下面的错误

# ./redis-trib.rb create --replicas 1 192.168.1.177:7000 192.168.1.177:7001 192.168.1.177:7002 192.168.1.180:7003 192.168.1.180:7004 192.168.1.180:7005

Traceback (most recent call last):

        2: from ./redis-trib.rb:25:in `<main>'

        1: from /usr/local/ruby/lib/ruby/2.5.0/rubygems/core_ext/kernel_require.rb:59:in `require'

/usr/local/ruby/lib/ruby/2.5.0/rubygems/core_ext/kernel_require.rb:59:in `require': cannot load such file -- redis (LoadError)

 

# tar -zxf rubygems-2.7.7.tgz

# cd rubygems-2.7.7

# ruby setup.rb

RubyGems installed the following executables:

        /usr/local/ruby/bin/gem

        /usr/local/ruby/bin/bundle

 

# gem install redis-4.0.1.gem

 

8、创建集群

# ./redis-trib.rb create --replicas 1 192.168.1.177:7000 192.168.1.177:7001 192.168.1.177:7002 192.168.1.180:7003 192.168.1.180:7004 192.168.1.180:7005

>>> Creating cluster

>>> Performing hash slots allocation on 6 nodes...

Using 3 masters:

192.168.1.177:7000

192.168.1.180:7003

192.168.1.177:7001

Adding replica 192.168.1.180:7005 to 192.168.1.177:7000

Adding replica 192.168.1.177:7002 to 192.168.1.180:7003

Adding replica 192.168.1.180:7004 to 192.168.1.177:7001

M: 19c783c27c8e3f3e216f49d5cace662616ff047e 192.168.1.177:7000

   slots:0-5460 (5461 slots) master

M: c46ed32806b1c14ef6c6bbfab6d2b9e8917cfd2d 192.168.1.177:7001

   slots:10923-16383 (5461 slots) master

S: f9e046b84237a48667aaf7438cf19002a173d292 192.168.1.177:7002

   replicates 6f193e59a14c719dd0a753e01d6d2ddabbcadf49

M: 6f193e59a14c719dd0a753e01d6d2ddabbcadf49 192.168.1.180:7003

   slots:5461-10922 (5462 slots) master

S: 4144a2657809bbf86c8073284e29074c0a635c11 192.168.1.180:7004

   replicates c46ed32806b1c14ef6c6bbfab6d2b9e8917cfd2d

S: 179d038b70e2bb17a8bb15b3040918ae18491bd3 192.168.1.1800:7005

   replicates 19c783c27c8e3f3e216f49d5cace662616ff047e

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.1.177:7000)

M: 19c783c27c8e3f3e216f49d5cace662616ff047e 192.168.1.177:7000

   slots:0-5460 (5461 slots) master

   1 additional replica(s)

M: c46ed32806b1c14ef6c6bbfab6d2b9e8917cfd2d 192.168.1.1777:7001

   slots:10923-16383 (5461 slots) master

   1 additional replica(s)

S: f9e046b84237a48667aaf7438cf19002a173d292 192.168.1.177:7002

   slots: (0 slots) slave

   replicates 6f193e59a14c719dd0a753e01d6d2ddabbcadf49

S: 4144a2657809bbf86c8073284e29074c0a635c11 192.168.1.180:7004

   slots: (0 slots) slave

   replicates c46ed32806b1c14ef6c6bbfab6d2b9e8917cfd2d

S: 179d038b70e2bb17a8bb15b3040918ae18491bd3 192.168.1.180:7005

   slots: (0 slots) slave

   replicates 19c783c27c8e3f3e216f49d5cace662616ff047e

M: 6f193e59a14c719dd0a753e01d6d2ddabbcadf49 192.168.1.180:7003

   slots:5461-10922 (5462 slots) master

   1 additional replica(s)

[OK] All nodes agree about slots configuration.

>>> Check for open slots...

>>> Check slots coverage...

[OK] All 16384 slots covered.

 

# redis-cli -h 192.168.1.177 -p 7000 -c

192.168.1.177:7000> ping

PONG

# redis-cli -h 192.168.1.177 -p 7001 -c

192.168.1.177:7001> ping

PONG

# redis-cli -h 192.168.1.177 -p 7002 -c

192.168.1.177:7002> ping

PONG

# redis-cli -h 192.168.1.180 -p 7003 -c 

192.168.1.180:7003> ping

PONG

# redis-cli -h 192.168.1.180 -p 7004 -c 

192.168.1.180:7004> ping

PONG

# redis-cli -h 192.168.1.180 -p 7005 -c 

192.168.1.180:7005> ping

PONG

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值