美文网首页技术栈
CentOS7安装Redis集群

CentOS7安装Redis集群

作者: xinyin015 | 来源:发表于2018-06-06 17:07 被阅读16次

    安装依赖

    yum install gcc-c++
    yum install ruby ruby-devel rubygems rpm-build
    

    安装官方脚本

    wget https://rubygems.org/downloads/redis-3.2.1.gem
    gem install redis-3.2.1.gem
    

    下载Redis源码

    wget http://download.redis.io/releases/redis-3.2.11.tar.gz
    tar zxvf redis-3.2.11.tar.gz
    cd redis-3.2.11
    make
    make PREFIX=/usr/local/redis install
    # 拷贝conf文件
    mkdir /usr/local/redis/conf/
    cp redis.conf /usr/local/redis/conf/redis.conf
    # 启动redis
    /usr/local/redis/bin/redis-server /usr/local/redis/conf/redis.conf
    

    搭建Redis集群

    # 复制多个conf文件
    cd /usr/local/redis/conf/
    cp redis.conf redis_xxx.conf
    # 修改配置,每个conf文件都需修改
    vim redis_xxx.conf
        port xxxx #修改端口 
        cluster-enabled yes #打开注释,开启集群模式 
        cluster-config-file nodes-xxxx.conf #集群的配置文件
        pidfile /var/run/redis_xxxx.pid #pidfile文件 
        logfile "xxxx.log" #日志文件 
        dbfilename dump_xxxx.rdb #rdb持久化文件 
        cluster-node-timeout 5000 #请求超时,单位毫秒 
        appendonly yes #开启aof持久化方式
    vim start-all.sh
        #! /bin/bash
        /usr/local/redis/bin/redis-server /usr/local/redis/conf/redis_1.conf
        /usr/local/redis/bin/redis-server /usr/local/redis/conf/redis_2.conf
        /usr/local/redis/bin/redis-server /usr/local/redis/conf/redis_3.conf
        /usr/local/redis/bin/redis-server /usr/local/redis/conf/redis_4.conf
    chmod +x start-all.sh   
    ./start-all.sh
    # 查看是否启动成功
    ps aux | grep redis
        root       2780  0.8  0.5 139016  9808 ?        Ssl  09:29   0:45 /usr/local/redis-cluster/redis/bin/redis-server 0.0.0.0:7001 [cluster]
        root       2782  0.9  0.4 136968  7756 ?        Ssl  09:29   0:46 /usr/local/redis-cluster/redis/bin/redis-server 0.0.0.0:7002 [cluster]
        
    

    创建集群

    第一步:搭建集群 ./redis-trib.rb create ,选择yes接受建议的配置
    第二步:进入集群客户端 ./redis-cli -h 任意主机host -p 任意主机port -c,-c表示以集群方式连接redis
    第三步:保存数据
    第四步:cluster info 查询集群状态信息
    第五步:cluster nodes 查询集群结点信息
    
    cd redis-3.2.11
    cp src/redis-trib.rb /usr/local/redis-cluster/redis-trib.rb
    # 集群创建命令: ./redis-trib.rb create 创建集群,--replicas 1 给每个主机分配一个从机,后面其他参数都是redis服务的ip:port。最后输入yes来接受建议的配置
    redis-trib.rb create --replicas 1 127.0.0.1:7001 127.0.01:7002 127.0.0.1:7003 127.0.0.1:7004
        [OK] All 16384 slots covered. # 表示创建成功
    /usr/local/redis/bin/redis-cli -h 127.0.0.1 -p 7001 -c
    127.0.0.1:7001> cluster info
    cluster_state:ok
    cluster_slots_assigned:16384
    cluster_slots_ok:16384
    cluster_slots_pfail:0
    cluster_slots_fail:0
    cluster_known_nodes:6
    cluster_size:3
    cluster_current_epoch:6
    cluster_my_epoch:3
    cluster_stats_messages_sent:12578
    cluster_stats_messages_received:12578
    

    添加防火墙过滤

    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=17001/tcp --permanent # 集群通信端口号为redis端口加10000
    firewall-cmd --zone=public --add-port=17002/tcp --permanent # 集群通信端口号为redis端口加10000
    firewall-cmd --zone=public --add-port=17003/tcp --permanent # 集群通信端口号为redis端口加10000
    firewall-cmd --zone=public --add-port=17004/tcp --permanent # 集群通信端口号为redis端口加10000
    firewall-cmd --reload # 重新加载
    

    如有错误,欢迎指出。

    相关文章

      网友评论

        本文标题:CentOS7安装Redis集群

        本文链接:https://www.haomeiwen.com/subject/pnxisftx.html