mysql HA 负载均衡

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了mysql HA 负载均衡相关的知识,希望对你有一定的参考价值。

DRBD+heartbeat + LVS + keepalived+ mysql



硬件:master *2 :安装drbd, heartbeat,mysql

          slave*3 : 安装mysql

          keep alived主机*2: 安装LVS, keepalived(real server就是slave)

          应用主机*3


IP: 两台master 有一个HA VIP1

     两台keepalived主机有一个lvs VIP2


写操作:

应用主机(AS)->VIP1->dev/drbd(两台master的drbd会实时同步)


mysql复制操作:

0) start slave

1) 3台slave会起一个I/O线程向vip1发送请求,请求master发送binlog;

2)master会起一个I/O线程发送binlog给三台slave;

3)1步骤中的I/O线程会把改变的语句保存到中继log -relay log;

4)slave会再开一个I/O读取进程,读取relay log。


读操作:

三台AS->VIP2->根据lVS算法(RR或WRR)->某一台slave

也就是读写是分离master与slave的


一些关键的配置:

drbd: /etc/drbd.conf, 需要配置drbd device名,例如/dev/drbd0, node1和node2的本地磁盘名,

            node1和node2的IP: 7788


keepalived:配置vrrp, virtual serverIP配置DR模式,real servers添加slave的IP, 还有一个集成了监控slave I/O健康的脚本 check.slave.pl


LVS: ipvsadm -L 可以看到多个real server的负载状态, 路由算法RR用于各个real server性能差不多的情况,你一个我一个,WRR加权算法,性能强的做的多。






以上是关于mysql HA 负载均衡的主要内容,如果未能解决你的问题,请参考以下文章

HA - 负载均衡实现方式及算法

二rancher-ha-四层负载均衡Helm HA部署

keepalived+LVS/DR HA负载均衡部署

Nginx+Keepalived 实现反代 负载均衡 高可用(HA)配置

nginx负载均衡技术的优缺点

Nginx+Keepalived(双机热备)搭建高可用负载均衡环境(HA)