维稳618和双11:京东科技数据库海量运维的生态体系建设与实践

如果无法正常显示,请先停止浏览器的去广告插件。
分享至:
1. 维稳618和双11: 京东科技数据库海量运维的生态体系建设与实践 演讲人:高新刚 全球敏捷运维峰会 广州站
2. 目录 海量运维概述 海量运维的高可用体系 海量资源管理 海量告警管理 大促备战分享 全球敏捷运维峰会 广州站
3. 海量运维概述 APP LVS/SLB MyAudit Hadoop 磁带库 CDS/ShardingSphere PillBox AKS 数据库集群 DB Archiver DBCM MyDB 研发 DB DB CleverDB DB OnLine DBA 全球敏捷运维峰会 广州站 Mega DBRep 大数据平台 DTS 目标数据库
4. 海量运维的高可用体系 A B C 优质的容灾服务质量 RTO<10S 秒级监控 哨兵探测 高效流程快速切换 可靠的切换决策模型 自动识别异常高效监控 极端场景判别 故障自动决策避免误切 良好的兼容性和适配性 不同环境:跨IDC、跨ZONE、 跨主机 不同架构:读写分离、延迟同 步、共享存储 不同中间件:SLB、LVS、CDS、 DNS、PROXY 服务自身的可用性保障 容灾服务组件无状态 跨机房部署 配置库双活部署 服务多活无单点问题 平台自动化管理 丰富的容灾类型 CMDB上下线一站式配置服务 进度状态、历史查询、主动通知 可插拔模块、系统融合 丰富的API接口 可视化信息统计和管理报表 主库容灾、从库容灾 手动切换、自动切换、权重切换 Online switch & offline switch 批量切换、机房容灾 全球敏捷运维峰会 广州站 D E F
5. 高可用体系的数据一致性保障 APP INSERT Master INSERT … ACK Binary Log Relay Log Binary Log Semi Sync INSERT … Receiver Meta-data Update 全球敏捷运维峰会 广州站 Slave Applier Meta-data Update INSERT …
6. 高可用体系的数据一致性保障 APP INSERT Binary Log Master INSERT … Semi Sync Relay Log Binary Log INSERT … INSERT … Slave 分组 ACK 分组1 ack数据汇聚容器 MySQL 级 ack数据 汇聚容器 分组2 ack数据汇聚容器 Receiver Meta-data Update 分组n ack数据汇聚容器 全球敏捷运维峰会 广州站 Applier Meta-data Update
7. 高可用体系的数据一致性保障 类别 半同步 强一致 分组半 同步 主机房从库数量 同城机房从库数量 异地机房从库数量 机房级灾备ACK数量 地域级灾备ACK数 量 1 1 1 >1 >2 2 1 1 >2 >3 3 1 1 >3 >4 x y z >x >x+y 1 1 1 >1 >2 2 2 2 >1 >2 3 2 2 >1 >2 x y z >1 >2 • 从库宕机会影响ack应答,导致业务夯住 • 从库节点越多,ACK应答数量多,影响数据库事务处理能力 • 主库宕机,容灾切换后,ack数量需要手动调整 • • • • 解决从库宕机,网络抖动对ACK应答数量的影响 使用最少的ACK应答数量,实现数据一致性保障 避免主库宕机,对容灾切换的影响。 需要更多的从库节点 全球敏捷运维峰会 广州站
8. 海量资源管理 服务器 机房、机柜 • 资源自动上报 • 服务器使用状态管理 • 数据库与应用信息匹配 • 数据库与业务研发匹配 • 业务访问链路拓扑信息 • 历史信息追溯 网段、ip 实例 业务线 数据库 • 服务器、实例、库、业务线血缘关系 • 元数据变更管理 • 资源使用视图 • 资源使用率报表 • API服务 全球敏捷运维峰会 广州站
9. 海量告警管理 n 触发基线 n 预测规避 n 精确告警 · 制定各告警基线 · 告警方式和级别 · 告警接收人 · 级联效应 · 调整参数 · 减少无用告警 · 降低感官疲劳度 · 节省资源 触发告警 汇总分析 以点推面 调节基线 n 筛选分析 n 自动调节 · 等级划分,主次分明 · 单因多果关联性分析 · 自适应阈值调配 · 自调节时间窗口 · 调整报告 全球敏捷运维峰会 广州站 精确告警
10. 大促备战分享 研发赋能、抓核心链路 监控告警、高可用切换、备份恢复、容量管理、变更管控、应急方案 备战准备 • • • • • • • 备战巡检 容量评估 优化改造 数据归档 压力测试 切换演练 变更管控 大促 • 大促调整 • 监控大屏 • 应急处理 案例复盘 • 事件管理 • 案例分享 • 经验总结 全球敏捷运维峰会 广州站
11. 大促备战分享 自增主键 磁盘空间 表分区 连接数 单表21亿 系统相关 时间维度的分区 活跃连接数 全局自增主键 DB相关 时间维度的拆分 max_connections 备份 热点表 Top SQL 慢查询 备份作业 SQL 频次 SQL 消耗 有效性检查 数据量大 拆分不均匀 影子表 SQL 效率 优化改造 定时调度 容量评估 硬件&机房 业务梳理 业务跑批 ETL抽取 硬件容量 信息采集 备份调度 性能容量 磁盘 Raid卡 出口带宽 机柜超电 双电链路 温湿度 全球敏捷运维峰会 广州站 数据库依赖程度 事务读写逻辑 上下游调用逻辑
12. 大促备战分享 总内存:128G innodb_buffer_pool_size:80G 实际使用内存:118G connections:2000 实际使用内存 118G Innodb_buffer_pool 80G Session级别*conn 20G 全球敏捷运维峰会 广州站 = 泄漏内存? 28G
13. 大促备战分享 Ptmalloc: Jemalloc: • glibc 实现的内存分配器 • 共享arena • 标准实现 • 线程缓存 • per thread独享arena • 进一步提升多线程性能 • 提升多线程性能 • 内存主动回收 • 线程结束前不主动回收 • 减少内存碎片 • 内存浪费严重 • 灵活api,可审计和回收 全球敏捷运维峰会 广州站
14. 大促备战分享 • 某系统承载了京东科技业务的流水明细,每日增量5000w+,按日期做的分库分表 • 不定期OOM • 表数量多\空表较多\开启information_schema采集\定期回收表碎片,内存增速更快 • 加载jemalloc插件后(my_jemalloc.so) ,内存保持平稳,不持续增长,避免发生oom重启 全球敏捷运维峰会 广州站
15. 大促备战分享 持续做、模拟多场景、 应急方案优化 连续自助化、业务视角、 管控视角、发现隐患解 容灾 演练 性能 优化 数据 治理 经验 总结 资源 管控 缓存思想、MQ消费 数据冷热分离 智能评分、使用效率 优化方案、合理扩容 决问题 智能压测、营销预估、 服务的服务、监控的监控 压测 方案 全球敏捷运维峰会 广州站 业务 优化 减少交互、简化逻辑 熔断降级、连接池优化
16. THANK YOU! 全球敏捷运维峰会 广州站

首页 - Wiki
Copyright © 2011-2024 iteam. Current version is 2.137.1. UTC+08:00, 2024-11-24 23:06
浙ICP备14020137号-1 $访客地图$