电脑桌面
添加微风文库到电脑桌面
安装后可以在桌面快捷访问

美团可观测性技术的实践与探索-孙佳林.pdf

美团可观测性技术的实践与探索-孙佳林.pdf_第1页
1/47页
美团可观测性技术的实践与探索-孙佳林.pdf_第2页
2/47页
美团可观测性技术的实践与探索-孙佳林.pdf_第3页
3/47页
1美团可观测性技术的实践与探索美团/基础技术部/基础软件研发中⼼ 孙佳林2• 2014 年⾄今,在美团从事监控体系的建设⼯作。• 在分布式实时监控、实时告警、APM、故障定位等领域有较多经验。• 现任美团 基础技术部/基础软件研发中⼼/监控系统组 负责⼈。个⼈简介✓Raptor监控平台 ✓CAT实时监控 ✓Falcon系统监控 ✓MTrace分布式链路追踪3可观测性与监控的关系?• Baron SchSchwarz ⼤咖的⼀个定义: 监控告诉我们系统的哪些部分是⼯作的,可观测性告诉我们那⾥为什么不⼯作了。• 监控侧重宏观,可观测包括微观能⼒ • 监控是可观测性的⼦集 • 可观测性三⼤⽀柱:Metric、Log、Trace 4⽬录1. 监控体系介绍2. 监控体系建设3. 可观测性建设4. 总结与展望5⽤户能感知什么?流畅精准稳定⽤户体验快 • App启动 • 操作反馈 • ⻚⾯跳转获取的信息准确 是我想要的信息⽤户体验稳定 随时随地可⽤6监控能做什么?第⼀时间发现 提前预警⻛险快准稳系统复杂,介⼊排查⼈员多 上下游复杂,提⾼定位效率直观确认问题解决 避免引发⼆次问题发现定位解决辅助7⽤户感知—快8⽤户感知—准9⽤户感知—稳10监控体系—介绍订单量、成交额、⼤盘服务性能、异常分析资源利⽤率 机器宕机 硬件故障⽹络设备宕机 资源使⽤量接⼝请求量 多维度分析 性能、异常资源利⽤率 分阶段测速端到端⽹络质量 CDN可⽤性、DNS劫持拓扑依赖、分布式链路端到端分析⽹络设备监控Nginx监控网络层业务监控服务器层应用监控业务集群DNS域名解析CDN静态资源业务集群接⼝层浏览器⽤户端⼩程序动态容器⽹络APP应⽤层链路监控PaaS监控系统层系统层监控应用层监控⼤前端监控监控分层MGW四层负载公⽹出⼝IDCNginx七层负载11监控体系—业务痛点⽤户痛!‣ 秒杀活动,想看秒级数据,分析热点 ‣ 复盘上周故障,当时⽹卡流量变成了15分钟粒度 ‣ 部分告警,误告时有发⽣,“狼来了”效应 ‣ 查问题,平台来回切,时间就是⾦钱 ‣ 获取数据,每个平台接⼝返回不⼀样 ‣ 配置告警,到处找⼊⼝,规则和阈值都不⼀样监控数据分散平台体验差异监控粒度不够适配成本很⾼原始粒度聚合信息关联度低性能待提升能⼒成本性能效率12业务痛点—解决思考✓ 计算、存储资源巨⼤,存在冗余 ✓ 存在重复建设:计费、鉴权等效率✓场景之间的关系,难以维护,单个点上解决问题 ✓更多场景的监控数据,各⾃平台需要迭代性能✓ 部分开源产品,历史包袱重 ✓ HTTP拉取数据处理,可⽤性提升遇瓶颈能⼒✓ 更细粒度监控能⼒:秒级 ✓ 更多语⾔SDK⽀持,系统采集扩展成本微观问题宏观思考⽤户痛点解决13监控体系演进—Raptor ⼀体化监控⽤户:全栈(SRE、RD、PM、QA等)⼤前端监控应⽤监控系统监控移动端⼩程序浏览器动态化容器业务监控应⽤监控链路监控PaaS监控容器/物理机/虚拟机基础设施(⽹络设备…)⼤盘领域:⼤前端、应⽤端、系统端14前端监控• 性能分析 • 请求分析 • 异常分析 • 通⽤⼯具15前端监控16移动端监控多维度17应⽤监控—服务监控• 事务性能 • 请求/事件 • 异常分析 • 业务监控 • 系统监控 • 堆栈分析18应⽤监控—调⽤链路19系统监控20应⽤监控—集群链路监控21应⽤监控—API链路监控22监控⼤盘• 统⼀数据 • 横向聚合 • 运营⼊⼝ • 关联告警23⽬录1. 监控体系介绍2. 监控体系建设3. 可观测性建设4. 总结与展望24监控体系—顶层架构设计⾼可⽤⾼性能⾼并发⾼性能✓⾼并发 • 横向:可扩展、去热点、分布式 • 纵向:异步化、⽆锁化 ✓⾼可⽤ • 服务⽆状态化 • 服务保护、故障演练 ✓⾼性能 • 批量写⼊、数据压缩、预加载 ✓⼀体化解决⽅案,领域建模 ✓分层设计 ✓低耦合,引擎可替换 ✓采集、接⼊、处理,严格分层设计原则:⾼可⽤25系统监控—架构设计….��������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������26应⽤监控—技术升级✓ 接⼊层:路由⼀致性Hash ✓ 分析层:编码、预聚合、降采样 ✓ 存储层:HBASE存储压缩技术架构、存储改造27应⽤监控—技术升级 减少有状态数据的内存存活时间⼩时数据落地28⽅案延伸—秒级监控⽀持秒级,⼩成本⽅案复⽤• 分钟级粒度 -> 秒级粒度(3s)业务场景:分钟级监控⽆法满⾜• 配送调度实时性要求⾼ • 秒杀场景流量集中 • ….29产品升级CAT旧版系统监控旧版 ⼤盘Raptor技术型产品型技术/产品型系统 监控⼤盘 产品⽤户&应⽤ 监控 从0到1,技术建设从0到1,产品建设技术/产品,迭代升级升级 + 融合不是简单叠加⽽是升级融合85 ->100 1 -> 3030融合迁移主要问题初期中期后期采取措施迁移进度30 -> 85✓ 内部试点,先吃狗粮 ✓ 对外PR,引导迁移 ✓ 最⼩单位,逐步灰度✓ 打磨产品,校准核对 ✓ 把握节奏,业务优先 ✓ 存量迁移,增量收⼝有认知盲区影响难评估多形态并存进⼊深⽔区业务有体感定制化场景改造成本⾼✓ 定制⽀持,扩展能⼒ ✓ 提供⾃主迁移能⼒ ✓ 暂保留少部分资源31⽬录1. 监控体系介绍2. 监控体系建设3. 可观测性建设4. 总结与展望32可观测性建设监控体系 —> 可观测性,我们做了哪些: • 拥抱云原⽣ • 打破信息孤岛 • 挖掘数据价值• Prometheus监控 • 形式1:全托管服务 • 形式2:只使⽤远程存储33拥抱云原⽣34打破信息孤岛• Metric: • 监控⼀体化:完成监控数据融合,完善监控数据 • 规范打点协议,完善基础服务及设施监控数据 • ⼤盘统⼀视图交互、信息汇聚 • Trace: • 利⽤Trace调⽤链,完善上下游服务依赖关系 • TraceId跨进程传递⾄PaaS服务 • Go 版Trace SDK兼容OpenTelemetry • Log: • ⼩程序异常⽇志监控 • 系统异常信息、硬件故障信息补充 • Nginx请求⽇志分析,补充HTTP链路拓扑 • 利⽤TraceId标记请求链路,并与⽇志、指标打通(例如:前后端链路打通)35挖掘数据价值—实时告警智能告警阈值告警36实时告警—智能告警设计37挖掘数据价值—多维影响因⼦分析• 微软Adtributor• 清华 Squeeze38挖掘数据价值—异常根因分析• 指标关联• 根因分析39异常根因分析—图构建40可观测建设—数据输出实时数据消费告警数据推送近实时数仓数据开放Open-APIPaaS服务建设:数据库⾃治、容器弹性伸缩等 运维稳定性建设:故障预警、根因定位等 研发效率提升:⽆⼈值守发布、资源容量预测等 ……41⽬录1. 监控体系介绍2. 监控体系建设3. 可观测性建设4. 总结与展望42可观测案例实践• 容器的全链路可观测 • Trace SDK兼容OpenTelemetry协议 • K8S集成Trace SDK,弹性伸缩全链路追踪 • 数据库全链路可观测 • DAL层传递TraceId,并打通Metric指标 • 数据库服务传递TraceId,关联服务端⽇志 • 提供端到端慢查询诊断联动能⼒ • 前后端链路打通 43前后端链路打通—Metric出发44前后端链路打通—串接 Trace + Log45未来规划与挑战• 兼容更多主流协议,例如:OpenTelemetry协议 • 计算、存储资源成本,需有效控制 • 边缘计算,前置数据聚合 • 可观测体系的云原⽣架构改造 • 开源建设,任重道远 • https://github.com/dianping/cat46站在巨⼈的肩膀上,感恩!

1、当您付费下载文档后,您只拥有了使用权限,并不意味着购买了版权,文档只能用于自身使用,不得用于其他商业用途(如 [转卖]进行直接盈利或[编辑后售卖]进行间接盈利)。
2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。
3、如文档内容存在违规,或者侵犯商业秘密、侵犯著作权等,请点击“违规举报”。

碎片内容

美团可观测性技术的实践与探索-孙佳林.pdf

您可能关注的文档

发表评论取消回复

参与评论可获取积分奖励  
国家标准 + 关注
实名认证
内容提供者

国家标准

确认删除?
回到顶部