Centos7上部署安裝Redis集群(单机多节点)

一时失言乱红尘 2022-05-12 07:38 282阅读 0赞

安裝環境

  1. Centos7
  2. redis4.0.11

这里将安装官网的要求,部署6个节点,三个主节点,三个从节点。

复制配置

通过复制六份redis.conf配置文件,修改各个配置文件端口号来启动多个实例。规定六个实例的端口号分别为:7000,7001,7002,7003,7004,7005;

1. 首先在redis的安装目录下创建一个文件夹cluster用于存放六份配置文件

  1. mkdir cluster
  2. cd cluster
  3. mkdir 7000 7001 7002 7003 7004 7005

2. 复制redis.conf文件到各个端口号目录下

  1. cp /usr/local/redis/redis.conf /usr/local/redis/cluster/7000/
  2. cp /usr/local/redis/redis.conf /usr/local/redis/cluster/7001/
  3. cp /usr/local/redis/redis.conf /usr/local/redis/cluster/7002/
  4. cp /usr/local/redis/redis.conf /usr/local/redis/cluster/7003/
  5. cp /usr/local/redis/redis.conf /usr/local/redis/cluster/7004/
  6. cp /usr/local/redis/redis.conf /usr/local/redis/cluster/7005/
  7. cp /usr/local/redis/redis.conf /usr/local/redis/cluster/7006/

如果你不想频繁cp操作,可以使用如下简化操作:

进入cluster目录下,使用echo+xargs命令一步到位.

  1. cd cluster
  2. echo 7000 7001 7002 7003 7004 7005 | xargs -n 1 cp -v /usr/local/redis/redis.conf

3. 修改配置文件

主要修改redis.conf如下几点信息:

  1. port 7001 //六个节点配置文件分别是7000-7005
  2. daemonize yes //redis后台运行
  3. pidfile /var/run/redis_7001.pid //pidfile文件对应7000-7005
  4. cluster-enabled yes //开启集群
  5. cluster-config-file nodes_7001.conf //保存节点配置,自动创建,自动更新对应7000-7005
  6. cluster-node-timeout 5000 //集群超时时间,节点超过这个时间没反应就断定是宕机
  7. appendonly yes //存储方式,aof,将写操作记录保存到日志中

将每个文件都修改下,你也可以先修改一份,然后copy到其他目录,修改与其端口号相对应的地方即可。

创建集群

1. 启动节点

同时启动六个节点,使用如下命令:

  1. /usr/local/redis/bin/redis-server /usr/local/redis/cluster/7000/redis.conf
  2. /usr/local/redis/bin/redis-server /usr/local/redis/cluster/7001/redis.conf
  3. /usr/local/redis/bin/redis-server /usr/local/redis/cluster/7002/redis.conf
  4. /usr/local/redis/bin/redis-server /usr/local/redis/cluster/7003/redis.conf
  5. /usr/local/redis/bin/redis-server /usr/local/redis/cluster/7004/redis.conf
  6. /usr/local/redis/bin/redis-server /usr/local/redis/cluster/7005/redis.conf

查看redis启动情况:

  1. ps -ef|grep redis

能够查看如下信息代表启动成功:

  1. root 9501 1 0 17:38 ? 00:00:00 /usr/local/redis/bin/redis-server 127.0.0.1:7001 [cluster]
  2. root 9512 1 0 17:45 ? 00:00:00 /usr/local/redis/bin/redis-server 127.0.0.1:7002 [cluster]
  3. root 9516 1 0 17:45 ? 00:00:00 /usr/local/redis/bin/redis-server 127.0.0.1:7003 [cluster]
  4. root 9520 1 0 17:45 ? 00:00:00 /usr/local/redis/bin/redis-server 127.0.0.1:7004 [cluster]
  5. root 9524 1 0 17:45 ? 00:00:00 /usr/local/redis/bin/redis-server 127.0.0.1:7005 [cluster]
  6. root 9528 1 0 17:45 ? 00:00:00 /usr/local/redis/bin/redis-server 127.0.0.1:7000 [cluster]

2. 创建集群

redis官网提供了redis-trib.rb工具,它位于redis源码包的src目录下, 它是一个 Ruby 程序, 这个程序通过向实例发送特殊命令来完成创建新集群, 检查集群, 或者对集群进行重新分片(reshared)等工作。由于使用Ruby,所以你必须安装Ruby与Ruby-redis依赖。

  1. gem install redis
  2. ./redis-trib.rb create --replicas 1 127.0.0.1:7000 127.0.0.1:7001 \
  3. 127.0.0.1:7002 127.0.0.1:7003 127.0.0.1:7004 127.0.0.1:7005

出现下面的信息代表集群成功启动:

70

快捷创建方式

在redis内部提供了一个脚本,方便我们快捷的创建包含6个节点的集群,它们默认的端口号为30001~30006,该工具在redis源码包的utils包中的create-cluster目录下

70 1 使用如下命令即可以快速的启动,停止集群:

  1. #启动节点
  2. create-cluster start
  3. #创建集群
  4. create-cluster create
  5. #停止集群
  6. create-cluster stop

集群数据测试

70 2

可以看到,在7000节点插入的数据,我们再7001节点上查找该数据的时候,redis会自动的重定向到7000节点。

发表评论

表情:
评论列表 (有 0 条评论,282人围观)

还没有评论,来说两句吧...

相关阅读