zoukankan      html  css  js  c++  java
  • Redis搭建集群环境

    Redis下载地址

    官网地址:http://redis.io/
    中文官网地址:http://www.redis.cn/
    下载地址:http://download.redis.io/releases/

    Redis安装环境

    Redis没有官方的window版本,所以建议在linux环境下安装。此次安装在centos7中。

    Redis安装单机版

    第一步:安装 C 语言需要的 GCC 环境

    yum install -y gcc-c++
    yum install -y wget

    第二步:下载并解压缩 Redis 源码压缩包

    cd /opa/lagou/software  --进入下载目录
    wget http://download.redis.io/releases/redis-5.0.5.tar.gz --下载压缩包 tar -zxvf /opt/lagou/software/redis-5.0.5.tar.gz -C /opt/lagou/servers/ --解压文件到指定文件夹

    第三步:编译 Redis 源码,进入 redis-5.0.5 目录,执行编译命令

    cd /opt/lagou/servers/redis-5.0.5/src 
    make --编译

    第四步:安装 Redis ,需要通过 PREFIX 指定安装路径

    mkdir /opt/lagou/servers/redis-cluster/master1 -p   --创建安装目录
    make install PREFIX=/opt/lagou/servers/redis-cluster/master1 指定安装路径并安装

    第五步:启动

    (1)前段启动

    启动命令: redis-server ,直接运行 bin/redis-server 将以前端模式启动

    ./redis-server

    (2)后端启动(守护进程启动)

    第一步:拷贝 redis.conf 配置文件到 Redis 安装目录的 bin 目录

    cp redis.conf /usr/redis/bin/
    cp /opt/lagou/servers/redis-5.0.5/redis.conf /opt/lagou/servers/redis-cluster/master1/bin/

    第二步:修改 redis.conf

    vim redis.conf

    69 # bind 127.0.0.1      # 注掉bind 允许外界访问
    88 protected-mode no     # 将yes改成no,允许外界访问
    92 port 6379             # 端口号
    136 daemonize yes        # 将no改成yes,允许后台启动
    832 cluster-enabled yes  # 开启cluster

    第三步:启动服务

    ./redis-server redis.conf

    集群部署

    需求:

     (1)搭建Redis5.0集群,要求三主三从,记录下安装步骤

    (2)能够添加一主一从(Master4和Slaver4),记录下安装步骤

    (3)能够通过JedisCluster向RedisCluster添加数据和取出数据

    集群规划

    虚拟机名称及IP 持有角色 端口
    centos7-1:192.168.80.100 master1
    slaver1
    6379
    6380
    centos7-2:192.168.80.101 master2
    slaver2
    6379
    6380
    centos7-3:192.168.80.102 master3
    slaver3
    6379
    6380
    centos7-1:192.168.80.100 master4
    slaver4
    7000
    7001

     集群安装

    按照如上步骤安装主机Redis;

    安装从机Redis:

    拷贝Redis从机:
    cp -r /opt/lagou/servers/redis-cluster/master1/  /opt/lagou/servers/redis-cluster/slaver1

    修改Redis.conf中的端口号
    vim redis.conf
    port 7980

    拷贝Redis主、从机至其他两台服务器

    rsync -rvl /opt/lagou/servers/redis-cluster root@centos7-2:/opt/lagou/servers/
    rsync -rvl /opt/lagou/servers/redis-cluster root@centos7-3:/opt/lagou/servers/

    修改其他两台服务器中的master和slave文件夹名称

    连接到centos7-2并修改文件夹名称
    ssh root@centos7-2 mv /opt/lagou/servers/redis-cluster/master1/ /opt/lagou/servers/redis-cluster/master2/ ssh root@centos7-2 mv /opt/lagou/servers/redis-cluster/slaver1/ /opt/lagou/servers/redis-cluster/slaver2/
    连接到centos7-2并修改文件夹名称
    ssh root@centos7-3 mv /opt/lagou/servers/redis-cluster/master1/ /opt/lagou/servers/redis-cluster/master3/
    ssh root@centos7-3 mv /opt/lagou/servers/redis-cluster/slaver1/ /opt/lagou/servers/redis-cluster/slaver3/

    启动

    编写启动脚本start-rediscluster.sh

    vim  /opt/lagou/server/redis-cluster/start-rediscluster.sh

    #!/bin/bash
    pdir='/opt/lagou/servers/redis-cluster'
    user=`whoami`
    
    echo $pdir
    for((i=1; i<4; i++)); do
     echo ---------------- centos7-$i starting -------------------
     ssh $user@centos7-$i 'cd '$pdir'/master'$i'/bin; ./redis-server ./redis.conf'
     ssh $user@centos7-$i 'cd '$pdir'/slaver'$i'/bin; ./redis-server ./redis.conf'
     echo ---------------- centos7-$i end -------------------
    done

    启动集群

    chmod 777 start-rediscluster.sh  --赋予脚本文件权限
    ./ start-rediscluster.sh               -- 启动集群

    添加三台主机、三台从机的主从关系

    ./master1/bin/redis-cli --cluster create 192.168.80.100:6379 192.168.80.101:6379 192.168.80.102:6379 192.168.80.100:6380 192.168.80.101:6380 192.168.80.102:6380 --cluster-replicas 1

    查看节点信息

     扩容

    准备扩容的master4和slave4

    复制master和slave
    cp -r /opt/lagou/servers/redis-cluster/master1/ /opt/lagou/servers/redis-cluster/master4 cp -r /opt/lagou/servers/redis-cluster/master1/ /opt/lagou/servers/redis-cluster/slaver4
    修改端口 vim /opt/lagou/servers/redis-cluster/master4/bin/redis.conf port 7000 vim /opt/lagou/servers/redis-cluster/master4/bin/redis.conf port 7001

     启动master4并加入集群

    # 启动 master4
    cd /opt/lagou/servers/redis-cluster/master4/bin
    ./redis-server redis.conf
    
    # 连接集群
    ## 添加 master4
    cd  /opt/lagou/servers/redis-cluster/master4/bin/
    ./redis-cli --cluster add-node 192.168.80.100:7000 192.168.80.100:6379

    启动slave4 并加入集群

    # 启动 slaver4
    cd /opt/lagou/servers/redis-cluster/slave4/bin
    ./redis-server redis.conf

    将slave4从节点加入集群
    ./redis-cli --cluster add-node 192.168.80.100:7001 192.168.80.100:7000 --cluster-slave --cluster-master-id 292b16ffa783245ebb49f45617222ab7a57d48c

    加入命令格式:
    ./redis-cli --cluster add-node 新节点的ip和端口 旧节点ip和端口 --cluster-slave --cluster-master-id 主节点id

    结果查看

      

  • 相关阅读:
    51 Nod 1086 多重背包问题(单调队列优化)
    51 Nod 1086 多重背包问题(二进制优化)
    51 Nod 1085 01背包问题
    poj 2559 Largest Rectangle(单调栈)
    51 Nod 1089 最长回文子串(Manacher算法)
    51 Nod N的阶乘的长度 (斯特林近似)
    51 Nod 1134 最长递增子序列(经典问题回顾)
    51 Nod 1020 逆序排列
    PCA-主成分分析(Principal components analysis)
    Python中cPickle
  • 原文地址:https://www.cnblogs.com/aloneme/p/14987467.html
Copyright © 2011-2022 走看看