《2021 阿里云可观测技术峰会演讲实录合辑(下)》——一、 基于OPLG从0到1构建统一可观测平台实践【下】

本文涉及的产品
服务治理 MSE Sentinel/OpenSergo,Agent数量 不受限
可观测可视化 Grafana 版,10个用户账号 1个月
简介: 《2021 阿里云可观测技术峰会演讲实录合辑(下)》——一、 基于OPLG从0到1构建统一可观测平台实践【下】

接上篇:

https://developer.aliyun.com/article/1223030?spm=a2c6h.13148508.setting.29.4f394f0em1x0Jq

为了解决上述问题,我们在生产环境中逐渐沉淀下较为可行的方案,即基于OPLG建设统一可观测平台。此方案主要有以下几点优势:

 

开源开放:全开源技术栈,借助社区共建合力,比如可以借助OpenTelemetry的Traces埋点,Prometheus指标的Metrics Exporters,无需过多开发,即可保障大部分通用组件数据的采集生成上报,降低了接入成本

统一目标:开源且基于统一的一套规范,可以很轻松地实现内部各个子系统甚至是和外部三方系统之间的打通和关联分析

自由灵活:基于OPLG特别是Grafana一些比较好的设计,可以非常灵活地组织可观测数据,能够灵活地定制每一个场景下需要的大盘图表,满足自定义的需求

边缘计算:基于OpeTelemetry Collector技术,可以将数据处理“左移”到用户集群内。通过边缘计算的技术,能够提前提炼数据价值,并将提炼好的数据再发送到服务端,降低公网传输的成本以及服务端的存储成本。

image.png

OPLG主要由以下四个模块构成:

 

端侧数据生成与上报:通过OpenTelemetry完成Traces数据的生成,通过Prometheus完成指标类的数据,通过Loki的方式完成日志采用

边缘侧数据统一处理与路由:所有数据采集完成之后,可以通过OpenTelemetry Collector完成数据统一的边缘处理和路由转发

全托管服务端:能够提供更好的性能和更稳定的服务,而且不会绑定技术栈,迁移的自由度和灵活度高

统一可视化:可以通过Grafana完成统一的自定义灵活监控,也可以采用云服务商比如ARMS在特定的精细化交互场景提供精细化的交互大盘,提高查询体验。此外,如若有自己的需求,也可以通过开源的数据格式或开放的OpenAPI建设自己的控制台。

image.png

OpenTelemetry Collector首先会完成统一的数据采集,任何数据类型都可以进行数据采集,然后做通用的处理,比如格式化、数据的标签打标,还可以进行一些指标的预聚合动作,最常见的比如调用链,可以根据service IP等粒度先将数据聚合再进行采样,可以保证指标的精准度,而且上传到服务端也可以降低成本。

 

OpenTelemetry Collector还可提供本地存储的能力,可以将一部分最近的数据先临时缓存,然后进行比如最近10分钟的全量查询、错慢全采等,可以更好地利用边缘的存储能力。

 

针对处理好的数据,OpenTelemetry Collector提供了非常灵活的转发方式,可以支持不同的协议,比如Prometheus协议、OTLP协议等,也可以支持多数据源的转发,可以发送到云服务端,也可以转存到边缘存储,更加灵活。

 image.png

基于ARMS的托管服务端针对海量的数据场景做了很多查询性能优化加速的技术,比如通过算子下推的方式,在70%以上的场景下查询性能相对于开源提升了10倍以上;而针对7-10天等的长周期查询,通过降采样技术又进一步地提升了一个数量级的查询性能;针对URL等发散维度,通过自动收敛的技术很好地解决了热点导致的查询卡顿问题;针对链路数据,做了对应用和Traces ID两级的路由扫描,针对链路查询的使用特征做了相应的优化。

 

除了海量数据的查询性能优化外,我们在HA侧也做了体系化的建设,比如默认支持全球部署、多可用区的容灾,避免了单个region或AZ不可用的风险;其次业务经常会遇到突发的流量或用户快速增长,如果是自建机房则需要考虑容量问题,而使用ARMS可以根据流量自适应地做扩充,无需担心突发流量带来的性能瓶颈;极端情况下,也可以通过动态配置下推或自动流控降级保障核心功能的可用性;最后,提供了全链路SLA监控和预警的建设,有7*24小时的应急响应,可及时发现可用性问题并快速恢复。

image.png

此外,基于Grafana+ARMS提供了灵活、精细的可视化体验。

 

