安全看得见,阿里云性能监控 ARMS 全真3D拓扑实现一“屏”了然

简介: 微服务架构下,各类服务之间存在着错综复杂的依赖关系。一旦业务出现问题,追查问题源头就好比大海捞针,没有头绪。但业务不等人,此时,在最短的时间内定位问题根源是开发和运维人员对微服务监控产品的核心诉求。 传统的监控产品提供了表格(table)、表单(form)和仪表盘(dashboard)三种展现形式,因其局限性,并无法完整和直观的提供监控详情,以快速定位问题。

微服务架构下,各类服务之间存在着错综复杂的依赖关系。一旦业务出现问题,追查问题源头就好比大海捞针,没有头绪。但业务不等人,此时,在最短的时间内定位问题根源是开发和运维人员对微服务监控产品的核心诉求。

传统的监控产品提供了表格(table)、表单(form)和仪表盘(dashboard)三种展现形式,因其局限性,并无法完整和直观的提供监控详情,以快速定位问题。阿里云性能监控 ARMS 新推出的全真3D拓扑功能给这个问题带来了完美的解决方案。ARMS 3D拓扑功能,创新地采用三维立体的方式展示系统中真实的架构层级和关系,利用ThreeJS的前端框架建立一个立体的监控空间,让用户一目了然地看到系统的结构与状态。

传统监控方式的不足

在传统的监控产品中,我们最常见的界面就是表格、表单和仪表盘这三种,但这三种界面皆有其局限性。

1541754281092_0d8bfb97_2bfd_4f60_8646_d53ed7dc54c6

  • 表格:通常用于展示大量数据,信息密集,频繁翻页,大部分内容为数值和文字,不够直观。
  • 表单:用于展示某个实例的详细内容,涉及大量文字和图表的阅读。缺点是一次只能聚焦一个实例,如有下层信息,需要跳转到更深层级。
  • 仪表盘:以图表形式对信息的聚合展示,更直观和生动。但一个版面展示信息有限,一般下层信息阅读量就很少。

因为这种界面形式上的限制,我们常常不得不面对让人头昏眼花的大量表格,为了定位一个问题反复跳转,一不留神就迷失在茫茫数据中,想要理解数据之间的关系只能靠经验和记忆。

ARMS的监控创新

ARMS 通过使用全真3D的方式(简称 ARMS 3D拓扑)去展示系统的立体性,帮助用户快速理解和追踪系统节点中的关系。

首先,我们将系统从底到上抽象为 主机-应用-服务 这三个层级,这也是我们在传统监控方式中关注最多的三层信息。在这三个层级上的模块分别代表系统中真实存在的主机(ECS/物理机)- 应用 - 服务。纵向的连线代表主机对应用的支持,以及服务在应用上的归属。

1541754433222_c3182ae6_f915_4847_be6a_08aadc9b6d9b

用户除了可以从全局视角看到自己的整个系统,也可以单独缩放和旋转某一层级,详细查看主机的集群和负载情况,应用之间的调用关系,以及服务的调用量、错误率等。下面我们来一一介绍各层级展示的内容。

应用层

应用层展现内容有四个部分:

  • 中心应用
  • 中心应用依赖的应用
  • 使用中心应用服务的应用
  • 中心应用依赖的中间件

总的来说,就是展示服务自身、服务被谁调用以及服务间的依赖关系。点击应用,会弹出右侧面板,应用的QPS、RT、ERROR的信息都在上面展示。同时,动态的连线关系让我们更清楚地看到应用之间的调用关系,以及中间件组件对系统的支持,甚至底层、主机层每个主机的健康情况。

1541754481064_356b77bd_5cc9_44d8_b529_8aaab4452111

服务层

服务层就是展示各个应用提供的服务详情信息,鼠标滑过就有服务名展示,颜色表示这个服务的响应时长超过阈值(可配置),需要关注。

1541754506790_3ec31bfd_e871_4bcd_bc14_0706f14634f9

主机层

主机层展现的是各个应用的主机详情,点击每个主机可以看到主机的CPU、MEM、Load信息,超过阈值的指标会标记颜色。另外还会展现主机的静态信息,比如主机所隶属的机房、单元、主机名称、JVM、Tomcat版本信息等。

1541754587502_e194b4f4_84a8_4e06_b2ca_b40519909569

