• redis集群搭建


    一、说明:
    1、redis节点  
    3主                           3从
    192.168.1.55:6300   192.168.1.55:6301     wh-52
    192.168.1.59:6300   192.168.1.59:6301     wh-53
    192.168.1.87:6300   192.168.1.87:6301     wh-54
    2、redis版本 :最新稳定版3.0.6
    3、安装配置 
    安装目录:/usr/local/src/redis-3.0.6/src/
    配置文件:/et/redis_630{0,1}.conf

    二、搭建
    1、安装redis-3.0.6
    [root@wh-52 ~]#cd /usr/local/src
    [root@wh-52 src]# wget http://download.redis.io/releases/redis-3.0.6.tar.gz 
    [root@wh-52 src]# tar  zxvf redis-3.0.6.tar.gz 
    [root@wh-52 src]#  yum  install  gcc  openssl-devel pcre-devel zlib-devel ruby rubygems 
    [root@wh-52 src]# cd redis-3.0.6 
    [root@wh-52redis-3.0.6]# make
    [root@wh-52redis-3.0.6]# make test

    2、集群创建准备
    [root@wh-52 ~]# cd /usr/local/src/redis-3.0.6/src/
    [root@wh-52 src]# cp redis-trib.rb  redis-server  redis-cli  /bin/ 
         安装ruby及ruby的redis模块
    [root@wh-52 src]# yum -y install ruby rubygems
    [root@wh-52 src]# gem   install   redis  --version 3.0.6           (等1分钟)
    Successfully installed redis-3.0.6
    1 gem installed
    Installing ri documentation for redis-3.0.6...
    Installing RDoc documentation for redis-3.0.6...
         创建目录(配置文件涉及到的目录)
    [root@wh-52 src]# cd /home/
    [root@wh-52 home]# mkdir redis_6300  redis_6301
         创建配置文件(注意端口修改)
    [root@wh-52~]# cd /etc
    [root@wh-52 etc]# touch redis_6300.conf  redis_6301.conf
    [root@wh-52 etc]# vi redis_6300.conf
    [root@wh-52 etc]# vi redis_6301.conf
      
        启动端口服务
    [root@wh-52 etc]# /usr/local/src/redis-3.0.6/src/redis-server /etc/redis_6300.conf
    [root@wh-52 etc]# /usr/local/src/redis-3.0.6/src/redis-server /etc/redis_6301.conf
        同样方法,对剩余2台主机做同样的操作。

    3、创建集群
    #选举规则 节点角色由启动顺序决定,先master之后是slave,本文中6300是master,6301是slave
        初始化集群
    [root@wh-53 etc]# /usr/local/src/redis-3.0.6/src/redis-trib.rb create --replicas 1 192.168.1.55:6300 192.168.1.59:6300 192.168.1.87:6300 192.168.1.55:6301 192.168.1.59:6301 192.168.1.87:6301
       
       查看集群状态、列出节点详细信息
    [root@wh-53 etc]# /usr/local/src/redis-3.0.6/src/redis-cli -c -p 6300
    127.0.0.1:6300> CLUSTER info
    127.0.0.1:6300> CLUSTER nodes           


    5、集群测试
        手动关闭一个redis-server端口进程(以192.168.1.87为例)。可以看到(87:6300)down,(59:6301)mater
    [root@wh-54 etc]# netstat -lnp |grep redis
    tcp        0      0 0.0.0.0:16300               0.0.0.0:*                   LISTEN      3026/redis-server *
    tcp        0      0 0.0.0.0:16301               0.0.0.0:*                   LISTEN      3030/redis-server *
    tcp        0      0 0.0.0.0:6300                0.0.0.0:*                   LISTEN      3026/redis-server *
    tcp        0      0 0.0.0.0:6301                0.0.0.0:*                   LISTEN      3030/redis-server *
    tcp        0      0 :::16300                    :::*                        LISTEN      3026/redis-server *
    tcp        0      0 :::16301                    :::*                        LISTEN      3030/redis-server *
    tcp        0      0 :::6300                     :::*                        LISTEN      3026/redis-server *
    tcp        0      0 :::6301                     :::*                        LISTEN      3030/redis-server *
    [root@wh-54 etc]# kill -9 3026
    [root@wh-54 etc]# /usr/local/src/redis-3.0.6/src/redis-cli -c -p 6301
    127.0.0.1:6301> CLUSTER nodes
    60ec356fa9e3a60d50b6b5a6c66520a8f3b63e21 192.168.1.87:6300 master,fail - 1454326034837 1454326028321 3 disconnected
    1368481dd24815935e911c08b5a6c38c4cdc994c 192.168.1.59:6301 master - 0 1454326120686 7 connected 0-5460
    acc3382b04838c7398aa3584514c15b64637c96b 192.168.1.87:6301 myself,slave d7aeefc22768484264a9028bc2c123c73e697895 0 0 6 connected 
    bfdfaf93e9ce73e485cd5f464dd0278b06bc3f2b 192.168.1.55:6300 master - 0 1454326119182 1 connected 10923-16383
    d7aeefc22768484264a9028bc2c123c73e697895 192.168.1.59:6300 master - 0 1454326122695 2 connected 5461-10922
    dfbaf848ce5731249712c2902344127b74b0c9f1 192.168.1.55:6301 slave bfdfaf93e9ce73e485cd5f464dd0278b06bc3f2b 0 1454326121691 4 connected
        恢复该端口进程,可以看到(87:6300)变成slave角色,(59:6301)还是mater
    [root@wh-54 etc]# /usr/local/src/redis-3.0.6/src/redis-server /etc/redis_6300.conf 
    [root@wh-54 etc]# /usr/local/src/redis-3.0.6/src/redis-cli -c -p 6301
    127.0.0.1:6301> CLUSTER NODES
    60ec356fa9e3a60d50b6b5a6c66520a8f3b63e21 192.168.1.87:6300 slave 1368481dd24815935e911c08b5a6c38c4cdc994c 0 1454326652647 7 connected
    1368481dd24815935e911c08b5a6c38c4cdc994c 192.168.1.59:6301 master - 0 1454326653648 7 connected 0-5460
    acc3382b04838c7398aa3584514c15b64637c96b 192.168.1.87:6301 myself,slave d7aeefc22768484264a9028bc2c123c73e697895 0 0 6 connected 
    bfdfaf93e9ce73e485cd5f464dd0278b06bc3f2b 192.168.1.55:6300 master - 0 1454326654649 1 connected 10923-16383
    d7aeefc22768484264a9028bc2c123c73e697895 192.168.1.59:6300 master - 0 1454326650640 2 connected 5461-10922
    dfbaf848ce5731249712c2902344127b74b0c9f1 192.168.1.55:6301 slave bfdfaf93e9ce73e485cd5f464dd0278b06bc3f2b 0 1454326651644 4 connected

    6、经过检验,实验成功完成。后期继续集群理论的学习。
  • 相关阅读:
    学习java之路2
    学习java之路1
    【JavaSE】如何安装jdk以及java的环境配置(超详细) eclipse的安装和简单使用
    微课堂的使用体验
    Error response from daemon: Get https://registry-1.docker.io/v2/: net/http: request canceled while waiting for connection (Client.Timeout exceeded while awaiting headers)
    docker概念
    Leetcode103_Binary-tree-zigzag-level-order-traversal
    二叉树广度优先遍历和深度优先遍历
    centos7 安装docker
    yum update 出错
  • 原文地址:https://www.cnblogs.com/guigujun/p/6178305.html
Copyright © 2020-2023  润新知