redis分布式集群数据库搭建

    xiaoxiao2022-06-24  36

    官方文档中写的是在本地环境下搭建数据库集群,而在我的开发环境中需要多网络节点的集群。下面是分布式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

    网络拓扑图如下:

    部署步骤:

    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如下显示:

    以上环境搭建完成!

    转载请注明原文地址: https://ju.6miu.com/read-1123834.html

    最新回复(0)