Grafana丰富的仪表盘插件和广泛的数据源支持,可以将各种数据都集成在一个大盘里。而且通过PromQL、LogQL等灵活的查询语法,不需要前端介入。后端的研发,测试,SRE等可以通过低代码的形式快速构建自己的场景大盘,提升可观测的效率。

 

得益于Grafana的开源属性,如果想从自建机房迁移到云上,或在云之间互相迁移,整个可视化平台都能够通过JSON文件或其他方式快速拷贝,轻松完成端到端的迁移,不会被特定的厂商强绑定。

 

但是Grafana也存在缺陷,比如它在交互场景的体验不够好,因此ARMS在调用链的关联分析、在线诊断、配置管理等强交互的场景提供了更精细化的交互页面。ARMS还会进一步增强Grafana的图表插件,提供新的图表插件以提升托管版Grafana的可视化能力。

相关文章
|
6天前
|
Cloud Native Serverless 开发者
阿里云助力开发者创新:探索云原生技术的新境界
阿里云开发者社区推动云原生技术发展,提供丰富产品(如容器服务、Serverless、微服务架构、服务网格)与学习平台,助力企业数字化转型。开发者在此探索实践,共享资源,参与技术活动,共同创新,共创云原生技术新篇章。一起加入,开启精彩旅程!
306 2
|
6天前
|
弹性计算 自然语言处理 开发工具
基于阿里云向量检索 Milvus 版和 LangChain 快速构建 LLM 问答系统
本文介绍如何通过整合阿里云Milvus、阿里云DashScope Embedding模型与阿里云PAI(EAS)模型服务,构建一个由LLM(大型语言模型)驱动的问题解答应用,并着重演示了如何搭建基于这些技术的RAG对话系统。
|
1天前
|
监控 负载均衡 Java
【阿里云云原生专栏】微服务架构在阿里云云原生平台上的应用实例与优化策略
【5月更文挑战第20天】本文介绍了在阿里云云原生平台实现微服务架构的步骤,包括基于Spring Cloud的Docker化部署、使用ACK部署微服务,以及优化策略:服务发现与负载均衡(借助Istio)和监控日志管理。通过这种方式,企业能提升应用的可扩展性、可维护性和敏捷性。
169 5
|
6天前
|
Cloud Native 安全 数据中心
|
6天前
|
安全 Devops 测试技术
深入了解阿里云云效DevOps:构建高效软件开发实践
阿里云云效DevOps,集成CI/CD与自动化测试,提升开发效率。支持持续集成确保代码质量,自动化测试加速交付,多环境及灰度发布保障安全可靠性。助团队构建高效开发实践,增强竞争力。
22 1
|
6天前
|
NoSQL MongoDB 数据库
国内唯一 阿里云荣膺MongoDB“2024年度DBaaS认证合作伙伴奖”
阿里云连续第五年斩获MongoDB合作伙伴奖项,也是唯一获此殊荣的中国云厂商。一起学习MongoDB副本集的选举机制以及可能会出现的特殊情况。
国内唯一 阿里云荣膺MongoDB“2024年度DBaaS认证合作伙伴奖”
|
6天前
|
Prometheus 监控 数据可视化
阿里云可观测 2024 年 4 月产品动态
阿里云可观测 2024 年 4 月产品动态。
|
6天前
|
存储 监控 Apache
查询提速11倍、资源节省70%,阿里云数据库内核版 Apache Doris 在网易日志和时序场景的实践
网易的灵犀办公和云信利用 Apache Doris 改进了大规模日志和时序数据处理,取代了 Elasticsearch 和 InfluxDB。Doris 实现了更低的服务器资源消耗和更高的查询性能,相比 Elasticsearch,查询速度提升至少 11 倍,存储资源节省达 70%。Doris 的列式存储、高压缩比和倒排索引等功能,优化了日志和时序数据的存储与分析,降低了存储成本并提高了查询效率。在灵犀办公和云信的实际应用中,Doris 显示出显著的性能优势,成功应对了数据增长带来的挑战。
查询提速11倍、资源节省70%,阿里云数据库内核版 Apache Doris 在网易日志和时序场景的实践
|
6天前
|
测试技术 块存储 开发者
阿里云块存储团队软件工程实践
本文介绍了阿里云团队软件工程实际开发流程,并简述了开发过程中遇到的一些问题。且附带案例,以及遇到案例中出现的情况应当如何应对。
|
6天前
|
NoSQL Cloud Native Redis
Redis核心开发者的新征程:阿里云与Valkey社区的技术融合与创新
阿里云瑶池数据库团队后续将持续参与Valkey社区,如过往在Redis社区一样耕耘,为开源社区作出持续贡献。
Redis核心开发者的新征程:阿里云与Valkey社区的技术融合与创新