• ubtuntu redis 集群部署/搭建(官方原始方案)


    1. 安装ruby环境

    apt-get install ruby
    gem install redis

    2. 安装redis

    参考文章:ubuntu 使用命令安装最新的redis版本

    3. 创建集群文件及文件夹

    mkdir redis-cluster
    cd redis-cluster
    mkdir 9000 9001 9002 9003 9004 9005

    结果如下图所示:

    13.png

    4. 拷贝redis.conf

    ubuntu  redis配置文件路径

    cd /etc/redis

     进入redis配置文件目录,将redis.conf复制redis-cluster文件夹中

    cp redis.conf /home/user/redis-cluster

    4.1主要修改信息如下:

    port 9000  # 端口号和文件夹名一样
    bind 127.0.0.1 # 绑定的ip 可以使用127.0.0.1 也可以使用192.168.0.1
    dir /home/user/redis-cluster/9000 # 备份文件名存储位置
    cluster-enabled yes # 开启集群
    cluster-config-file nodes-9000.conf  # 配置文件名
    appendonly yes # 开启

    不同信息在redis.conf位置:

    4.2 ip绑定 绑定本机ip

    21.png

    4.2修改端口号

    22.png

    4.3 开启

    26.png

    4.4 数据存储位置

    dbfilename 备份文件名

    23.png

    4.5 开启集群

    24.png

    4.6 配置文件名

    25.png

    然后分别将redis0cluster中redis.conf配置文件复制到新建的6个文件夹中(9000,9001,9002,9003,9004,9005)

    复制redis.conf配置文件

    cp redis.conf /home/user/redis-cluster/9000
    cp redis.conf /home/user/redis-cluster/9001
    cp redis.conf /home/user/redis-cluster/9002
    cp redis.conf /home/user/redis-cluster/9003
    cp redis.conf /home/user/redis-cluster/9004
    cp redis.conf /home/user/redis-cluster/9005

    5. 分别启动redis-server

    redis-server /home/user/redis-cluster/9000/redis.conf 
    redis-server /home/user/redis-cluster/9001/redis.conf 
    redis-server /home/user/redis-cluster/9002/redis.conf 
    redis-server /home/user/redis-cluster/9003/redis.conf 
    redis-server /home/user/redis-cluster/9004/redis.conf 
    redis-server /home/user/redis-cluster/9005/redis.conf

    6. 查看redis-server是否正常启动

    ps -ef|grep redis-server

    结果如下

    27.png

    7. 创建redis集群

    redis-trib.rb(能否创建集群主要靠它)存放的路径

    cd /usr/share/doc/redis-tools/examples/

    复制redis-trib.rb到指定目录

    cp redis-trib.rb /home/user/redis-cluster/

    redis集群启动

    启动集群命令

    ./redis-trib.rb create --replicas 1 127.0.0.1:9000 127.0.0.1:9001 127.0.0.1:9002 127.0.0.1:9003 127.0.0.1:9004 127.0.0.1:9005

    结果如下:

    >>> ./redis-trib.rb create --replicas 1 127.0.0.1:9000 127.0.0.1:9001 127.0.0.1:9002 127.0.0.1:9003 127.0.0.1:9004 127.0.0.1:9005
    >>> Creating cluster  # 自动输入的命令
    >>> Performing hash slots allocation on 6 nodes...
    Using 3 masters:
    127.0.0.1:9000
    127.0.0.1:9001
    127.0.0.1:9002
    Adding replica 127.0.0.1:9004 to 127.0.0.1:9000
    Adding replica 127.0.0.1:9005 to 127.0.0.1:9001
    Adding replica 127.0.0.1:9003 to 127.0.0.1:9002
    >>> Trying to optimize slaves allocation for anti-affinity
    [WARNING] Some slaves are in the same host as their master
    M: 56b766b9e4b8447c2f0645e16b82283f6c7c11d7 127.0.0.1:9000
       slots:0-5460 (5461 slots) master
    M: 89af1208bca79d22f9c051bb86d40de1ebaf92b4 127.0.0.1:9001
       slots:5461-10922 (5462 slots) master
    M: c95629b3e17abaf3b0cef022359b49f4498a4d8a 127.0.0.1:9002
       slots:10923-16383 (5461 slots) master
    S: 736a7abdbec3fd16bd610900cfed8ecd7f9b008b 127.0.0.1:9003
       replicates 56b766b9e4b8447c2f0645e16b82283f6c7c11d7
    S: 5f94b10bfe0ba249767da82161bdfdb14b5092aa 127.0.0.1:9004
       replicates 89af1208bca79d22f9c051bb86d40de1ebaf92b4
    S: 58481f44f290203a644503946b3d6f2b9bd53916 127.0.0.1:9005
       replicates c95629b3e17abaf3b0cef022359b49f4498a4d8a
    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 127.0.0.1:9000)
    M: 56b766b9e4b8447c2f0645e16b82283f6c7c11d7 127.0.0.1:9000
       slots:0-5460 (5461 slots) master
       1 additional replica(s)
    S: 736a7abdbec3fd16bd610900cfed8ecd7f9b008b 127.0.0.1:9003
       slots: (0 slots) slave
       replicates 56b766b9e4b8447c2f0645e16b82283f6c7c11d7
    S: 5f94b10bfe0ba249767da82161bdfdb14b5092aa 127.0.0.1:9004
       slots: (0 slots) slave
       replicates 89af1208bca79d22f9c051bb86d40de1ebaf92b4
    S: 58481f44f290203a644503946b3d6f2b9bd53916 127.0.0.1:9005
       slots: (0 slots) slave
       replicates c95629b3e17abaf3b0cef022359b49f4498a4d8a
    M: 89af1208bca79d22f9c051bb86d40de1ebaf92b4 127.0.0.1:9001
       slots:5461-10922 (5462 slots) master
       1 additional replica(s)
    M: c95629b3e17abaf3b0cef022359b49f4498a4d8a 127.0.0.1:9002
       slots:10923-16383 (5461 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.

    8. 连接集群

    redis-cli -c -h 127.0.0.1 -p 9000

    注意:如果遇到MOVED 5798错误

    请阅读:http://www.chenxm.cc/post/695.html

    总结:

    这是一篇完整的Redis集群部署,只要按照文章中的步骤做,那么保证你能成功搭建一个redis集群。

    接下来可能就是动态扩容、增加节点和减少节点,重新分配槽大小等,当然,还有最重要的就是怎么和我们程序结合起来,以及如何更好的把 Redis 缓存集群发挥出应有的效果,这些才是最重要的。

  • 相关阅读:
    Web安全学习笔记之更新kali国内源
    K8S学习笔记之二进制的方式创建一个Kubernetes集群
    K8S学习笔记之Kubernetes核心概念
    K8S学习笔记之修改K8S的api-server证书
    Docker学习笔记之Copy on Write机制
    ELK学习笔记之简单适用的ES集群监控工具cerebro安装使用
    ELK学习笔记之F5利用EELK进行应用数据挖掘系列(2)-DNS
    ELK学习笔记之F5利用ELK进行应用数据挖掘系列(1)-HTTP
    ELK学习笔记之F5-HTTP-requesting-logging logstash filter
    Debian 无线网卡驱动问题
  • 原文地址:https://www.cnblogs.com/chenxinming-top/p/9598049.html
Copyright © 2020-2023  润新知