MHA的补充和定制规划

作者: admin 分类: 公众号存档            2 次浏览 发布时间: 2017-11-02 23:49

公众号:杨建荣的学习笔记 · 作者:r14笔记第30天 · 发布:2017-11-02 23:49:05 · 原文链接

之前画过一版MHA的故障图,最近和同事做了系统详细的测试,发现了一些问题,有些是预料之外的场景,有些是目前MHA没有更好的保证和实现,斟酌再三做了取舍。

因为有些场景是组合出现的,比如网络波动,ssh不可达,但是已有的应用连接正常,那么这种情况就需要一些更全面的校验机制。所以MHA的测试如果简单那还是比较简单清晰的,如果想深入测试就需要考虑很多细节,保证技术完全可控。

对于MHA的部分,因为要接入的是大量的环境,如何在大批量的环境中能够管理自如,就需要对已有的MHA做一些功能定制,自成一个体系。这种情况很可能出现,本来运行一套环境是OK的,但是再加入几套环境,原来的逻辑和方式就得全部改造,改造的同时还需要保证已有的逻辑不会出现意外。这个是尤其需要注意的。

具体该怎么做呢,我们做了一些基本的规划,现在正在按照这个方向来逐步完善。
    自动化部署
        根据配置文件生成节点信任关系
        根据配置文件生成部署脚本
        根据切换情况更新部署脚本
        根据切换情况更新dblist
    主从切换
        switchover脚本化
    MHA管理
        查看主从延迟
        查看节点通信情况
        MHA集群检测
        启动MHA的检查脚本sanity_check.sh
        启动MHA
        停止MHA
    元数据管理
        配置dblist
        主从复制关系
        同步推送信息到mis里面的元数据库
    MHA_Report
        failover_report
        网络延迟报告
    MHA参数定制
        定制超时时间,默认为4秒,改为10秒
        修改ssh端口为定制端口,默认为22
        修改日志的格式,根据需求来定制内容
        后续考虑secondary_check的补充场景
    调度任务
        日志截断
        周期行发送状态报告
    自动化测试
        测试场景和配置
        自动化脚本
    故障自愈

         在已有的基础上做一些更动态的处理。
  

个人微信公众号,欢迎扫码关注。

admin

杨建荣,《Oracle DBA工作笔记》《MySQL DBA工作笔记》作者,dbaplus社群发起人之一,腾讯云TVP,现任竞技世界系统部经理,拥有十多年数据库开发和运维经验,目前专注于开源技术、运维自动化和性能调优

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注