以往我们从出错的服务到应用,再定位到具体的机器,可能需要十几次页面跳转,而在 ARMS 3D拓扑 的三维世界中,我们在一个页面中就可以完成这些动作。三维世界的交互方式—拉近、拉远、转换视角和折叠展开,代替了页面的跳转。用户无论拉近到哪个机器或应用,都可以快速的理解自己在系统中所处的位置以及和其他层级的关系,不会因为操作链路过长而迷失自己。

接入方式

当前,ARMS 3D拓扑功能已经上线,用户只要成功接入ARMS的探针,就能以3D的方式去查看自己的系统状态,不需要额外的操作与费用。

1541754664714_9dc9fc48_d2a2_451b_8120_112faf05f844

总结

ARMS 3D拓扑功能提供了一种全新的交互方式,扩充了和应用沟通的维度,实现了360度全方位诊断性能瓶颈和故障节点,以甄别故障出现时,哪些应用和哪些关联的主机出现了问题等,从此,应用离我们如此之近。

欢迎加入Aliware企业级互联网架构钉钉群:21704851

相关实践学习
通过云拨测对指定服务器进行Ping/DNS监测
本实验将通过云拨测对指定服务器进行Ping/DNS监测,评估网站服务质量和用户体验。
相关文章
|
7月前
阿里云ARMS的新版和老版界面是两套不同的系统
阿里云ARMS的新版和老版界面是两套不同的系统
149 2
|
7月前
|
存储 监控 前端开发
【专栏】阿里云ARMS前端监控的引入方法,以提升应用质量和稳定性
【4月更文挑战第29天】本文介绍了阿里云ARMS前端监控的引入方法,以提升应用质量和稳定性。该工具通过实时收集和分析用户行为、性能数据,提供错误监测和实时告警。步骤包括注册阿里云账号,创建前端监控项目,获取并嵌入监控代码到页面中,部署并运行,最后查看监控数据。案例和经验分享强调了合理设置监控指标、与其他工具结合以及定期分析数据的重要性。注意保护用户隐私,正确管理监控代码,并解决可能出现的数据不准确和大量错误告警问题。
208 1
|
7月前
|
存储 Prometheus 运维
【阿里云云原生专栏】云原生下的可观测性:阿里云 ARMS 与 Prometheus 集成实践
【5月更文挑战第25天】阿里云ARMS与Prometheus集成,为云原生环境的可观测性提供强大解决方案。通过集成,二者能提供全面精准的应用监控,统一管理及高效告警,助力运维人员及时应对异常。集成示例代码展示配置方式,但需注意数据准确性、监控规划等问题。这种集成将在云原生时代发挥关键作用,不断进化以优化用户体验,推动业务稳定发展。
237 0
|
监控 Java 调度
阿里云 ARMS 应用监控重磅支持 Java 21
阿里云 ARMS 应用监控重磅支持 Java 21
48552 39
|
7月前
|
存储 Prometheus 监控
关于阿里云ARMS的新版计费方式
【1月更文挑战第7天】【1月更文挑战第32篇】关于阿里云ARMS的新版计费方式
114 2
|
监控 前端开发
阿里云 ARMS
阿里云 ARMS
335 1
|
监控
带你读《阿里云卓越架构白皮书》——3、性能监控
带你读《阿里云卓越架构白皮书》——3、性能监控
185 0
《阿里云产品手册2022-2023 版》——应用实时监控服务
《阿里云产品手册2022-2023 版》——应用实时监控服务
123 0
|
监控 Java
《2021 阿里云可观测技术峰会演讲实录合辑(下)》——一、基于OPLG从0到1构建统一可观测平台实践——场景实践1:如何基于OpenTemeletry和ARMS实现全链路的追踪和应用诊断【上】
《2021 阿里云可观测技术峰会演讲实录合辑(下)》——一、基于OPLG从0到1构建统一可观测平台实践——场景实践1:如何基于OpenTemeletry和ARMS实现全链路的追踪和应用诊断【上】
442 0
|
Arthas 缓存 Prometheus
《2021 阿里云可观测技术峰会演讲实录合辑(下)》——一、基于OPLG从0到1构建统一可观测平台实践——场景实践1:如何基于OpenTemeletry和ARMS实现全链路的追踪和应用诊断【下】
《2021 阿里云可观测技术峰会演讲实录合辑(下)》——一、基于OPLG从0到1构建统一可观测平台实践——场景实践1:如何基于OpenTemeletry和ARMS实现全链路的追踪和应用诊断【下】
505 0