• 腾讯云~Redis 伪分布式集群搭建2022版本+密码(linux环境)


    Linux环境 安装 Redis-6.2.6 配置运行_01
    https://gblfy.blog.csdn.net/article/details/105583077

    Redis 分布式集群能解决的问题集群 概念
    解决现有系统单节点并发压力和物理上限问题通过添加服务器的数量,提供相同的服务,从而让服务器达到一个稳定、高效的状态
    一、节点分布总览

    演示案例
    3主3从 横向扩展

    服务器端口节点说明
    192.168.0.807001master
    192.168.0.807002slave
    192.168.0.807003master
    192.168.0.807004slave
    192.168.0.807005master
    192.168.0.807006slave
    二、软件配置初始化

    2.1~2.5属于公共部分,101/102/103服务器需要依次执行

    2.1. 下载
    wget https://download.redis.io/releases/redis-6.2.6.tar.gz
    
    • 1
    2.2. 解压
    cd /app
    tar -zxvf redis-6.2.6.tar.gz
    
    • 1
    • 2
    2.3. 编译安装
    cd redis-6.2.6/
    make install
    
    • 1
    • 2
    三、配置管理
    3.1. 配置抽离
    mkdir /app/redis-cluster/
    cp /app/redis-6.2.6/redis.conf /app/redis-cluster/
    
    • 1
    • 2
    3.2. 配置编辑
    vim /app/redis-cluster/redis.conf
    
    • 1

    直接复制即可

    # 绑定访问ip信息
    bind 0.0.0.0
    
    # # 修改对应的端口
    port 7001
    
    #修改为后台启动
    daemonize yes
    
    #关闭保护模式
    protected-mode no
    
    #启动AOF文件
    appendonly yes
    
    #指定数据文件存放位置,必须要指定不同的目录位置,不然会丢失数据
    dir /usr/local/redis-cluster/redis-7001
    
    # 日志文件名
    logfile "redis-7001.log"
    
    # .pid文件初始化
    pidfile /var/run/redis_7001.pid
    
    # 启动集群模式
    cluster-enabled yes
    
    # 节点离线的超时时间
    cluster-node-timeout 15000
      
    # 注释打开并修改node节点 
    cluster-config-file nodes-7001.conf
    
    #如果要设置密码需要增加如下配置:
    #设置redis访问密码
    requirepass pwd@2022gblfy
    
    #设置集群节点间访问密码,跟上面一致
    masterauth pwd@2022gblfy
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 28
    • 29
    • 30
    • 31
    • 32
    • 33
    • 34
    • 35
    • 36
    • 37
    • 38
    • 39
    3.3. 配置复制
    cp /app/redis-cluster/redis.conf /app/redis-cluster/redis-7001.conf
    cp /app/redis-cluster/redis.conf /app/redis-cluster/redis-7002.conf
    cp /app/redis-cluster/redis.conf /app/redis-cluster/redis-7003.conf
    cp /app/redis-cluster/redis.conf /app/redis-cluster/redis-7004.conf
    cp /app/redis-cluster/redis.conf /app/redis-cluster/redis-7005.conf
    cp /app/redis-cluster/redis.conf /app/redis-cluster/redis-7006.conf
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6

    在这里插入图片描述

    3.4. redis-7002.conf
     vim /app/redis-cluster/redis-7002.conf
    
    • 1

    将7001替换为7002

    :%s/7001/7002/cg
    
    • 1

    按y依次替换

    3.5. redis-7003.conf
     vim /app/redis-cluster/redis-7003.conf
    
    • 1

    将7001替换为7003

    :%s/7001/7003/cg
    
    • 1

    按y依次替换

    3.6. redis-7004.conf
     vim /app/redis-cluster/redis-7004.conf
    
    • 1

    将7001替换为7004

    :%s/7001/7004/cg
    
    • 1

    按y依次替换

    3.7. redis-7005.conf
     vim /app/redis-cluster/redis-7005.conf
    
    • 1

    将7001替换为7005

     :%s/7001/7005/cg
    
    • 1

    按y依次替换

    3.8. redis-7006.conf
     vim /app/redis-cluster/redis-7006.conf
    
    • 1

    将7001替换为7006

     :%s/7001/7006/cg
    
    • 1

    按y依次替换

    3.9. 创建目录
    mkdir /usr/local/redis-cluster/redis-7001 -p
    mkdir /usr/local/redis-cluster/redis-7002 -p
    mkdir /usr/local/redis-cluster/redis-7003 -p
    mkdir /usr/local/redis-cluster/redis-7004 -p
    mkdir /usr/local/redis-cluster/redis-7005 -p
    mkdir /usr/local/redis-cluster/redis-7006 -p
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    3.10. 启动redis
    /app/redis-6.2.6/src/redis-server /app/redis-cluster/redis-7001.conf
    /app/redis-6.2.6/src/redis-server /app/redis-cluster/redis-7002.conf
    /app/redis-6.2.6/src/redis-server /app/redis-cluster/redis-7003.conf
    /app/redis-6.2.6/src/redis-server /app/redis-cluster/redis-7004.conf
    /app/redis-6.2.6/src/redis-server /app/redis-cluster/redis-7005.conf
    /app/redis-6.2.6/src/redis-server /app/redis-cluster/redis-7006.conf
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    3.11. 监控redis状态
    ps -ef|grep redis
    
    • 1

    在这里插入图片描述

    四、集群搭建

    上面仅仅是搭建了集群,6个节点之间还没有关系,下面通过 节点握手让集群各节点之间,发生关系。

    4.1. 防火墙策略

    centos7.x

    firewall-cmd --zone=public --add-port=7001/tcp --permanent
    firewall-cmd --zone=public --add-port=7002/tcp --permanent
    firewall-cmd --zone=public --add-port=7003/tcp --permanent
    firewall-cmd --zone=public --add-port=7004/tcp --permanent
    firewall-cmd --zone=public --add-port=7005/tcp --permanent
    firewall-cmd --zone=public --add-port=7006/tcp --permanent
    firewall-cmd --zone=public --add-port=17001/tcp --permanent
    firewall-cmd --zone=public --add-port=17002/tcp --permanent
    firewall-cmd --zone=public --add-port=17003/tcp --permanent
    firewall-cmd --zone=public --add-port=17004/tcp --permanent
    firewall-cmd --zone=public --add-port=17005/tcp --permanent
    firewall-cmd --zone=public --add-port=17006/tcp --permanent
    firewall-cmd --reload
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13

    在这里插入图片描述
    在这里插入图片描述

    在这里插入图片描述

    4.2.集群搭建
    • -a pwd@2022gblfy 我们之前设置的密码
    • –cluster-replicas 1 主从搭配比例,1表示一主一从,2表示一主2从,要使用可以被客户端访问到的ip
      登录腾讯云服务器的7001节点以下命令(默认按照顺序自动分配主从,一般顺序是一主一从按照你的命令排列顺序):
    redis-cli -a pwd@2022gblfy --cluster create --cluster-replicas 1 192.168.0.80:7001 192.168.0.80:7004 192.168.0.80:7003 192.168.0.80:7006 192.168.0.80:7005 192.168.0.80:7002 
    
    • 1

    执行完后会出现下面的界面,输入yes回车即可,我们可以得到以下信息,每一个主服务的哈希槽是多少
    谁是主谁是从,谁是谁的主,谁是谁的从
    在这里插入图片描述
    在这里插入图片描述

    成功标识
    在这里插入图片描述

    [root@VM-24-10-centos redis-cluster]# redis-cli -a pwd@2022gblfy --cluster create --cluster-replicas 1 192.168.0.80:7001 192.168.0.80:7004 192.168.0.80:7003 192.168.0.80:7006 192.168.0.80:7005 192.168.0.80:7002
    Warning: Using a password with '-a' or '-u' option on the command line interface may not be safe.
    >>> Performing hash slots allocation on 6 nodes...
    Master[0] -> Slots 0 - 5460
    Master[1] -> Slots 5461 - 10922
    Master[2] -> Slots 10923 - 16383
    Adding replica 192.168.0.80:7005 to 192.168.0.80:7001
    Adding replica 192.168.0.80:7002 to 192.168.0.80:7004
    Adding replica 192.168.0.80:7006 to 192.168.0.80:7003
    >>> Trying to optimize slaves allocation for anti-affinity
    [WARNING] Some slaves are in the same host as their master
    M: 64ab97133edd09d0de90d7646f158cc0c27c6dbc 192.168.0.80:7001
       slots:[0-5460] (5461 slots) master
    M: a3fbce0abdd2555a966d778aece4827a70e133e9 192.168.0.80:7004
       slots:[5461-10922] (5462 slots) master
    M: 13f76c0f3b16f251ffc4802c3af89bb3dccfa664 192.168.0.80:7003
       slots:[10923-16383] (5461 slots) master
    S: d3e0ed7ec783a368602130af5ef405581b20246f 192.168.0.80:7006
       replicates 13f76c0f3b16f251ffc4802c3af89bb3dccfa664
    S: 3ab99d5dc392b2011b34a52478c4a8ef0152e187 192.168.0.80:7005
       replicates 64ab97133edd09d0de90d7646f158cc0c27c6dbc
    S: 8b2f5b506b1bdbef9e9fed5844a0bfdc5f88dcc6 192.168.0.80:7002
       replicates a3fbce0abdd2555a966d778aece4827a70e133e9
    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 192.168.0.80:7001)
    M: 64ab97133edd09d0de90d7646f158cc0c27c6dbc 192.168.0.80:7001
       slots:[0-5460] (5461 slots) master
       1 additional replica(s)
    S: 8b2f5b506b1bdbef9e9fed5844a0bfdc5f88dcc6 192.168.0.80:7002
       slots: (0 slots) slave
       replicates a3fbce0abdd2555a966d778aece4827a70e133e9
    M: a3fbce0abdd2555a966d778aece4827a70e133e9 192.168.0.80:7004
       slots:[5461-10922] (5462 slots) master
       1 additional replica(s)
    S: 3ab99d5dc392b2011b34a52478c4a8ef0152e187 192.168.0.80:7005
       slots: (0 slots) slave
       replicates 64ab97133edd09d0de90d7646f158cc0c27c6dbc
    M: 13f76c0f3b16f251ffc4802c3af89bb3dccfa664 192.168.0.80:7003
       slots:[10923-16383] (5461 slots) master
       1 additional replica(s)
    S: d3e0ed7ec783a368602130af5ef405581b20246f 192.168.0.80:7006
       slots: (0 slots) slave
       replicates 13f76c0f3b16f251ffc4802c3af89bb3dccfa664
    [OK] All nodes agree about slots configuration.
    >>> Check for open slots...
    >>> Check slots coverage...
    [OK] All 16384 slots covered.
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 28
    • 29
    • 30
    • 31
    • 32
    • 33
    • 34
    • 35
    • 36
    • 37
    • 38
    • 39
    • 40
    • 41
    • 42
    • 43
    • 44
    • 45
    • 46
    • 47
    • 48
    • 49
    • 50
    • 51
    • 52
    4.3. 查看集群信息
    redis-cli -h 192.168.0.80  -p 7001 -a pwd@2022gblfy
    
    • 1
    cluster info
    cluster nodes
    
    • 1
    • 2

    在这里插入图片描述

  • 相关阅读:
    Spring-Cloud之Feign原理剖析
    C++ opencv图像直方图
    CAD图在线Web测量工具代码实现(测量距离、面积、角度等)
    正则匹配绕过总计之[极客大挑战 2019]RCE ME
    LeetCode_哈希表_中等_454.四数相加 II
    WuThreat身份安全云-TVD每日漏洞情报-2023-10-08
    (附源码)SSM介绍信智能实现系统 毕业设计 260930
    Fabric.js 上划线、中划线(删除线)、下划线
    神经网络深度学习(五)初始化
    【精品资源】2024最新毕业设计题目(950+)java毕设、信息管理系统、python毕设、大数据分析毕设、机器学习毕设.
  • 原文地址:https://blog.csdn.net/weixin_40816738/article/details/127454055