proxysql 系列 ~ 高可用架构

摘要:
五优势1MHA不再需要VIP,避免脑裂风险2proxysql动态维护mysql_server表六整体过程1主库down机,触发MHA切换2MHA切换完成,新主会设置成read_only=03proxysql监控到read_only=0,动态更改mysql_servers4集群继续提供服务5修复旧主1以只读方式启动旧主2根据MHA日志修复旧主6proxysql可以动态调整权重,减少主库读比例六注意点1当MHA切换后,旧主启动前一定要设置read_only=1,否则会导致旧主也被proxysql认为主,加入写组中。2当MHA切换后,最好还是调整下权重比例,不会动态进行维护七补充1cetus和proxysql对比,cetus对于MHA的利用更有优势

一 整体架构
二 proxysql层
proxysql+keepalived对外提供vip
1 这里有一点要注意,虽然keepalived有脑裂危险,但是对于向proxysql这种无状态中间件确实没什么影响

2 需要维护至少两份配置文件,保证每个节点的配置文件都唯一
三 mysql层
mysql+mha做故障转移
四 proxysql故障转移原理
0 定义好mysql集群写服务器组合读服务器组的对应关系
1 proxysql监控读mysql的read_only值
2 如果发现从库的 read_only 变为0、主库变为1,则认为角色互换了,自动改写 mysql_servers 表里面 hostgroup 关系,达到自动 Failover 效果。
五 优势
1 MHA不再需要VIP,避免脑裂风险
2 proxysql动态维护mysql_server表
六 整体过程
1 主库down机,触发MHA切换
2 MHA切换完成,新主会设置成read_only=0
3 proxysql监控到read_only=0,动态更改mysql_servers(更改原主和新主的hostgroup_id)
4 集群继续提供服务
5 修复旧主
1 以只读方式启动旧主
2 根据MHA日志修复旧主(如果是GTID复制,直接change即可)
6 proxysql可以动态调整权重,减少主库读比例
六 注意点
1 当MHA切换后,旧主启动前一定要设置read_only=1,否则会导致旧主也被proxysql认为主,加入写组中。
2 当MHA切换后,最好还是调整下权重比例,不会动态进行维护
七 补充
1 cetus和proxysql对比,cetus对于MHA的利用更有优势

免责声明:文章转载自《proxysql 系列 ~ 高可用架构》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇C#使用SmtpClient发送邮件Linux下高并发socket最大连接数各种限制的调优下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

架构设计-异地多活

参考: https://blog.csdn.net/suifeng629/article/details/89326048?utm_medium=distribute.pc_relevant_right.none-task-blog-BlogCommendFromMachineLearnPai2-5.nonecase&depth_1-utm_sou...

高端存储发展趋势

1. 高端存储的技术发展趋势 松耦合 高端存储刚出现的时候,采用的是紧耦合的多控体系架构。紧耦合架构的特点就是所有的资源都是物理集中在一起的,这些资源通常包括前端接口,后端接口和Cache,一般都插在一个大机箱里。随着技术的发展,特别用户对总体拥有成本(TCO)和可扩展性的追求,现在的高端存储厂商大部分采用了松耦合的多控体系架构。它们都有一个特点,每...

传统的SOA是否已经过时

  今天准备再聊下在当前微服务,中台和云原生技术下,传统的SOA是否已经过时这个话题。现在出去跟别人交流,谈到SOA的时候有些客户直接的反馈就是过时的技术怎么还在用?或者一说到SOA就认为过时了没必要采用,因此今天还是有必要就SOA是否过时进一步说明。 SOA的基本概念 我们可以来看下SOA本身的定义,即: SOA是一种架构方法,将传统的单片式应用打破...

搭建MySQL MHA高可用

本文内容参考:http://www.ttlsa.com/mysql/step-one-by-one-deploy-mysql-mha-cluster/ MySQL MHA 高可用集群 环境: Linux: centos 6.6 MySQL: 5.5.49 MHA:mha4mysql-manager-0.56-0.el6.noarch.rpm(管理端) 以及...

创建以Microsoft .NET Remoting为基础的分布式应用架构

在论坛里经常看见有人问:使用.NET Remoting如何从服务器主动发出事件通知客户端?的确,初接触.NET Remoting的人多半会有这样的疑问,因为大部分的文章和书籍在介绍.NET Remoting时都只介绍了通道,对象,激活和生存周期等等概念,在谈到如何进行远程通信的时候,都只告诉读者如何从客户端激活一个服务器对象然后传递参数调用其方法。所以很多...

何谓系统架构师(转)

首先,何谓系统架构师? IBM工程师的说明是:    架构师的主要责任是提供开发人员和项目经理之间的共用沟通媒体。他们负责让业务规则及需求与工程实践及限制相适应,以确保成功 中文Wiki上的说明是:    系统架构师负责设计系统整体架构,从需求到设计的每个细节都要考虑到,把握整个项目,使设计的项目尽量效率高,开发容易,维护方便,升级简单 这两个解释,加起来...