快乐的老鼠 发表于 2018-11-2 13:14:07

生产环境实践:redis高可用架设

# ip a  
1: lo: mtu 65536 qdisc noqueue state UNKNOWN
  
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
  
    inet 127.0.0.1/8 scope host lo
  
    inet6 ::1/128 scope host
  
       valid_lft forever preferred_lft forever
  
2: eth0: mtu 1500 qdisc pfifo_fast state UP qlen 1000
  
    link/ether 00:0c:29:84:40:c4 brd ff:ff:ff:ff:ff:ff
  
    inet 192.168.16.29/24 brd 192.168.16.255 scope global eth0
  
    inet 192.168.16.3/32 scope global eth0
  
    inet6 fe80::20c:29ff:fe84:40c4/64 scope link
  
       valid_lft forever preferred_lft forever
  

  

  
关闭redis主服务器(192.168.16.29)
  
# /etc/init.d/redisd stop
  
redis Stop success!
  
# ip a
  
1: lo: mtu 65536 qdisc noqueue state UNKNOWN
  
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
  
    inet 127.0.0.1/8 scope host lo
  
    inet6 ::1/128 scope host
  
       valid_lft forever preferred_lft forever
  
2: eth0: mtu 1500 qdisc pfifo_fast state UP qlen 1000
  
    link/ether 00:0c:29:84:40:c4 brd ff:ff:ff:ff:ff:ff
  
    inet 192.168.16.29/24 brd 192.168.16.255 scope global eth0
  
    inet6 fe80::20c:29ff:fe84:40c4/64 scope link
  
       valid_lft forever preferred_lft forever
  
#
  

  
keepalived检测到redis异常,把主身份切换到从(192.168.16.2)
  

  
Redis Master 192.168.16.29日志
  
# tail -f /usr/local/logs/keepalived-redis-state.log
  

  
2016年 10月 19日 星期三 14:40:39 CST
  

  
2016年 10月 19日 星期三 14:40:39 CST
  
Being slave....
  
Run SLAVEOF cmd...
  
Could not connect to Redis at 127.0.0.1:6379: Connection refused
  

  
Redis Slave 192.168.16.2日志
  
# tail -f /usr/local/logs/keepalived-redis-state.log
  

  
2016年 10月 19日 星期三 14:43:24 CST
  
Being slave....
  
backup Run SLAVEOF 192.168.16.29 cmd...
  
OK Already connected to specified master
  

  
2016年 10月 19日 星期三 14:43:28 CST
  
Being master....
  
Run SLAVEOF NO ONE cmd ...
  
OK
  

  
可以看出Slave已经接管了Master角色
  

  

  
在Slave 192.168.16.2输入ip a查看虚拟IP
  
# ip a
  
1: lo: mtu 65536 qdisc noqueue state UNKNOWN
  
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
  
    inet 127.0.0.1/8 scope host lo
  
    inet6 ::1/128 scope host
  
       valid_lft forever preferred_lft forever
  
2: eth1: mtu 1500 qdisc pfifo_fast state UP qlen 1000
  
    link/ether 00:0c:29:aa:43:58 brd ff:ff:ff:ff:ff:ff
  
    inet 192.168.16.2/24 brd 192.168.16.255 scope global eth1
  
    inet 192.168.16.3/32 scope global eth1
  
    inet6 fe80::20c:29ff:feaa:4358/64 scope link
  
       valid_lft forever preferred_lft forever
  

  

  
在Master 192.168.16.29启动redis,16.29已经恢复了Master的角色
  

  
# /etc/init.d/redisd start
  
redis Start-up success!
  
# ip a
  
1: lo: mtu 65536 qdisc noqueue state UNKNOWN
  
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
  
    inet 127.0.0.1/8 scope host lo
  
    inet6 ::1/128 scope host
  
       valid_lft forever preferred_lft forever
  
2: eth0: mtu 1500 qdisc pfifo_fast state UP qlen 1000
  
    link/ether 00:0c:29:84:40:c4 brd ff:ff:ff:ff:ff:ff
  
    inet 192.168.16.29/24 brd 192.168.16.255 scope global eth0
  
    inet 192.168.16.3/32 scope global eth0
  
    inet6 fe80::20c:29ff:fe84:40c4/64 scope link
  
       valid_lft forever preferred_lft forever


页: [1]
查看完整版本: 生产环境实践:redis高可用架设