- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
市场分析报告,市场报告,行业分析报告,行业报告
蘑菇街监控系统架构演进
嘉宾:卢鹏程
• 监控系统概述
• 需求/设计目标
• 架构及其演进
• 持续演进
• 经验总结
蘑菇街监控系统概述
应用场景
• 监控系统概述
• 需求/设计目标
• 架构及其演进
• 持续演进
• 经验总结
设计目标
• Opentsdb兼容格式(metric、tags、time、
value )
• 查询时聚合能力(单次万条曲线一秒内返回)
• 秒级数据
• 单机40万 tps
• 单机2万 qps
• 单机千万级活跃曲线
• 高可用 ,多机房
• 监控系统概述
• 需求/设计目标
• 架构及其演进
• 持续演进
• 经验总结
V1.0——从无到有
• 版本要求
• 尽快提供服务
• 兼容已有监控数据
• 可平滑过渡到后续版本
• 选型
• Gmond
• Sentryd1 (proxy )
• Opentsdb
V1.0——架构总览
V1.0——功能与缺陷
• Sentry1 (无状态)
– 转发
– 白名单
– 元信息查询
– 转码/fix
• 坑
– 查询慢——聚合慢
– 中文及特殊字符支持
– 元信息
– HTTP上报
– 采样/聚合方式不完善,无法扩展
V2.0——优化试探
• 版本要求
• 弥补1.0时代的几个不足
• 兼容已有监控格式
• 优化效率
• 实验各种想法与方案
• 选型
• 无依赖
• Sentryd2去中心 / 本地存储(rocksdb )
• Agent
• Cassandra
V2.0——架构总览
• Sdk封装优化,更易用
• Agent ,可控/高效/反馈
• 与sentryd2 TCP长连
• 采集脚本针对性下发
• Sentryd2 ,无中心
• rocksdb本地存储
• gossip无中心分布式
• 历史数据存cassandra
V2.0——不足
• Rocksdb这个轮子不太合适,时间序列数据有其特点
– 无追加模式?Merge ?
– compact性能
– 写放大
– TTL问题
– 数据迁移复杂
• 大促临时缩扩容问题
• 大查询阻塞
V3.0——曙光
• 版本要求
• 全新架构。第一个完善版本。
• 可用(查询、稳定、)
• 兼容V2 API
• 优化效率,提升4倍写入能力
• 具备快速缩扩容能力
• 选型
• 造轮子,自研TimeDB
• Scylladb
• 去Grafana ,重写Sentry-web
V3.0——架构总览
V3.0——架构特点
• 去中心
• gossip + SWIM
• 易部署、易维护、高可用、低风险
• 存角色
• 核心、外围分离,
• 大查询、热查询分离
• 不同集群不同策略,兼顾CAP
• 无依赖
• 分场景
V3——分布式架构
V3——TimeDB
• 针对时间序列数据
• 写放大少
• Compact可控,每小时1次
• 读取速度快
• L0\ L1自描述,便携易迁移
• L0存SSD ,L1存SATA
• 过期数据,直接文件删除
V3——核心集群/查询集群
• 相同功能,不同角色
– 核心集群:保证长期数据服务,降级查询。L0@SSD ,
L1@SATA
– 查询集群:1~4小时,短期数据服务。L0L1@SSD
•
原创力文档


文档评论(0)