redis分布式集群数据库搭建

官方文档中写的是在本地环境下搭建数据库集群,而在我的开发环境中需要多网络节点的集群。下面是分布式Redis数据库搭建过程。环境是Ubuntu16.04LTS。

要让集群正常工作至少需要3个主节点,官网中强烈建议6个节点,在这里我创建7个redis节点,其中三个为主节点,四个为从节点,三个节点在一个网络节点中,四个单独对应一个网络节点。对应的redis节点的ip和端口对应关系如下:

192.168.3.242:7000

192.168.3.242:7001

192.168.3.242:7002

192.168.2.241:6379

192.168.2.240:6379

192.168.2.239:6379

192.168.2.238:6379

网络拓扑图如下:

redis分布式集群数据库搭建_第1张图片

部署步骤:

1、每一个网络节点都要下载redis。从官网上下载3.2.1版本,只有版本大于3的redis支持集群分布。

2、解压,编译

tar -zxvf redis-3.2.1.tar.gz 
mv redis-3.2.1.tar.gz redis3.
cd /home/dragon/redis3
make
make install

3、创建集群需要的目录

192.168.3.242节点:

mkdir -p /home/dragon/redis3/cluster
cd /home/dragon/redis3/cluster
mkdir 7000 7001 7002

其他节点:

mkdir -p /home/dragon/redis3/cluster
cd /home/dragon/redis3/cluster

4、修改配置文件redis.conf

cp /home/dragon/redis3/redis.conf  /home/dragon/redis3/cluster
vim redis.conf
修改配置文件中的下面选项(以242节点为例)
bind 192.168.3.242(对应的网络节点)
port 7000(对应端口号)
daemonize yes
cluster-enabled yes
cluster-config-file nodes.conf
cluster-node-timeout 5000
appendonly yes
##修改完redis.conf配置文件中的这些配置项之后把这个配置文件分别拷贝到7000/7001/7002/目录下面
cp /home/dragon/redis3/redis.conf /home/dragon/redis3/cluster/7000
cp /home/dragon/redis3/redis.conf /home/dragon/redis3/cluster/7001
cp /home/dragon/redis3/redis.conf /home/dragon/redis3/cluster/7002
##注意:拷贝完成之后要修改7001/7002/目录下面redis.conf文件中的port参数,分别改为对应的文件夹的名称

5、分别启动这7个redis实例

cd /home/dragon/redis3/cluster/7000
redis-server redis.conf
cd /home/dragon/redis3/cluster/7001
redis-server redis.conf
cd /home/dragon/redis3/cluster/7002
redis-server redis.conf
cd /home/dragon/redis3/cluster
redis-server redis.conf
cd /home/dragon/redis3/cluster
redis-server redis.conf
cd /home/dragon/redis3/cluster
redis-server redis.conf

启动之后使用命令查看redis的启动情况ps -ef|grep redis

如下图显示则说明启动成功


6、执行redis的创建集群命令创建集群

cd /home/dragon/redis3/src
./redis-trib.rb create --replicas 1 192.168.3.238:6379 192.168.3.239:6379 192.168.3.240:6379 192.168.3.241:6379 192.168.3.242:6379

执行上面的命令的时候会报错,因为是执行的ruby的脚本,需要ruby的环境

错误内容:/usr/bin/env: ruby: No such file or directory

所以需要安装ruby的环境

apt-get install ruby
apt-get install rubygem
gem install redis

有时候会出现以下错误:

这时需要将每一个数据库节点文件夹中的除redis.conf文件的其他文件删除,如appendonly.aof nodes-6379.conf等

再次执行第6步的命令,正常执行

输入yes,然后配置完成。

至此redis集群即搭建成功!

7、使用redis-cli命令进入集群环境

./redis-cli -c -h 192.168.3.242 -p 7000

8、查看集群环境

./redis-trib.rb check 192.168.3.242:7000
如下显示:

redis分布式集群数据库搭建_第2张图片

以上环境搭建完成!

你可能感兴趣的:(网络架构)