2022云栖精选—传音移动互联可观测体系设计与落地

简介: 曹剑阿里云智能高级产品专家

lQLPJxbcF2cqNBvMiM0FeLCMz4ifcSGHeANpqgFLAEAA_1400_136.png

image.png

传音控股作为“非洲手机之王”,IDC报告显示2021年占据非洲智能手机出货量47.9%传音移动互联广告平台作为传音控股的重要业务之一,是非洲最为主流营销平台之一。

在技术架构方面,传音控股通过SpringCloud进行全面微服务化。同时,使用数据库、中间件等众多PaaS服务应用运行在阿里云容器服务K8S之上,并分布在欧洲亚洲等多个 region 真正实现多 region 服务体系。对于套体系而言,要构建完整可观测体系,挑战非常大:

首先,观测对象非常多:

观测对象分布在不同技术栈、架构中要对于众多观测对象实现覆盖有所侧重,是非常大挑战。

其次,调用链路复杂:

由于已经使用微服务,因此业务结构非常复杂,调用链路复杂,出现问题难以排查

最后,业务快速上线带来的运维工作量:

新业务上线频率极快,如果新上线服务无法自动化接入这一套可观测体系,会带来非常大的运维工作量。

image.png

要构建观测系统,首先要梳理出一套指标体系,进行分层设计,同时自上而下对指标体系进行关联。

其次,传音希望通过告警驱动整个运维流程,需要在IM即时通讯工具内完成事件闭环,包括告警收取认领处理分析、关闭全流程。

另外,传音的系统非常复杂,因此,传统登录到机器查看日志排查问题的方式无法实现,而是需要全链路追踪作为诊断主要手段。在情况下,整个观测系统必须与链路系统打通。同时,我们希望观测系统基于开源标准进行构建指标符合Prometheus格式 tracing 符合 OpenTelemetry标准,服务界面通过 Grafana 大盘进行统一呈现。

相比自建传音更倾向于使用阿里云上成熟云服务,因为云服务带来的全托管、免运维、稳定高效优势具有非常大的吸引力

基于以上业务目标与需求,我们开始进入可观测系统落地实施。

image.png

首先,进行指标体系梳理阿里云与可观测团队将所有指标进行拆解分层,分资源层、容器层、服务层以及应用层。资源层最主要关注节点上资源水位,包括 CPUmemory网络带宽等。容器层分为工作负载、控制面以及容器关键事件,对于产生关键指标和事件进行收归。服务层针对应用链路中涉及负载均衡SLB 云数据库 RedisMQ等可用性以及性能指标进行梳理。应用层主要针对应用健康度以及应用性能本身,包括黄金三指标运行JVM 性能等进行梳理。

image.png

基于以上指标体系,传音建立观测系统的过程中选择使用阿里云上Prometheus服务,与阿里云容器服务进行了天然集成,可以采集阿里云K8S 集群关键性能指标开箱即用。

容器服务运行应用指标也进行默认集成,将应用层黄金三指标等非常关键指标收归至Prometheus,同时基于Prometheus和云监控开箱即用的能力,将链路上关键云服务指标收归至Prometheus

结合阿里云Grafana服务 真正实现全局多维度大盘展现。比如,业务关键指标技术可观测大盘关键服务大盘及应用性能均基于 Grafana 呈现。同时数据源分布在欧洲亚洲多个 region 基于 Grafana 全球数据源加速能力,使国内同事也可以直接查看全球监控状况,真正实现一套观测产品全球使用。

image.png

得益于指标体系梳理,每一层关键指标已收归Prometheus服务。而且Prometheus服务提供开箱即用基于 PromQL告警规则,极大减轻了传音运维工作量

所有发出告警规则会被发送至阿里云上应用性能监控 ARMS 智能平台。基于智能告警平台的智能降噪智能分组压缩等能力,进一步解决传音此前告警风暴问题,使得告警更准确更高效。最终的告警会对接到传音常用飞书平台实现告警认领、告警追踪告警分析、关闭等完整流程

传音原先告警模式为告警至个人非常容易丢失。而如今转变告警至群,通过群体协作,同事之间互相协作互相提醒,更有利于告警及时处理

image.png

传音新上服务无法自动接入原先的链路追踪系统这会导致极大运维工作量,因此使用阿里云上应用监控服务进行替换。应用监控服务与容器服务有天然集成,可以针对于容器服务需要监控应用自动注入 Java 探针,将链路APM数据采集至阿里云上应用监控服务,同时指标也会收归至阿里云Prometheus真正实现从指标链路以及链路中关键报错日志完全关联。

同时ARMS应用监控也提供全局拓扑,可以查看整个服务关联情况调用情况。新服务上线可以非常方便地查看服务健康状况依赖等。发现问题节点之后,可以深入拉起全链路调用链追踪,并定位至代码级别

image.png

阿里云和传音一起构建该套可观测系统-- 覆盖资源层、容器层、 PaaS层、应用层全球多地域统一可观测系统。在实施过程中,我们基于阿里云Prometheus服务将云上应用层指标云服务指标K8S 监控指标收归至Prometheus

