云方案丨数据库高可用、高并发运维解决方案在医疗行业的运用

前言

“全面上云的拐点到了!”7月25日,阿里云智能总裁张建锋在2019阿里云上海峰会上做出了明确回答。张建锋表示,今年是云产业一个非常重要的拐点。云上服务与数据库服务成为各类云服务厂商争夺的市场,数据库“高可用“俨然已成为云原生数据库产品的标配,但还未上云的存量数据库该何去何从?

阿里云智能总裁张建峰在2019阿里云上海峰会

方案背景

互联网兴起,银行、医疗、政府行业也步入了智能时代。线上预约挂号、结算、出单为患者带来了极大的便利,减少了排队时间,提升了医院工作效率。通过智慧医疗体系,提供就医便利的同时,也可以帮助医院更好的监控内部的信息和患者信息,让患者通过互联网络技术,获得更好的就医体验。

当然,完成医院便利的同时,也带来了一系列后台系统的维稳的高要求。每一次故障,都会对医院造成极大影响,处理不及时就会升级成严重社会事件。所以智慧医疗体系对系统稳定性有极高的要求。

尤其对于数据库系统来说,要做到同城双机房高可用容灾。为了更好的让医院系统稳定运行,云掣科技数据库团队打造了数据库高可用集群解决方案,在云上数据库与自建数据库复杂情境下为智慧医疗保驾护航。

方案内容

基于医疗本身业务实际请求情况,云掣科技数据库团队选择成熟稳健的“MHA+ProxySQL+Keepalived”高可用架构来实现,提高效率的同时降低运维的成本。

基础环境:同城双机房使用千兆光纤物理专线连接,确保连接质量和速度。通过专线组成一个大的局域网,既降低了环境复杂度,又能避免公网传输的安全问题。

ProxySQL:一个高性能的MySQL代理软件。拥有诸多功能,连接池、主备自动识别、读写分离、故障转移、查询改写和分片等。此架构使用ProxySQL实现请求读写分离,提高数据库读性能。

Keepalived:一款简单强大的高可用组件。为ProxySQL提供高可用支持,Master-Backup架构,在主节点故障时,请求流量切到ProxySQL备节点响应,可做到秒级切换。应用配合实现闪断重连机制,可实现故障无感转移。

MHA:一套成熟的MySQL数据库高可用管理软件。采用Manager-Node架构,实现数据库故障自动转移、智能选主、日志自动回补功能。故障切换可在30秒内完成。

方案部署拓扑图

主机房A部署两个ProxySQL+Keepalived节点,当ProxySQL主节点发生故障,优先选择同机房ProxySQL备节点提升为主节点,确保服务器级故障转移限制在同机房内。

ProxySQL后端挂载3个数据库实例,处理数据读写请求。此3个主备实例使用MHA进行管理,当主实例故障时,选择合适的Slave提升为新主实例提供读写能力,并重建复制关系。ProxySQL会自动识别新的主实例,并进行流量分发。

Backup实例使用级联复制,隔离于业务系统之外,提供日常报表查询及数据库备份服务。

当主机房A瘫痪,所有功能模块会全部转移到容灾机房B,继续对外提供服务。

Tips

使用MHA建议关闭MySQL自动清理relay log功能,使用MHA推荐的清理方法。

参考:https://github.com/yoshinorim/mha4mysql-manager/wiki/Requirements#preserve-relay-logs-and-purge-regularly

方案效果

本方案在实践中稳定运行超一年时间,期间出现过服务器故障,1分钟内完成故障转移。保障了业务的稳定运行,并且前端用户无感知,提升了整体的使用感受。

编后:

数据库在整个系统中属于比较脆弱的一环,虽然可以做到高可用,但使用不当、性能问题同样会造成严重的后果,需要有专业的DBA持续运维。云掣科技完善的运维方案,包括数据库运维、分布式改造、云上Oracle RAC等,协助客户提高数据库稳定性。

图为云掣科技数据库服务介绍

云掣数据库统一管控平台EasyDB,并配有专业的数据库运维团队方案,可以更好的对数据库进行监控,降低运维成本,提高效率,保障业务稳定进行。

图为数据库监控平台使用界面

你可能感兴趣的:(云方案丨数据库高可用、高并发运维解决方案在医疗行业的运用)