ITPub博客

首页 > 数据库 > MySQL > 【Mysql】MySQL 主主复制 + LVS + Keepalived 实现 MySQL 高可用性

【Mysql】MySQL 主主复制 + LVS + Keepalived 实现 MySQL 高可用性

原创 MySQL 作者:小亮520cl 时间:2016-06-22 11:00:23 0 删除 编辑
首先置顶参考文档

http://www.keepalived.org/pdf/sery-lvs-cluster.pdf---官方文档 

http://blog.jobbole.com/100390/
http://lanlian.blog.51cto.com/6790106/1303195


1 机器规划

  1. 192.168.6.119 keepalive+ipvsadm(Lvs)
    192.168.6.121 keepalive+ipvsadm(Lvs)

    192.168.6.66 VIP
    192.168.6.114 真实机(测试httpd负载均衡),lvs客户端
    192.168.6.115 真实机(测试httpd负载均衡),lvs客户端





2.安装keepalive+ipvsadm工具

  1. 参考本文档http://blog.itpub.net/29096438/viewspace-2121347/

3.配置lvs客户端(真实机器) 脚本

  1. 114.115上都需要
  2. [root@node1 ~]# more /usr/local/bin/lvs_real
    #!/bin/bash
    #description : start realserver
    VIP=192.168.6.66
    /etc/rc.d/init.d/functions
    case "$1" in
    start)
    echo " start LVS of REALServer"
    /sbin/ifconfig lo:0 $VIP broadcast $VIP netmask 255.255.255.255 up
    echo "1" >/proc/sys/net/ipv4/conf/lo/arp_ignore
    echo "2" >/proc/sys/net/ipv4/conf/lo/arp_announce
    echo "1" >/proc/sys/net/ipv4/conf/all/arp_ignore
    echo "2" >/proc/sys/net/ipv4/conf/all/arp_announce
    ;;
    stop) 
    /sbin/ifconfig lo:0 down
    echo "close LVS Directorserver"
    echo "0" >/proc/sys/net/ipv4/conf/lo/arp_ignore
    echo "0" >/proc/sys/net/ipv4/conf/lo/arp_announce
    echo "0" >/proc/sys/net/ipv4/conf/all/arp_ignore
    echo "0" >/proc/sys/net/ipv4/conf/all/arp_announce
    ;;
    *)
    echo "Usage: $0 {start|stop}"
    exit 1
    esac 

  3. 启动客户端脚本
  4. [root@node1 ~]# sh /usr/local/bin/lvs_real start

4 服务端keepalive配置文件如下

  1. 119 121机器(主备修改关键点即可)
  2. [root@localhost keepalived]# more keepalived.conf
    #writed by sery , contact sery@163.com
    #guration File for keepalived
    #global define
    global_defs {
     router_id LVS_CNC_1
    } 
    vrrp_sync_group VGM {
     group {
     VI_CACHE
     }
    }
    ################################################################
    # vvrp_instance define #
    ################################################################
    vrrp_instance VI_CACHE {
     state MASTER
     interface eth0
     lvs_sync_daemon_inteface eth0
     virtual_router_id 51
     priority 180
     advert_int 5
     authentication {
     auth_type PASS
     auth_pass 1111
     }
     virtual_ipaddress {
     192.168.6.66
     }
    }
    ##############################################################
    # virtual machine setting #
    ##############################################################
    # setting port 80 forward

  3. virtual_server 192.168.6.66 80 {
     delay_loop 6
     lb_algo wlc
     lb_kind DR
    # persistence_timeout 20

     protocol TCP
     real_server 192.168.6.114 80 {
     weight 100
     TCP_CHECK {
     connect_timeout 3
     nb_get_retry 3
     delay_before_retry 3
     connect_port 80
     }
     }
     real_server 192.168.6.115 80 {
     weight 100
     TCP_CHECK {
     connect_timeout 3
     nb_get_retry 3
     delay_before_retry 3
     connect_port 80
     }
     }
    }

  4. 启动keepalive
  5. [root@localhost ~]# /etc/init.d/keepalived start
  6. 查看ipvsadm情况
  7. [root@localhost keepalived]# ipvsadm -ln
    IP Virtual Server version 1.2.1 (size=4096)
    Prot LocalAddress:Port Scheduler Flags
      -> RemoteAddress:Port           Forward Weight ActiveConn InActConn
    TCP  192.168.6.66:80 wlc
      -> 192.168.6.115:80             Route   100    0          0         
      -> 192.168.6.114:80             Route   100    0          0 



5 测试web负载
  1. 浏览器访问


  2. 分发成功,可以写个脚本去测试

6 拓展

也可用做keepalive+lvs+mysql的负载均衡啊







参考文档
http://blog.csdn.net/yuchou123456789/article/details/7287890
http://www.uml.org.cn/zjjs/201306144.asp
http://blog.csdn.net/m582445672/article/details/7670015     --分发web
http://blog.itpub.net/29654823/viewspace-1844282/           ---分发mysql


mark一下

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/29096438/viewspace-2120663/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论
毕业以后专业任职数据库工程师职位,itpub一直作为自己的笔记记录的地方,blog写的不详细,草书笔记,仅供参考!

注册时间:2013-09-12

  • 博文量
    529
  • 访问量
    1126924