天天看点

王东:微服务下的APM全链路监控

王东:微服务下的APM全链路监控

什么是APM?

APM (Application Performance Management) 即应用性能管理,属于IT运维管理(ITOM)范畴。主要是针对企业 关键业务的IT应用性能和用户体验的监测、优化,提高企业IT应用的可靠性和质量,保证用户得到良好的服务,降 低IT总拥有成本(TCO)。

王东:微服务下的APM全链路监控

APM的发展历程

王东:微服务下的APM全链路监控

Gartner对APM的定义(2014)

2014年Gartner对APM的5个定义:

王东:微服务下的APM全链路监控

Gartner对APM的定义(2016)

2016年重新定义,将原来的五部分合成三部分。

王东:微服务下的APM全链路监控

服务开发架构的发展历程

一开始的应用开发是从Main-frame一直到2010年以前比较热的SOA架构,到14年比较热的Microsorvices架构,从14年开始基于容器化的Microsorvices。服务开发框架复杂度越来越高。

王东:微服务下的APM全链路监控

微服务带来的挑战

依赖关系复杂 

持续交付 

容器化环境 

服务注册、发现和可靠性 

一切皆服务(Everything-as-a-Service) 

DevOps

微服务对APM的大影响

王东:微服务下的APM全链路监控

APM的核心能力

王东:微服务下的APM全链路监控

基于微服务的应用程序端到端监控

王东:微服务下的APM全链路监控

APM探针的基本原理 (Java Instrument)

王东:微服务下的APM全链路监控

APM探针的基本原理 (Java探针结构)

王东:微服务下的APM全链路监控
王东:微服务下的APM全链路监控

分布式追踪 – Google Dapper

王东:微服务下的APM全链路监控

分布式追踪 – OpenTracing

王东:微服务下的APM全链路监控

追踪一切

无论是业务服务还是微服务,要做到收取流失的数据,还有所有组件健康检查,还要做到数据的分析。

王东:微服务下的APM全链路监控

服务关联元数据

监控是分层的,只知道一个服务有问题,并不能定位这个服务的根本原因是什么,就需要使用元数据。

王东:微服务下的APM全链路监控

服务动态拓扑

随时间的推移去变化

王东:微服务下的APM全链路监控

服务调用链分析

王东:微服务下的APM全链路监控

APM总体架构

王东:微服务下的APM全链路监控

探针配置

王东:微服务下的APM全链路监控

APM核心能力

王东:微服务下的APM全链路监控

性能测试 

王东:微服务下的APM全链路监控

构建“部署 + 监控 + 告警 + 报障”闭环

王东:微服务下的APM全链路监控

告警平台

王东:微服务下的APM全链路监控

通过故障分类系统、支持组,快速将接入的各监控系统报障通知给相应维护人员, 并通过配置的SLA及组织架构,对未及时响应的报障进行上告处理,以达到卓越运维的目的。

王东:微服务下的APM全链路监控

大数据能力的充分释放-自动异常点检测

王东:微服务下的APM全链路监控

AIOps

告警归并 

根因分析 

故障自动恢复 

容量预测

王东:微服务下的APM全链路监控

原文发布时间为:2017-11-24

本文作者:王东