MySQL实例组与DNS和MHA/ZABBIX架构示意图:
DNS搭建:http://www.cnblogs.com/jiangxu67/p/4801230.html
MHA分析:http://www.cnblogs.com/jiangxu67/p/4487248.html
总体思想是前端应用和数据库通过域名解析,域名通过Bind服务的数据库保存,MHA和ZABBIX分别对实例群集中的主库和从库进行检测和管理。
MHA:
只对主库进行检测,当有mha_manager管理的主库出现异常时,按照自身配置文件的从库数据进行检查和比对,选择新主库上线,其他从库与新主库建立复制关系。在新主库上线环节可以增加perl代码,实现将DNS数据里面的异常主库下线和新主库上线的动作。
ZABBIX:
对从库的状态进行实时监控,监控粒度基于ZABBIX的配置。在ZABBIX的Action中配置一个Trigger条件的触发动作,将例如实例宕、从库I/O和SQL线程中断等问题作为条件(这里最好将主库和从库分为两个hostgroup,触发条件限制hostgroup=db_slave,防止ZABBIX修改主库域名,主库域名只由MHA负责)。
触发条件调用外部脚本,对传出的参数进行处理,Action外部接口传出的三个参数依次为:
1、Action operations里面的收件人;
2、Action Default Subject;
3、Action Default Message;
脚本只要对自定义的Subject或者Message中的{HOSTNAME1}、{ITEM.NAME1}、{ITEM.VALUE}进行判断就可以实现区分问题和通知DNS的功能。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?