金融行业MySQL高可用实践

如果无法正常显示,请先停止浏览器的去广告插件。
分享至:
1. 金融行业 MySQL 高可用实 践 演讲人:爱可生 明溪源 上海爱可生信息技术股份有限公司
2. 1 金融行业 MySQL 高可用方案选型 2 爱可生金融级 MySQL 高可用方案 目 录 CONTENTS 3 某大行核心系统 MySQL 应用实践 2
3. 01 金融行 目 录 MySQL 高可用方案选型 CONTENTS 3
4. 金融行业 MySQL 高可用需求衡量 • 数据一致性( RPO )?业务连续性 (RTO) ? • 同步力度?业务性能? • 业务规模?可维护性? 4
5. 金融行业信息系统平台灾备等级要求 容灾等级 RTO RPO 年中断时间 3级 ≤24 小时 ≤24 小时 ≤4 天 4级 ≤4 小时 ≤1 小时 ≤10 小时 5级 ≤30 分钟 ≈0 ≤1 小时 6级 ≤2 分钟 0 ≤5 分钟 数据备份、数据处理、网络、运维技术要求(部分) • 至少有一个数据副本在同城或异地; • 支持完成切换准备后,自动或集中切换; • 至少有一个数据副本在异地; • 异地处于就绪或运行状态,支持自动或集中切换; • 同城、异地至少各有一个数据副本;其中至少一个应同步复制; • 同城、异地,至少一个处于运行状态, 可实时自动或集中切换; • 同城、异地至少各有一个数据副本;其中至少一个应同步复制; • 同城、异地均处于运行状态, 可实时自动或集中无缝切换; • 数据来源 - 《中华人民共和国金融行业标准 JR/T 0168—2018 》 • 等级依据:影响的广度和深度,影响面分为:内部信息辅助影响、内部生产运营影响、法人及其它机构影响、国家金融秩序稳定影响 5
6. 金融行业 MySQL 高可用方案选型 容灾等级 可用区 运行状态 MySQL 高可用选型建议 3级 ≤1 同城 或 1 异地 主备 + 备份 半同步 / 异步复制 + 备份 4级 ≤1 异地 主备 + 备份 异步复制 + 备份 5级 ≤1 同城 + 1 异地 同城双活 中间件拆分 + 半同步复制 + 全局一致性备份 6级 ≤1 同城 +1 异地 同城 + 异地多活 \ 6
7. MySQL 为何会“翻车”? 运行环境 支持数据库运行的环境集合,包括硬件环境、系统环境 35% 性能问题 并发与锁的冲突,查询与索引的优化 35% 复制问题 主从一致性、切换策略、复制管理 异常操作 配置操作失误 0% 5% 20% 10% 10% 15% 20% 25% 30%  数据来源:《高性能 MySQL 》(第三版), Percona 公司;  不正确的使用复制可能带来负面影响; 35% 40% 7
8. MySQL 高可用架构 / 工具选型  MySQL Replication – MHA • 适用场景: • •  历史遗留实例( MySQL 5.5 )  基于文件位置的主从复制 解决的问题:  从库一致性:一主多从环境,从库之间的日志回放进度对比  数据补偿: GTID 模式下,具备主动日志补偿能力(当时唯一的开源方案) 问题及风险: ※ 从库调度:半同步复制下的从库会影响可用性 ※ 业务访问: SIP 实现需要自行编写脚本 ※ 数据补偿( MySQL 5.7.2 以后): 5.7.2 引入 logic_clock 并行回访, binlog 格式发生变化 ※ 其它风险:管理节点高可用、 relay_log 自动清理、 SSH 免密登录、切换策略、切换判断、后期维护支持 8
9. MySQL 高可用架构 / 工具选型  MySQL Group Replication – Innodb Cluster • 适用场景: • •  新规划的实例( MySQL 8.0+ ,相比 5.7+ 版本增加多个重要功能)  低延迟、少抖动、不易隔离的网络环境 解决的问题:  切换:基于组复制的自动选主  业务访问:轻量级中间件 MySQL Router 统一访问  数据补偿:灵活的一致性策略(写多数派 & 读等待)  探活:允许合入大事务中、超时时间有额外等待 风险与难点: ※ 部署配置(多数派选择、内网外网配置、网络超时时间、事务一致性模式、实例权重、成员离开行为) ※ 网络隔离(同城切换),需要人工维护处理 9
10. 同城切换场景 MySQL 组复制风险 • 方案 1 : 主位于多数派园区 • 收益:  主实例故障自动切换  备园区故障对集群无影响 风险: ※ 主园区 备园区 • 收益:  方案 2 : • 主存在于少数派园区 主园区 主园区故障,集群无法选主,需要人工介入处理 主园区故障,集群仍可选主,配合业务集中切换 风险: ※ 无法做同园区切换(可评估改为 5 节点) ※ 备园区故障,主园区受影响,需要人工介入处理(可评估自愈处理) 备园区 10
11. 02 爱可生金融级 MySQL 高可用方案 11
12. 高可用产品逻辑架构  管 理 区 Ucore 集群配置中心 高可用决策 Ustats 信息收集 业 务 区 UGuard_MGR( 主 ) 决策执行 sync binlog wait ack commit ; WEB UI  优化:切换策略自定义; RPO/RTO/ 跨园区  补充: Ucore UGuard_Agent write binlog UMC Ucore 核心:异步 / 增强半同步 / 组复制 ; Oracle 提供源码保障 UGuard_MGR( 备 ) UGuard_Agent Ustats 数据库复制 sync relaylog trans_ receipt  完整性:组件本身高可用、从库调度  可维护性:动作历史、延迟历史、日志记录  状态判断:多维度判断,避免误判  运维体系兼容性:提供脚本执行接口 apply binlog commit 12
13. 平台整体特性 云树 ®DMP 数据库集群管理平台 快速部署 安 装 部 署 实 例 接 管 流程优化 资 源 隔 离 配 置 管 理 监控运维 参 数 下 发 备 份 演 练 MySQL 数据库 高可用架构 - (A-S 数据主备 ) MySQL 主库 RTO/RPO/ 本地 自动切换 MySQL 从库 可 视 大 屏 自 动 巡 检 安全防护 监 控 告 警 操 作 审 计 跨数据库 读写分离 - (A-Q 交易 - 查询 ) 写 kafka 夜间批量 导入 数 据 库 权 限 Oracle DB2 平 台 权 限 高 可 用 读 写 分 离 分 库 分 表 数据库集群 分布式分库分表架构 - (A-A 同城异地双写 ) 读 主 异步复制 / 半同步复制 架构支撑 MySQL 拆分 从 MySQL 分片 1 主 从 MySQL 分片 2 … SQL 变化和分 发 主 从 MySQL 分片 N 13
14. 03 某大型国有银行 MySQL 高可用实践 14
15. 某大行 - MySQL 发展历程 数据库管理员 云树 ®DMP API 云树 ®DMP 现有运维 管理体系 监控 告警 MySQL 5.6 异步复制 从 MySQL 5.7 半同步复制 . . . . . . replication 主 部分 业务系统 . . .  . . . … 布式中间件;   InfoSphere CDC 同城 A 数据中心 架构选型: MySQL 半同步复制、开源分 运维支撑:实例部署、监控、配置、巡 检、备份恢复、告警; kafka 从 核心目的:支撑行内灾备 5 级业务系统 ; 高可用行为 replication 主 统一 巡检 K8S 容器编 排 DBLE 分布式中间件集群  规模扩展:容器化, 2000+ 实例下的物 理资源; 同城 B 数据中心 15
16. 灾备 3 级部署 – 异地异步复制( Active- 城市 B ( MySQL 异步复制) 城市 ) A (承载业务) Slave 管理集群 管理集群 故障域 A1/A2 三层网络 主实例集群 ... 故障域 B1/B2/B3  快速切换( RPO 、 RTO 从实例集群 ... MySQL 异步 复制 故障域 A3 由半小时提升至分钟级) 故障域 B4 ;  城市 B (存储复制) 城市 A (承载业务) 灵活切换: 实现异地灾备 性能提升:本地 SSD 使单 台服务器可提供 IO 能力 大幅提升,交易响应时间 提升 50% ; 三层网络 LUN 块设备复制 LUN 16
17. 灾备 4 级部署 – 同城半同步复制( Active-Slave )  园区 B ( MySQL 半同步复制) 园区 A (承载业务) 管理集群 ; 管理集群 故障域 A1/A2  现方案:  本地优先切换:从返回数 故障域 B1/B2/B3 同城网络 可设置;优先本地切换; NBU 备份集群  主实例集群 1 ... 从实例集群 1 从实例集群 2 ... ... 从实例集群 3 ... 故障域 A4 同城网络 从库自动调度:从库出现 异常主库自动调度;  多数派管理节点:位于备 园区;  故障域 A3 原方案:一主两从一返回 跨园区切换:人工二次确 认, RPO=0 ; 故障域 B4 故障域 B5 RTO<60S ;  业务系统:满足三、四、 五级灾备需求; 17
18. 灾备 5 级部署 – 同城双写( Active-Active ) 园区 B (承载业务) 园区 A (承载业务) 管理集群 故障域 A1/A2 同城网络 DBLE 数据库分布式中间件集群 管理集群  原方案:业务侧路由; 故障域 B1/B2/B3  现方案: DBLE 完成路由  优先切换:从返回数可设 置;优先本地切换; DBLE 数据库分布式中间件集群  主实例集群 A 从实例集群 A1 从实例集群 A2 主实例集群 B 从实例集群 B2 从实例集群 B2 业务连续:中间件主备部 署, 7*24 小时联机服务 ... ... ... ... ... ; ...  跨园区切换:数据库随业 务进行切换,人工二次确 同城网络 故障域 A3 故障域 A4 故障域 A5 认; RTO<30S 故障域 B4 故障域 B5 故障域 B6  业务系统:五级灾备且 RTO 要求高; 18
19. 某大行 - MySQL 建设核心价值 • 金融级可靠性:从脚本切换过渡到适应不同业务场景的金融级高可用; • 可维护性:从 100+ 实例增长到 2000+ 实例;未来计划 5000+ 实例; • 核心系统保障:满足行内灾备 5 级要求,三类账户支付系统 2018 年双十一交易峰值 12800TPS ; • 数据库生产力: 10+ 大型业务系统, 100+ 小型业务系统,有效降低数据库 TCO ,实现商业数据库 0 增长 ; 19
20. 10 年 + 金融 / 电信核心 OLTP 数据库转型服务 不仅仅是 MySQL 高可用 20
21. 完整的 MySQL 全生命周期管 理 关注、技术储备 尝试、单机、主从 高可用、一致性 高并发、高性能 大容量、分布式 自动化运维管理 云平台、资源池 数据同步、灾备 云树 ®DTS (开源 -DTLE ) MySQL 全生命周 期 数据复制(灾备、双活)、数据过滤、数据汇聚、数据订阅消费、数据迁移(本地、公有云、混合云、私有云) 云树 ®RDS 自服务、镜像模板、 IAAS 对接、流 程审批、可用区管理、租户权限 云树 ®DMP 自动化部署、备份恢复、资源纳 管、批量处理、日志、用户管理 DBLE/TXLE (开源) - 拆分 云树 ®Shard ( 开源 -DBLE) 数据分片、应用透明、动态扩容、 复杂查询、分布式事务、全局序列 云树 ®Proxy - 读写分离中间件 连接池、延迟检测、流量统计 云树 ®Guard - 高可用软件 云树 ®Guard 金融级高可用、自定义切换策略 技术培训 运维管理、开发测试、开源技术 技术服务 运维规范体系、开发规范体系、技术咨询、维保服务(远程 + 现场)、数据迁移、项目实施、性能优化… 21
22. 面向最终用户的数据库自服务平台 ( Coming soon ) 申请资源 申请扩容 常规 监控备份 常规 使用 ... DB 资源释放 业务用户 审批申请 确认 创建模板 标准模板 标准配置 SQL 代码 审核规则 中间件 配置 后台 集群运维 数据库管理员 赋予 权限 布局 基础架构 IT 管理者 资源隔离 软硬解耦 ... 管理 功能边界 管理 租户权限 全局 资源统筹
23. 金融行业 MySQL 技术支持 • 推动核心业务 • 针对企业问题 • 问题描述规范
24. THANK YOU ! 上海爱可生信息技术股份有限公司

Home - Wiki
Copyright © 2011-2024 iteam. Current version is 2.139.0. UTC+08:00, 2024-12-22 16:18
浙ICP备14020137号-1 $Map of visitor$