通过阿里云 ARMS 应用监控构建了全链路追踪系统同时基于阿里云 Grafana 提供可观测统一视图,再对接至后面ARMS 告警平台,最终对接至飞书群,真正实现了再告警群内实现协作闭环,真正实现 ChatOps运维新范式

后续,传音计划引入异常检测根因定位AIOps能力,进一步提效,提高问题诊断效率。同时会在用户侧加入用户体验监控能力,更好区分是用户侧问题还是数据中心问题。我们也会将可观测能力前置至开发态测试态,与 CI/CD 流程结合,与压测环境结合,更好保证应用服务交付质量。同时,我们也会探索基于可观测数据做FinOps做应用安全,更好地利用可观测数据,发挥业务价值。

最终,我们希望能够实现面向业务运维可观测系统。

lQLPJxbcF2cqM2TM-M0CnrCgW_7LDpyh1wNpqgFKAPsA_670_248.png

相关实践学习
使用ACS算力快速搭建生成式会话应用
阿里云容器计算服务 ACS(Container Compute Service)以Kubernetes为使用界面,采用Serverless形态提供弹性的算力资源,使您轻松高效运行容器应用。本文将指导您如何通过ACS控制台及ACS集群证书在ACS集群中快速部署并公开一个容器化生成式AI会话应用,并监控应用的运行情况。
深入解析Docker容器化技术
Docker是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的Linux机器上,也可以实现虚拟化,容器是完全使用沙箱机制,相互之间不会有任何接口。Docker是世界领先的软件容器平台。开发人员利用Docker可以消除协作编码时“在我的机器上可正常工作”的问题。运维人员利用Docker可以在隔离容器中并行运行和管理应用,获得更好的计算密度。企业利用Docker可以构建敏捷的软件交付管道,以更快的速度、更高的安全性和可靠的信誉为Linux和Windows Server应用发布新功能。 在本套课程中,我们将全面的讲解Docker技术栈,从环境安装到容器、镜像操作以及生产环境如何部署开发的微服务应用。本课程由黑马程序员提供。     相关的阿里云产品:容器服务 ACK 容器服务 Kubernetes 版(简称 ACK)提供高性能可伸缩的容器应用管理能力,支持企业级容器化应用的全生命周期管理。整合阿里云虚拟化、存储、网络和安全能力,打造云端最佳容器化应用运行环境。 了解产品详情: https://www.aliyun.com/product/kubernetes
相关文章
|
移动开发 监控 Android开发
Android & iOS 使用 ARMS 用户体验监控(RUM)的最佳实践
本文主要介绍了 ARMS 用户体验监控的基本功能特性,并介绍了在几种常见场景下的最佳实践。
1252 103
|
5月前
|
人工智能 缓存 供应链
森马如何用阿里云 AI 网关,轻松实现“AI+业务”高效落地
森马快速实现 AI 转型,通过阿里云 AI 网关(即 Higress 企业版)及注册配置中心 Nacos3.0 实现了多模型多 MCP server 统一接入统一管理统一配置,将存量服务一键转换为 MCP server,使 AI 与生产业务相结合,综合提效 30%。
684 58
|
6月前
|
云安全 人工智能 安全
Dify平台集成阿里云AI安全护栏,构建AI Runtime安全防线
阿里云 AI 安全护栏加入Dify平台,打造可信赖的 AI
3628 166
|
2月前
|
人工智能 缓存 算法
别再让语音机器人“答非所问”:AI Force任务型语音对话技术总结
本文围绕企业级任务型语音 Agent(如营销、催收、教培等场景)的核心挑战,提出:要让 AI 语音助手真正胜任“真人小二”角色,必须同步解决 “拟人化” 与 “专业化” 两大维度。
别再让语音机器人“答非所问”:AI Force任务型语音对话技术总结
|
运维 监控 Cloud Native
茶百道全链路可观测实战
茶百道全链路可观测实战
2311 106
|
运维 监控 Cloud Native
轻松构建全栈观测,从容应对咖啡产业竞争
轻松构建全栈观测,从容应对咖啡产业竞争
1545 116
|
7月前
|
JavaScript Java 关系型数据库
基于springboot的快递分拣管理系统
本系统基于SpringBoot框架,结合Java、MySQL与Vue技术,构建智能化快递分拣管理平台。通过自动化识别、精准分拣与实时跟踪,提升分拣效率与准确性,降低人力成本,推动快递行业向智能化、高效化转型,助力电商物流高质量发展。
|
监控 Kubernetes Python
Python 应用可观测重磅上线:解决 LLM 应用落地的“最后一公里”问题
为增强对 Python 应用,特别是 Python LLM 应用的可观测性,阿里云推出了 Python 探针,旨在解决 LLM 应用落地难、难落地等问题。助力企业落地 LLM。本文将从阿里云 Python 探针的接入步骤、产品能力、兼容性等方面展开介绍。并提供一个简单的 LLM 应用例子,方便测试。
592 112
|
存储 Android开发 索引
鸿蒙特效教程10-卡片展开/收起效果
本教程将详细讲解如何在HarmonyOS中实现卡片的展开/收起效果,通过这个实例,你将掌握ArkUI中状态管理和动画实现的核心技巧。
519 6
鸿蒙特效教程10-卡片展开/收起效果