美文网首页
分布式环境搭建3--安装Redis集群

分布式环境搭建3--安装Redis集群

作者: Nil_Woo | 来源:发表于2017-05-16 12:47 被阅读0次

    3、安装Redis集群

    • 下载
    wget http://download.redis.io/releases/redis-3.2.8.tar.gz
    
    • 安装
    tar -vxzf redis-3.2.8.tar.gz
    cd redis-3.2.8
    make && make install
    
    • 配置
    # 创建redis主目录
    mkdir /usr/local/redis
    
    # 拷贝redis.conf到主目录
    cp ~/redis-3.2.8/redis.conf /usr/local/redis
    
    • 修改redis.conf
    bind 0.0.0.0
    daemonize yes
    cluster-enabled yes
    cluster-config-file nodes.conf
    cluster-node-timeout 5000
    appendonly yes
    
    • 拷贝redis.conf到其他节点
    scp /usr/local/redis/redis.conf root@node2:/usr/local/redis/
    scp /usr/local/redis/redis.conf root@node3:/usr/local/redis/
    scp /usr/local/redis/redis.conf root@node4:/usr/local/redis/
    scp /usr/local/redis/redis.conf root@node5:/usr/local/redis/
    scp /usr/local/redis/redis.conf root@node6:/usr/local/redis/
    
    • 启动&停止
    # 启动
    redis-server /usr/local/redis/redis.conf
    # 停止
    redis-cli -h 127.0.0.1 -p 6379 shutdown
    
    • 建立集群
    # 安装ruby
    yum -y install ruby ruby-devel rubygems rpm-build
    
    # 从ruby的gem工具包安装redis
    gem install redis
    
    # 拷贝redis-trib.rb到可执行目录
    cp ~/redis-3.2.8/src/redis-trib.rb /usr/local/bin/
    
    # 建立集群
    redis-trib.rb create --replicas 1 192.168.2.11:6379 192.168.2.12:6379 192.168.2.13:6379 192.168.2.14:6379 192.168.2.15:6379 192.168.2.16:6379
    
    # 选项 --replicas 1 表示我们希望为集群中的每个主节点创建一个从节点。
    # 之后跟着的其他参数则是实例的地址列表,格式ip:port,注意要使用IP地址,不要使用域名。
    
    # 常见错误
    1、配置完所有主节点后,报" ERR Invalid node address specified"
    由于redis-trib.rb 对域名或主机名支持不好,故在创建集群的时候要使用ip:port的方式
    redis-trib.rb create ip1:port1 ip2:port2 ip3:port3
    
    2、创建集群时报某个err slot 0 is already busy (redis::commanderror)
    这是由于之间创建集群没有成功,需要将nodes.conf和dir里面的文件全部删除(注意不要删除了redis.conf)
    
    3、创建集群时一直处于"Waiting for the cluster to join...................................."的状态
    这个问题原因不知,但解决方法是在redis.conf文件中把bind 127.0.0.1本地环回口改为物理接口.
    
    4、安装ruby redis时长时间没响应
    这是由于天朝网络,解决办法是改ruby源(请自行baidu)或手动安装
    
    5、[ERR] Node XXX.XXX.XXX.XXX:XXXX is not empty. Either the nodealready knows other nodes (check with CLUSTER NODES) or contains some
    $redis-cli
    127.0.0.1:7000> flushall
    127.0.0.1:7000> cluster reset
    127.0.0.1:7000> exit
    
    • 集群测试
    # redis-cli 也可以作为集群的客户端工具,要想访问集群,只需连接任意一个redis实例即可。使用-c参数
    
    # 在其中任意一台机器上执行set:
    redis-cli -c -p 6379
    127.0.0.1:6379> set name zhangsanfeng
    -> Redirected to slot [5798] located at 127.0.0.1:7001
    OK
    
    # 在另外一台机器上执行get:
    127.0.0.1:6379> get name
    "zhangsanfeng"
    

    相关文章

      网友评论

          本文标题:分布式环境搭建3--安装Redis集群

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