《看 Zabbix 如何基于 OceanBase 高效解决监控系统三大痛点_蔡飞志.pdf》由会员分享,可在线阅读,更多相关《看 Zabbix 如何基于 OceanBase 高效解决监控系统三大痛点_蔡飞志.pdf(26页珍藏版)》请在三个皮匠报告上搜索。
1、蔡飞志OceanBase 技术专家看 Zabbix 如何基于 OceanBase高效解决监控系统三大痛点01 业务背景介绍Zabbix 监控系统和使用介绍02 监控数据管理的痛点监控数据量大,磁盘占用高,分区表维护困难,增删耗时长Contents目录03 OceanBase 实践OceanBase 的七大竞争力、Zabbix 存储由 MySQL 替换为 OceanBase、测试遇到的问题04 总结用技术让海量数据的管理和使用更简单0101业务背景介绍Zabbix 功能简介Zabbix 监控系统架构Zabbix 监控系统介绍可从任何设备、系统、应用程序上采集数据可以自定义数据采集自定义灵活的问题
2、阈值对趋势预测作出积极反应关键问题告警通过强大的数据可视化Zabbix Server:负责接收和处理从各个监控代理(Agent)或主动模式(Active mode)的监控信息,并将结果存储在数据库中。监控代理(Agent):安装在被监控设备上,负责采集并发送监控数据给Zabbix Server。数据库:用于存储Zabbix Server接收到的监控信息。前端界面:提供Web界面,用于配置监控项、图像、触发器等,并展示监控数据。报警机制:当监控项的值超出预设的阈值时,Zabbix可以通过邮件、短信等方式进行报警。远程命令执行:Zabbix 还支持通过远程命令执行功能来控制、管理被监控设备。age
3、ntproxyZabbix serverDB集群MSS支持多种监控方式、监控对象(网络、系统、硬件、存储、应用等等)、告警机制;丰富的API和扩展方式兼容性高性能强大高效的数据收集和处理能力,监控设备接近上万,监控项数量千万级别,触发器数量百万级别替换商业监控软件,降低运维成本,经过多年社区的发展,已经成为一种成熟、稳定、可靠的监控解决方案开源稳定为何选择 Zabbix02监控数据管理的痛点监控数据量大低峰期数据每日新增约 50G磁盘容量有限,业务高峰时磁盘告警频发性能瓶颈,MySQL出现单点读写瓶颈Zabbix 作为企业级监控解决方案,可以监控多种组件,如服务器、网络设备、数据库、应用程序等
4、。在企业级监控中,需要监控的项目数量通常较多,每个项目又可能需要监控多个指标,导致产生的数据量非常庞大。以一台 MySQL 服务器为例,一台就有近 300 个监控项,涉及到硬件状态、服务状态等。分区表维护困难需要额外的维护时间维护时间内不能完成会造成Zabbix出错脚本有失败的风险在 Zabbix 中,有几张数据写入非常大的表,需要定期清理,在生产环境中,监控数据保留三个月。将原始表进行改造,把非分区表改为按时间分区的分区表(range 分区类型)。并通过分区表维护脚本来维护分区表,删除保留期限之外的数据。开始打开维护窗口运行分区管理脚本运行分区管理脚本所有分区增删成功结束额外申请维护窗口窗口
5、时间充足是否运行日志输出日志关闭告警通道Zabbix大表分区规划按天分区,数据保留一个月按月分区,数据永久保留historyhistory_uinthistory_loghistory_strhistory_texttrendstrends_uint高规格OB高规格OBOBOBOBOBOBOBOBOBOBOBOB高规格高规格小型业务中型业务大型业务核心业务业务规模传统数据库选型小规格机器MySQL主机DB2高规格RAC高规格RAC共享存储高规格机器OracleII小规格OceanBaseOceanBase 的极致弹性OBOBOBOB单机升级分布式Driver/Proxy弹性扩缩容对应用透明的扩
6、展性-Zone内扩展(垂直扩容)在OB集群里追加服务器修改租户的Unit数数据自动均衡数据同步速度500MB/s无需停服务OBServerOBServerOBServerP1 P3P2P7 OBServerZONE1P5 P6OBServerP1 P3P2P7 OBServerZONE2P5 OBServerP1 P2P3OBServerZONE3OBServerP6P5 P7P4P8P4P8P4P8P2P2P2P6P6P2P6P6LeaderP PFollowerP6弹性扩缩容对应用透明的扩展性-水平扩zone(水平扩容)集群级别追加zone数据自动进行复制自动选出Leader根据zone的
7、优先级无需停服务数据同步速度500MB/sZONE1ZONE2ZONE3P1 P3P2P7 OBServerP5 P6OBServerP1 P3P2P7 OBServerP5 P6OBServerP1 P3P2OBServerOBServerP7 P5 P6P4P4 P8 P8P8 P4P3P2OBServerP5 P6OBServerP1 P3P7 OBServerP6OBServerP4 P8P8 ZONE4ZONE5P1 P2P7 P4P5 P2 P6 Driver/ProxyP2 P6 LeaderP PFollower资源池化 多租户大集群&多租户大集群:将长尾应用的多实例MySQL
8、统一进行管理,有效提高资源密度,消除存储碎片。多租户:实现数据库内核级虚拟化,满足数据安全隔离的同时,提供基于业务画像的可伸缩计算资源,同时通过Leader打散实现混部。通过提升资源密度的方式,实现满足相同业务需求的情况下,降低资源成本。03OceanBase 实践OceanBase 的七大关键竞争力完全自主研发14 年完全自主研发,代码级可控,大规模金融核心场景 12 年可靠性验证原生分布式全量数据校验真正实现数据强一致,数据不丢失,高可用,平滑扩展单机分布式一体化自研一体化架构突破高性能和高可用,实现应用无限扩展和服务永远在线HTAP混合事务与实时分析处理一份数据既能做事务处理又能实时分析
9、,通过 HTAP 助力拓展更多可能Oracle/MySQL 平滑迁移Oracle/MySQL 平滑迁移快速、最小成本搬迁应用与数据高级压缩技术基于 LSM-Tree 的高压缩引擎平衡了“性能”和“压缩”的瓶颈,有效降低存储成本 70%-90%原生多租户原生多租户,资源隔离按需使用,灵活管理OceanBase 原生分布式数据库内置多种强校验机制,能够自动发现多副本数据的不一致、网络数据错误、磁盘静默错误、索引与主表的不一致错误等,保证数据可靠。基于paxos选举协议在故障发生时进行自主选举。少数派节点发生宕机时,支持快速无损自动切换,RTO30 秒数据一致性高可用性运营商网络/CDN机房1号负载
10、均衡网络注册中心/消息/事务机房2号负载均衡交易财务.00 0102 03.02 03交易财务机房3号负载均衡网络注册中心/消息/事务机房4号负载均衡交易财务.04 0502 03.02 03交易财务机房5号负载均衡网络注册中心/消息/事务交易财务.00 0102 03超越6级国标灾难恢复能力,同一中心数据库异常、跨数据中心中断时数据不丢失,业务不停机数据高可靠服务高可用租户级:动态扩缩容水平扩缩容:调整租户资源池的UNIT_NUM 数垂直扩缩容:调整UNIT的资源规格集群级:与传统单机数据库相比,基于分布式架构的 OceanBase 数据库提供灵活的在线扩展性。在集群持续可用的前提下,提供在
11、线扩缩容ZONE-1OBServerSQL引擎分区分区分区事务引擎存储引擎OBServerSQL引擎分区分区分区事务引擎存储引擎总控服务(主)Root ServiceOBServerSQL引擎分区分区分区事务引擎存储引擎ZONE-2OBServerSQL引擎分区分区分区事务引擎存储引擎OBServerSQL引擎分区分区分区事务引擎存储引擎总控服务(备)Root ServiceOBServerSQL引擎分区分区分区事务引擎存储引擎ZONE-3OBServerSQL引擎分区分区分区事务引擎存储引擎OBServerSQL引擎分区分区分区事务引擎存储引擎总控服务(备)Root ServiceOBSer
12、verSQL引擎分区分区分区事务引擎存储引擎tb04.43tb0252357592134.26tb037981439185.65tb042383847564.1tb0501393295.15tb0633325717.17tb07730252.88tb08280505944905187 62.61tb0954437.06tb93562.22tb7320515
13、.951b1463.57平均压缩率664.71OceanBase 高级压缩注:使用 OceanBase 3.1.4版本数据行数迁移前大小(M)迁移到 OceanBase 表大小(M)OceanBase 压缩率表名库的 collation 显示不正确在 Zabbix server 连接 OceanBase 后,会获取数据库的collation。Zabbix 报错:10310:20230406:224022.650 Zabbix supports only utf8_bin,utf8mb3_bin,utf8mb4_bin collation(s).Dat
14、abase zabbix has default collation utf8mb4_general_ci从 zabbix 代码中可以看到是查了 information_schema.SCHEMATA 表的数据。查看 information_schema.SCHEMATA 这张视图,发现在定义的时候,DEFAULT_COLLATION_NAME 默认固定为utf8mb4_general_ci使用 4.x 遇到的问题不支持共享锁(lock in share mode)Zabbix 系统在升级过程中会涉及到表结构的修改,比如会涉及到把把 text 修改为 varchar,而 OB3.1.x 版本不
15、支持这一操作,造成升级失败。使用 4.x 遇到的问题MySQL:在MySQL 中能很好的支持 lock in share mode 语法。OceanBase:在 OceanBase 4.1.0版本测试 lock in share mode,会报错语法不支持。1易处理问题版本号问题:通过修改 OBProxy的参数解决。lock in share mode语法支持和功能实现。库的collation显示不正确的问题。慢查询问题:在测试中发现了大量的慢查询,需要优化。23问题总结难点问题遗留问题04总结突破数据瓶颈,提升运维效率在 Zabbix 存储替换项目中,OceanBase 的高级压缩特性、多副本 Paxos 强一致特性以及分区表易于管理的在线 DDL 等优点,在实践过程中大大提升了用户数据存储和处理效率,有效降低了成本。系统瓶颈数据量大,性能有上限,分区表不易维护突破限制4.2.1业务高峰无磁盘I/O告警、主从延迟Zabbix&OceanBase 兼容性适配谢谢谢谢谢谢