Redis 向集群添加新节点

步骤:

1. 启动集群服务(向集群添加新节点,则说明,集群是已知的)。

2. 搭建将要添加到集群的节点

  (1)以集群的方式对新添加的节点进行配置:redis.conf.

  (2)启动节点实例服务.

   3.集群管理 可参考  Redis cluster tutorial 官网指导文档,往往是最新的。

一、启动集群服务:【命令在集群服务器执行】

(1) 启动集群服务(3个实例 6001 6002 6003)

  /usr/local/redis/redis-5.0.8/src/redis-server /usr/local/redis-cluster/6001/redis.conf

  /usr/local/redis/redis-5.0.8/src/redis-server /usr/local/redis-cluster/6002/redis.conf

  /usr/local/redis/redis-5.0.8/src/redis-server /usr/local/redis-cluster/6003/redis.conf

(2) 客户端连接

  /usr/local/redis/redis-5.0.8/src/redis-cli -c -h 192.168.11.10 -p 6001

  192.168.11.10:6001> cluster nodes

  ae87077a695cecc57f0196e47d561329ca725d4d 192.168.11.10: master - 0 1591414267000 3 connected 10923-16383
    4f25757eec50e76d8b74d6cce25987f22be10063 192.168.11.10: myself,master - 0 1591414266000 1 connected 0-5460
    228e33659b4323878b1174e211c46bfe2f5ca34a 192.168.11.10: master - 0 1591414268393 2 connected 5461-10922

    结论:集群正常

二、搭建将要添加到集群的节点:

1. 待添加到集群的节点,文件结构

  [ src]# cd /usr/local/redis-cluster/

  [ redis-cluster]# ls
    7001 7002 7003
    [ redis-cluster]# cd 7001
    [ 7001]# ls
    redis.conf

2. 修改集群节点的配置文件 redis.conf

  (1)daemonize no ——> daemonize yes 

  (2)port 6379 修改为对应节点目录的端口号(本次修改为7001 7002 7003)

  (3)bind 127.0.0.1 ——> bind 当前机器的IP地址(本次为 192.168.11.11)

  (4) dir 这一行 指定数据文件的存放路径。设置为各个节点下的目录。目录结构类似为"/usr/local/redis/redis-cluster/节点目录/" (本次为 dir /usr/local/redis/redis-cluster/7001/)

  (5)启动集群模式。cluster-enabled ——> cluster-enabled yes

  (6)设置集群的配置文件路径 。cluster-config-file nodes***.conf。***代表每个节点的目录对应的位置。本次修改为7001

     (7)修改appendonly 为yes 。然后按照7001节点配置格式分别修改7002,7003这几个节点的配置文件

3.编译redis

   在redis目录下,执行 make

    [ ~]# cd /usr/local/redis/redis-6.0.3/ 

    [ redis-6.0.3]# make

  4. 发现 在 redis-6.0.3/src 下 多了不少文件 尤其增添了 redis-server  (操作服务端)、redis-cli(操作客户端)

    (1)启动服务【命令在待添加节点所在的服务器执行】:/usr/local/redis/redis-6.0.3/src/redis-server /usr/local/redis-cluster/7001/redis.conf

    (2)添加节点到指定节点下,作为其(192.168.11.10:6001)slave节点【命令在集群服务器执行】:/usr/local/redis/redis-5.0.8/src/redis-cli --cluster add-node 192.168.11.11:7001 192.168.11.10:6001 --cluster-slave --cluster-master-id 4f25757eec50e76d8b74d6cce25987f22be10063

    (3)查验【新添加的节点所在的服务器、也可以在集群服务器(注意路径)】:

    [ src]# /usr/local/redis/redis-6.0.3/src/redis-cli -c -h 192.168.11.11 -p 7001
      192.168.11.11:7001> cluster nodes
      27a1958f412a5ea7edaa364ab0079af27310afdd 192.168.11.11:7001@17001 myself,slave 4f25757eec50e76d8b74d6cce25987f22be10063 0 1591416650000 0 connected
      228e33659b4323878b1174e211c46bfe2f5ca34a 192.168.11.10: master - 0 1591416652000 2 connected 5461-10922
      ae87077a695cecc57f0196e47d561329ca725d4d 192.168.11.10: master - 0 1591416652582 3 connected 10923-16383
      4f25757eec50e76d8b74d6cce25987f22be10063 192.168.11.10: master - 0 1591416653587 1 connected 0-5460

相关推荐