Redis集群搭建(从入门到实战)

我们针对以上介绍的三种服务器集群模式在centos7.4.1708版本的操作系统上进行搭建,操作系统安装必须安装带GUI的服务器,对redis使用离线安装方式,不使用yum源安装。使用三台服务器进行不同的集群进行搭建。
  3.1 服务器列表
    服务器名称 服务器地址 服务器端口
    master 192.168.145.180 6380
    slave1 192.168.145.181 6381
    slave2 192.168.145.182 6382
  3.2 主从搭建
    3.2.1 master节点安装
      1)使用Winscp连接192.168.145.180的22端口,输入用户名:root,密码:****
      2)上传redis-3.0.7-linux.tar.gz 到home目录
      3)上传lib目录到home目录
      4)使用XshellPortable连接192.168.145.180的22端口,输入用户名:root,密码:****
      5)cd /home/lib
      6)安装rpm依赖包
      rpm -ivh kernel-headers-3.10.0-693.el7.x86_64.rpm
      rpm -ivh glibc-headers-2.17-196.el7.x86_64.rpm
      rpm -ivh glibc-devel-2.17-196.el7.x86_64.rpm
      rpm -ivh libmpc-1.0.1-3.el7.x86_64.rpm
      rpm -ivh cpp-4.8.5-16.el7.x86_64.rpm
      rpm -ivh gcc-4.8.5-16.el7.x86_64.rpm
      rpm -ivh libstdc+±devel-4.8.5-16.el7.x86_64.rpm
      rpm -ivh gcc-c+±4.8.5-16.el7.x86_64.rpm
    注:如果是centos7.6,还需要glibc和glibc-common包,由于这两个包相互依赖,所以使用rpm -Uvh --force --nodeps *.rpm进行所有依赖包的安装。
      7)systemctl stop firewalld.service
      8)systemctl disable firewalld.service
      9)修改/etc/selinux/config 文件,将SELINUX=enforcing改为SELINUX=disabled重启机器。
    注:这个必须先关闭如果项目要求开启,等部署测试完成,再根据端口进行防火墙开启和在防火墙上过滤。
      10)cd /data
      11)tar -zxvf redis-3.0.7-linux.tar.gz
      12)cd redis-3.0.7-linux
      13)make
      14)make install
      15)vi redis.conf
      16)找到daemonize属性将no改为yes
      17)更改完成之后按下键盘Esc键退出编辑,之后输入:wq回车退出并保存
      18)redis-server redis.conf
      19)使用RedisDesktopManager工具连接测试,安装完成。
    3.2.2 slave节点安装
      使用和master方式一样进行安装。
    3.2.3 主从配置
      1)master节点,vi redis.conf 修改如下内容:
      bind 0.0.0.0 #任意IP都可以连接
      port 6379 #端口号
      pidfile /home/data/redis/redis_master.pid #进程守护文件,就是存放该进程号相关信息的地方
      dir /home/data/redis/ #db等相关目录位置
      appendonly yes #开启日志形式
      2)slave1节点,vi redis.conf 修改如下内容:
      bind 0.0.0.0 #任意ip都可以连接
      port 6379 #端口号
      pidfile /home/data/redis/redis_slave.pid #进程守护文件,就是存放该进程号相关信息的地方
      dir /home/data/redis/ #db等相关目录位置
      slaveof 192.168.145.180 6379 #主信息
      appendonly yes #开启日志形式
      3)slave2节点,vi redis.conf 修改如下内容:
      bind 0.0.0.0 #任意ip都可以连接
      port 6379 #端口号
      pidfile /home/data/redis/redis_slave.pid #进程守护文件,就是存放该进程号相关信息的地方
      dir /home/data/redis/ #db等相关目录位置
      slaveof 192.168.145.180 6379 #主信息
      appendonly yes #开启日志形式
    3.2.4 启动主从集群
      使用命令:
      redis-cli -p 6379 shutdown
      停止redis
      使用命令:
      redis-server redis.conf
      将redis再次启动
    3.2.4 主从集群测试
      1)master节点测试
      在master节点上输入如下命令:
      redis-cli -p 6379 --raw
      set name ‘123’
      get name
      运行结果如下:
Redis集群搭建(从入门到实战)_第1张图片
      输入如下命令:
      info
      运行结果如下:
Redis集群搭建(从入门到实战)_第2张图片
      当出现下图所示,表示主从集群搭建成功:
Redis集群搭建(从入门到实战)_第3张图片
      2)slave1节点测试
Redis集群搭建(从入门到实战)_第4张图片
      slave1节点可以直接获取到数据,不能进行数据写入操作。
      3)slave2节点测试
Redis集群搭建(从入门到实战)_第5张图片
      slave2节点可以直接获取到数据,不能进行数据写入操作。
  3.3 哨兵模式搭建
    先按照搭建主从集群,哨兵模式是建立在主从集群的基础之上的。
    3.3.1 master节点安装
      master节点修改sentinel.conf配置文件,修改内容如下:
      daemonize yes #后台运行
      sentinel monitor mymaster 192.168.145.180 6379 2 #设置主节点IP地址、端口、入选哨兵权重
    注:入选哨兵权重,如果为2,也就是说最少有2个哨兵认为此主服务down了,才进行重新选举。
      sentinel down-after-milliseconds mymaster 3000 #sentinel心跳检测主3秒内无响应,视为挂掉,开始切换其他从为主
      sentinel failover-timeout mymaster 30000 #主从切换超时时间
    3.3.2 slave节点安装
      将master节点刚刚修改的sentinel.conf拷贝到slave1和slave2节点。
    3.3.3 启动哨兵集群
      1)先使用如下命令在每台redis服务器上启动主从集群:
      redis-server redis.conf
      2)在使用如下命令在每台redis服务器上启动哨兵集群:
      redis-sentinel sentinel.conf
    3.3.4 哨兵集群测试
      1)进入180节点哨兵客户端,使用如下命令查看集群信息:
      redis-cli -p 26379
      info
      看到如下图:
Redis集群搭建(从入门到实战)_第6张图片
      2)进入180节点主从集群客户端,使用如下命令查看集群信息:
      redis-cli -p 6379
      info
      看到如下图:
Redis集群搭建(从入门到实战)_第7张图片
      3)把180节点停止,命令如下:
      redis-cli -p 6379 shutdown
      4) 进入180节点哨兵客户端,查看集群状态命令如下:
      redis-cli -p 26379
      info
      看到如下图:
Redis集群搭建(从入门到实战)_第8张图片
      master角色已经变更到181服务器上。
      5)再次启动180节点的redis服务,进入主从集群查看当前节点角色,使用命令如下:
      redis-server redis.conf
      redis-cli -p 6379
      info
Redis集群搭建(从入门到实战)_第9张图片
      看到虽然180节点虽然服务恢复,自动变为从节点,主节点依然还是181。
      至此哨兵模式配置已经全部完成。

你可能感兴趣的:(中间件,redis,centos,数据库,分布式,linux)