云原生网关的可观测性体系实践

本文涉及的产品
性能测试 PTS,5000VUM额度
应用实时监控服务-可观测链路OpenTelemetry版,每月50GB免费额度
可观测可视化 Grafana 版,10个用户账号 1个月
简介: 云原生网关是阿里云微服务引擎(MSE)下的一款托管类型网关产品,其将传统的流量网关与微服务网关进行了整合,本文将讲述如何基于云原生网关去搭建网关场景的可观测性体系。

概述


可观测性一词来源于控制理论,是指系统可以由其外部输出推断其其内部状态的程度,随着IT行业几十年的发展,it系统的监控,告警,问题排查等领域的逐渐成熟,it行业也将其抽象形成了一整套可观测性工程体系;目前可观测性已不仅仅是一种具体的工具或者技术,它更偏向是一种理念,已成为复杂分布式系统成功管理的关键组成部分,并对系统在运行时提供对其理解、探查以及调度的能力。

云原生网关是阿里云微服务引擎(MSE)下的一款托管类型网关产品,其将传统的流量网关与微服务网关进行了整合,本文将讲述如何基于云原生网关去搭建网关场景的可观测性体系。


网关场景可观测性建设的难点


网关作为业务流量的入口,其可观测性建设与整体业务的稳定性息息相关,同时由于网关的用户使用场景与功能较多,且网络环境也较为复杂,这对网关可观测性建设也带来了很多的难点。下面就针对其中的主要难点分别加以说明。


关注网关可观测性的角色众多

可观测性的核心在于通过观测数据、满足不同角色、对于系统状态的理解需求,网关作为流量入口,业务、研发、SRE等角色都会关注网关的状态,需要在深入理解不同角色需求的前提下才能够完善网关的可观测性体系。如下图,简单描述了整体可观测数据简单的生命周期,观测数据通过 App 生成,经过中间处理环节后进行存储,然后提供查询服务。观测数据服务于不同类型的人群,如产品的用户、业务、研发、SRE,不同的人群通过不同的形态来使用这些数据。

image.png

可观测性的基本生命周期


埋点不够精确,统计消耗大

点位不够准。埋点不难,难的是如何判断哪些数据是符合使用场景的。这就需要设计者有丰富的从业经验,或者在上线的过程中,不断迭代打磨。

统计采集代价高。可观测性的实现,很多时候往往是时间、空间、颗粒度三者之间的权衡。统计的时间粒度太密会造成存储容量的膨胀,统计的时间粒度太粗则不利于定位问题。这都为可观测性的实现带来了难题。


网络环境复杂,  问题排查难度大

在流量网关场景下,由于公网网络环境复杂,网关流量巨大,偶发问题排查难度巨大。

云原生网关可观测性实践


当前业界在可观测性能力建设方面通用的三大支柱:日志事件(Logging),分布式链路追踪(Tracing)以及指标监控(Metrics)。

image.png

指标(Metrics),是一段时间内记录的各个维度的量化信息,用来观察系统的某些状态和趋势;

日志(Logs),是对程序运行过程中产生的一些离散事件的记录;

链路追踪(Traces),是对一次请求从接收到处理完毕整个生命周期内的调用链路的记录;

云原生网关基于此三大支柱建设了云原生网关基础的可观测性能力。


确定网关核心指标,构建可观测性基础

核心指标即能准确描述系统内部运行状况的指标,在云原生网关场景,核心指标即为qps,rt,成功率等能够准确描述网关此时运行状况的指标。云原生网关同时集成了prometheus 与 sls,用户既可以通过网关的访问日志的etl处理获取更加精细准确的数据,也可以通过prometheus获取网关的实时监控。

image.png

基于访问日志进行etl处理后的仪表盘


针对统计采集消耗大的问题,云原生网关将部分采集消耗大的指标使用etl处理访问日志来减少采集消耗,将更需要实时性的统计指标采用程序内埋点的方式来保证实时性。

image.png

云原生网关的grafana大盘


针对不同角色对网关可观测性的不同需求,云原生网关提供了不同维度的数据表现,对于需要进一步精细分析的企业用户,也可以通过sls进一步进行数据加工。


划分系统边界,快速定位问题

网关通常请求量庞大,同时在微服务场景下,调用链路错综复杂,在这样的条件下想确认某一条请求的失败原因是一件困难的事情,针对这一场景,云原生网关对接了开箱即用的ARMS分布式链路追踪服务,同时也支持将trace数据投递到用户自建的skywalking,避免云产品锁定。

image.png

xtrace问题排查


对于未接入链路追踪的用户,云原生网关提供日志明细的详细解释,将请求失败的原因可视化为具体的图表,帮助用户确认问题边界,减少问题排查时的时间,

image.png

失败请求错误原因明细


风险管理定时巡查风险
云原生网关综合用户实例,规格,性能等数据,会给出目前实例存在的风险,并给出改善建议,极大程度上提高了允原生网关实例维护的自动化程度,降低客户使用成本。

image.png

风险管理的自动风险筛查


对云原生网关可观测性的未来规划


目前云原生网关构建了基本的可观测性体系,可视化、监控等能力已经都相对完善。用户可以基于目前的可观测体系来快速发现,定位问题。

image.png

配合业界的发展方向,接下来云原生网关在可观测领域主要有如下规划

  • 就可观测性的三大数据支柱来说,为了解决部署上的跨平台方案冗杂以及数据不互通问题,Metrics、Logs、Traces大一统的可观测性采集框架发展是大势所趋,支持opentelemetry等统一的可观测性框架是接下来的首要工作
  • 在根因分析方面我们也在关注行业最先进算法的动态,持续的探索进行智能根因分析的实践。


