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

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

作者:井轶


概述


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


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

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


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

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


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


1.png

可观测性的基本生命周期


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


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


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


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


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


云原生网关可观测性实践


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


2.png

  • 指标(Metrics),是一段时间内记录的各个维度的量化信息,用来观察系统的某些状态和趋势 
  • 日志(Logs),是对程序运行过程中产生的一些离散事件的记录 
  • 链路追踪(Traces),是对一次请求从接收到处理完毕整个生命周期内的调用链路的记录 


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


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


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


3.png

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


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


4.png

云原生网关的 Grafana大盘


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


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


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


5.png


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


6.png

失败请求错误原因明细


风险管理定时巡查风险


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


7.png

风险管理的自动风险筛查


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


目前云原生网关构建了基本的可观测性体系,数可视化、监控等能力已经都相对完善。


用户可以基于目前的可观测体系来快速发现,定位问题。


8.png

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


  • 就可观测性的三大数据支柱来说,为了解决部署上的跨平台方案冗杂以及数据不互通问题,Metrics、Logs、Traces 大一统的可观测性采集框架发展是大势所趋,支持 opentelemetry 等统一的可观测性框架是接下来的首要工作 


  • 在根因分析方面我们也在关注行业最先进算法的动态,持续的探索进行智能根因分析的实践。


9.png

相关实践学习
SLB负载均衡实践
本场景通过使用阿里云负载均衡 SLB 以及对负载均衡 SLB 后端服务器 ECS 的权重进行修改,快速解决服务器响应速度慢的问题
负载均衡入门与产品使用指南
负载均衡(Server Load Balancer)是对多台云服务器进行流量分发的负载均衡服务,可以通过流量分发扩展应用系统对外的服务能力,通过消除单点故障提升应用系统的可用性。 本课程主要介绍负载均衡的相关技术以及阿里云负载均衡产品的使用方法。
相关文章
|
5天前
|
Cloud Native API
微服务引擎 MSE 及云原生 API 网关 2024 年 9 月产品动态
微服务引擎 MSE 及云原生 API 网关 2024 年 9 月产品动态。
|
1天前
|
运维 Cloud Native 持续交付
云原生架构的演进与实践####
【10月更文挑战第16天】 云原生,这一概念自提出以来,便以其独特的魅力和无限的可能性,引领着现代软件开发与部署的新浪潮。本文旨在探讨云原生架构的核心理念、关键技术及其在实际项目中的应用实践,揭示其如何帮助企业实现更高效、更灵活、更可靠的IT系统构建与管理。通过深入剖析容器化、微服务、持续集成/持续部署(CI/CD)等核心技术,结合具体案例,本文将展现云原生架构如何赋能企业数字化转型,推动业务创新与发展。 ####
80 47
|
1天前
|
Kubernetes Cloud Native 持续交付
云计算的转型之路:云原生技术的崛起与实践####
【10月更文挑战第16天】 本文深入探讨了云原生技术在现代IT架构变革中的核心作用,不同于传统概述,本摘要将聚焦于云原生如何促进企业实现敏捷开发、弹性伸缩及高效运维,通过具体案例分析展现其在实际业务场景中的创新应用,揭示这一技术趋势对企业数字化转型的深远影响。 ####
13 2
|
2天前
|
负载均衡 监控 Cloud Native
云原生架构下的微服务治理策略与实践####
在数字化转型加速的今天,云原生技术以其高效、灵活、可扩展的特性成为企业IT架构转型的首选。本文深入探讨了云原生环境下微服务治理的策略与实践路径,旨在为读者提供一个系统性的微服务治理框架,涵盖从服务设计、部署、监控到运维的全生命周期管理,助力企业在云端构建更加稳定、高效的业务系统。 ####
|
9天前
|
人工智能 Cloud Native 安全
从云原生到 AI 原生,网关的发展趋势和最佳实践
本文整理自阿里云智能集团资深技术专家,云原生产品线中间件负责人谢吉宝(唐三)在云栖大会的精彩分享。讲师深入浅出的分享了软件架构演进过程中,网关所扮演的各类角色,AI 应用的流量新特征对软件架构和网关所提出的新诉求,以及基于阿里自身实践所带来的开源贡献和商业能力。
|
6天前
|
敏捷开发 运维 Cloud Native
云端新篇章:云原生技术的崛起与实践
在数字化转型的浪潮中,云原生技术以其独特的优势成为企业实现敏捷开发、弹性扩展和高效运维的关键驱动力。本文将深入探讨云原生的概念、核心组件及其在不同行业的应用案例,揭示其如何赋能业务创新,引领云计算进入新纪元。
|
2天前
|
Cloud Native 持续交付 云计算
云原生技术在现代软件开发中的实践与挑战####
【10月更文挑战第15天】 本文深入探讨了云原生技术的定义、核心组件及其在现代软件开发中的应用,并分析了企业在实施过程中面临的主要挑战及应对策略。通过案例分析,揭示了云原生架构如何助力企业实现敏捷开发、高效运维和成本优化,同时指出了安全性、人才短缺和多云管理等关键问题,为读者提供了全面的理解和实用的建议。 ####
13 1
|
3天前
|
运维 监控 Cloud Native
云原生架构下,微服务治理的艺术与实践####
【10月更文挑战第14天】 在数字化转型的大潮中,云原生技术以其高效、灵活与可扩展性成为企业IT架构的首选。本文深入探讨了云原生架构的核心理念,聚焦于微服务治理的策略与实践,揭示了如何通过精细化管理提升系统的响应速度、稳定性和可维护性。不同于传统的摘要概述,本文摘要旨在直接触及读者关注的核心——即如何在复杂多变的云环境中,实现微服务的高效协同与治理,为读者提供一个清晰的行动指南。 ####
12 1
|
10天前
|
运维 Cloud Native 应用服务中间件
阿里云微服务引擎 MSE 及 云原生 API 网关 2024 年 09 月产品动态
阿里云微服务引擎 MSE 面向业界主流开源微服务项目, 提供注册配置中心和分布式协调(原生支持 Nacos/ZooKeeper/Eureka )、云原生网关(原生支持Higress/Nginx/Envoy,遵循Ingress标准)、微服务治理(原生支持 Spring Cloud/Dubbo/Sentinel,遵循 OpenSergo 服务治理规范)能力。API 网关 (API Gateway),提供 APl 托管服务,覆盖设计、开发、测试、发布、售卖、运维监测、安全管控、下线等 API 生命周期阶段。帮助您快速构建以 API 为核心的系统架构.满足新技术引入、系统集成、业务中台等诸多场景需要
|
9天前
|
Kubernetes Cloud Native 微服务
探索云原生:从理论到实践
【10月更文挑战第8天】本文将带你深入了解云原生技术,从其核心概念和优势出发,逐步过渡到如何实际应用这些理念。我们将通过一个实际的代码示例,展示如何在云平台上部署和管理容器化应用,从而帮助你更好地理解云原生架构的实际应用价值。
19 0