相关实践学习
SLB负载均衡实践
本场景通过使用阿里云负载均衡 SLB 以及对负载均衡 SLB 后端服务器 ECS 的权重进行修改,快速解决服务器响应速度慢的问题
负载均衡入门与产品使用指南
负载均衡(Server Load Balancer)是对多台云服务器进行流量分发的负载均衡服务,可以通过流量分发扩展应用系统对外的服务能力,通过消除单点故障提升应用系统的可用性。 本课程主要介绍负载均衡的相关技术以及阿里云负载均衡产品的使用方法。
相关文章
|
8天前
|
运维 Cloud Native 应用服务中间件
阿里云微服务引擎 MSE 及 云原生 API 网关 2025 年 1 月产品动态
阿里云微服务引擎 MSE 面向业界主流开源微服务项目, 提供注册配置中心和分布式协调(原生支持 Nacos/ZooKeeper/Eureka )、云原生网关(原生支持Higress/Nginx/Envoy,遵循Ingress标准)、微服务治理(原生支持 Spring Cloud/Dubbo/Sentinel,遵循 OpenSergo 服务治理规范)能力。API 网关 (API Gateway),提供 APl 托管服务,覆盖设计、开发、测试、发布、售卖、运维监测、安全管控、下线等 API 生命周期阶段。帮助您快速构建以 API 为核心的系统架构.满足新技术引入、系统集成、业务中台等诸多场景需要
阿里云微服务引擎 MSE 及 云原生 API 网关 2025 年 1 月产品动态
|
5天前
|
Cloud Native API 微服务
微服务引擎 MSE 及云原生 API 网关 2025 年 1 月产品动态
微服务引擎 MSE 及云原生 API 网关 2025 年 1 月产品动态。
|
1月前
|
Cloud Native API 微服务
微服务引擎 MSE 及云原生 API 网关 2024 年 12 月产品动态
微服务引擎 MSE 及云原生 API 网关 2024 年 12 月产品动态。
|
1月前
|
运维 Cloud Native 应用服务中间件
阿里云微服务引擎 MSE 及 云原生 API 网关 2024 年 12 月产品动态
阿里云微服务引擎 MSE 面向业界主流开源微服务项目, 提供注册配置中心和分布式协调(原生支持 Nacos/ZooKeeper/Eureka )、云原生网关(原生支持Higress/Nginx/Envoy,遵循Ingress标准)、微服务治理(原生支持 Spring Cloud/Dubbo/Sentinel,遵循 OpenSergo 服务治理规范)能力。API 网关 (API Gateway),提供 APl 托管服务,覆盖设计、开发、测试、发布、售卖、运维监测、安全管控、下线等 API 生命周期阶段。帮助您快速构建以 API 为核心的系统架构.满足新技术引入、系统集成、业务中台等诸多场景需要
150 12
|
1月前
|
负载均衡 容灾 Cloud Native
云原生应用网关进阶:阿里云网络ALB Ingress 全能增强
在过去半年,ALB Ingress Controller推出了多项高级特性,包括支持AScript自定义脚本、慢启动、连接优雅中断等功能,增强了产品的灵活性和用户体验。此外,还推出了ingress2Albconfig工具,方便用户从Nginx Ingress迁移到ALB Ingress,以及通过Webhook服务实现更智能的配置校验,减少错误配置带来的影响。在容灾部署方面,支持了多集群网关,提高了系统的高可用性和容灾能力。这些改进旨在为用户提供更强大、更安全的云原生网关解决方案。
562 20
|
2月前
|
存储 人工智能 调度
容器服务:智算时代云原生操作系统及月之暗面Kimi、深势科技实践分享
容器技术已经发展成为云计算操作系统的关键组成部分,向下高效调度多样化异构算力,向上提供统一编程接口,支持多样化工作负载。阿里云容器服务在2024年巴黎奥运会中提供了稳定高效的云上支持,实现了子弹时间特效等创新应用。此外,容器技术还带来了弹性、普惠的计算能力升级,如每分钟创建1万Pod和秒级CPU资源热变配,以及针对大数据与AI应用的弹性临时盘和跨可用区云盘等高性能存储解决方案。智能运维方面,推出了即时弹性节点池、智能应用弹性策略和可信赖集群托管运维等功能,进一步简化了集群管理和优化了资源利用率。
|
2月前
|
Cloud Native 安全 Java
杭州铭师堂的云原生升级实践
在短短 2-3 年间,杭州铭师堂完整经历了云计算应用的四个关键阶段:从“启动上云”到“全量上云”,再到“全栈用云”,最终达到“精益用云”。也从云计算的第一次浪潮,迈过了第二次浪潮,顺利的进入到了 第三次浪潮 AI + 云。
158 13
|
2月前
|
运维 监控 Cloud Native
云原生之运维监控实践:使用 taosKeeper 与 TDinsight 实现对 时序数据库TDengine 服务的监测告警
在数字化转型的过程中,监控与告警功能的优化对保障系统的稳定运行至关重要。本篇文章是“2024,我想和 TDengine 谈谈”征文活动的三等奖作品之一,详细介绍了如何利用 TDengine、taosKeeper 和 TDinsight 实现对 TDengine 服务的状态监控与告警功能。作者通过容器化安装 TDengine 和 Grafana,演示了如何配置 Grafana 数据源、导入 TDinsight 仪表板、以及如何设置告警规则和通知策略。欢迎大家阅读。
65 0
|
2月前
|
负载均衡 前端开发 应用服务中间件
负载均衡指南:Nginx与HAProxy的配置与优化
负载均衡指南:Nginx与HAProxy的配置与优化
155 3
|
8月前
|
缓存 负载均衡 算法
解读 Nginx:构建高效反向代理和负载均衡的秘密
解读 Nginx:构建高效反向代理和负载均衡的秘密
161 2