共计 7810 个字符,预计需要花费 20 分钟才能阅读完成。
作者:千山
随着云原生架构开始落地实际,利用架构从单体零碎逐渐转变为微服务,越来越多企业意识到可观测能力曾经成为云原生的基础设施与必备能力。
那么,最近被频频提及的可观测性,相比监控、APM 等名词,区别在哪里?日前,51CTO 特邀阿里云资深技术专家周小帆,围绕可观测技术的演进等议题进行了采访。
为什么须要可观测性?它是云原生时代的必然产物吗?
可观测性不是一个陈腐的名词,云原生时代被再次提及是一个必然的后果。云原生架构所提倡的微服务、DevOps 模式,同时带来了效率、可用性的晋升与复杂度的减少,而加强可观测性成了升高复杂度的惟一伎俩。传统监控伎俩仅仅可能做到问题被动发现,而可观测性则要求不仅发现问题,更对于问题景象背地实质给出清晰解释。可观测性背地指标、日志、事件、链路数据,以及诊断工具的联合应用,为事先预防、事中解决、预先复盘提供了重要决策依据。可观测性是基础设施自动化的基石,优良的可观测性是确保云原生红利高效开释的前提条件。
行业中时常会有“APM 已死,可观测已来”的论调,我不太认同。相同,我认为 APM 的产品状态曾经是在传统监控根底之上做到了”第一波进化“,首次实现了可观测三大支柱(指标、链路、日志)在应用层互相交融的最佳实际。
云原生时代的可观测,是将 APM 产品中的一些经典技术与理念,降级、延长、泛化至整个云的技术架构和组织,促成更严密的协同、笼罩更多场景、施展更大价值。企业数字化转型让业务成败与 IT 基础设施稳定性关联愈发严密,业务在线化凸显了用户体验的重要性。正如其倒退历史,可观测性不是一个陈腐概念,它本来就无处不在。而在云时代,随着散落在各处的可观测数据被一直连贯,小到问题定位发现,平安危险辨认,大到全局老本治理、稳定性治理甚至是业务增长,都依赖于可观测技术和数据,可观测性成为了度量企业 IT 治理程度的重要指标。
大家明天冀望可能失去的“可观测产品”,实际上大部分是在上一代 APM 产品根底之上的“第二波进化”,他们须要具备海量可观测数据的存算能力,以利用为核心,向上关联业务成败与用户体验,向下笼罩基础设施与云服务监控,一站式满足除了 IT 稳定性以外的多种外围诉求。
微服务下可观测面临的挑战
微服务下的可观测能力建设有哪些难点?
零碎的可观测与故障根因剖析作为重要的运维场景,随着零碎架构、资源单位、资源获取形式、通信形式演进过程,遭逢微小挑战。而这些挑战,也在倒逼着可观测相干技术倒退,接下来咱们以微服务举例:
随着 Spring Cloud 和 Dubbo 等常见微服务框架被广泛应用,微服务架构接受程度一直晋升,由最后以机器为外围的云服务器 ECS 上云,到以容器为外围的容器化云原生部署;为了更加麻利,开始以利用为外围的微服务化。在云原生下的微服务可观测次要面临三个挑战:
- 发现难:从云服务器 ECS 到容器 Kubernetes,微服务架构复杂度晋升,观测对象复杂度晋升,监测数据笼罩不全。
- 定位难:随着多种治理能力深刻,可观测要求高,服务框架复杂度减少,技术门槛晋升,数据自身复杂度晋升,数据关联性差。
- 合作差:随着组织角色变动,可观测不只是运维工作。
除此之外,还有微服务配置凌乱,不好梳理;微服务利用上 Kubernetes 之后,呈现线程池满,却找不到起因等一系列问题。因而,微服务可观测要解决在客户端输出申请后,能感知其在各服务间进行采集、传输、解决、存储的状态,进而预测、定位、解决零碎运行过程中呈现故障的问题。而这些问题,阿里巴巴在本身建设可观测体系的过程中也都遭逢过。
阿里巴巴可观测技术摸索之路
阿里外部是基于什么诉求开始构建可观测能力?经验过哪几次重要的迭代?
周小帆:作为最早进行云原生革新的互联网企业,阿里巴巴摸索与实际可观测技术由来已久,并经验过以下几个阶段:
- 第一代 – 一站式:脱胎于阿里巴巴「鹰眼」产品的利用实时监控服务 ARMS 诞生,为企业提供利用性能治理(APM)能力与前端监控、云拨测等数字化体验(DEM)能力;
- 第二代 – 连贯利用:与利用托管与治理产品无缝集成,笼罩观测、平安、业务稳定性等多个刚需场景。
- 第三代 – 超过一站式:1+1+1>3,让阿里云积攒的可观测技术、开源可观测事实标准、客户存量与自研的可观测数据资产做无缝交融,全面拥抱 Prometheus、Grafana、Opentelemetry 等开源规范,打造云原生时代残缺可观测数据生态与产品套件—阿里云可观测套件。
第一代:脱胎于阿里巴巴「鹰眼」产品的利用实时监控服务 ARMS 诞生
关键词:从单体走向微服务,自下而上的爆发式增长
2013 年,随着阿里巴巴业务疾速倒退,利用从单体走向微服务,微服务体系催生进来中心化组织架构,产生自下而上的爆发式增长,并疾速向 DevOps 模式演进,工程师们以自助模式向根底软件寻找更多答案。也是从这个阶段开始,监控走向“可观测”的畅想已初备雏形。对立 PaaS 层疾速催生对立可观测基础设施,但微服务下的可观测能力建设初期遇到以下两个难点:指标基数发散、微服务拆分过细、埋点精度一直回升等因素带来的“单笔交易可观测老本”的急剧回升;三代探针技术与管控体系演进带来的可观测数据起源品质问题,以及大规模探针管控与稳定性保障。
关键词:业务中台背地的数字化经营,引领自上而下的稳定性治理体系
与此同时,随着业务中台诞生,为了更好的应答季节性电商大促、多变的业务状态,服务治理、混沌工程等产品诞生进去,碎片化的可观测能力逐步被整合在一起,引领自上而下的稳定性治理体系,构建以业务 SLO 为外围的稳定性治理体系。
通过日志链路指标和诊断工具的整合,阿里巴巴外部 APM 产品的实用性失去大幅晋升,被大家所熟知的「鹰眼」雏形初现。观测能力和管控能力相交融:全链路灰度包含像全链路、灰度、全链路压测、混沌工程这样的简单治理伎俩,包含像容量评估,微服务之间的强弱依赖评估这样的剖析场景,都充沛集成到现有可观测能力中。并在此阶段以利用为核心,以管控集成、畛域常识积攒为主,让数据在一些关闭场景内可能实现价值最大化。
2017 年,阿里巴巴将外部锻炼多年的监控工具对外服务,利用实时监控服务 ARMS 正式商业化。作为云原生一体化可观测性平台,ARMS 提供全栈式性能监控和端到端全链路追踪诊断能力。同时,联合阿里云日志服务 SLS 的日志数据分析能力以及云监控丰盛的云服务与基础设施监控能力,用户能够轻松实现用户体验、应用服务、云产品、容器的一站式监控。
第二代:与利用托管与治理产品无缝集成,笼罩观测、平安、业务稳定性等多个刚需场景
随同着企业放慢数字化转型步调,导致 IT 零碎更新频繁,利用复杂度急剧升高。微服务、容器化等技术也逐步在传统企业中衰亡,而云服务也成为企业大规模经营数字业务所必备的技术服务。以用户体验为外围的利用性能治理 (APM) 受到宽泛关注,并在帮忙企业实现数字化转型及智能化运维的路线上体现出微小的价值。体验为王时代催生向上笼罩业务连续性,向下连贯基础设施稳定性的一体化可观测产品状态。
为了进一步提供更加欠缺的产品能力,继 2017 年公布前端监控,2021 年阿里云推出云拨测产品。从用户端角度来观测零碎可用性,为云上用户提供开箱即用的企业级被动式及被动拨测式利用监测解决方案,为用户体验优化提供松软、牢靠的可观测剖析工具。
第三代:让阿里云积攒的可观测技术、开源可观测事实标准、客户存量与自研的可观测数据资产做无缝交融
可观测需要在云原生时代的爆发式增长,以及基础设施的标准化,使得可观测开源、商业化我的项目不断涌现,国内可观测市场心智逐步形成,Prometheus、Grafana、Opentelemetry 等可观测规范也逐步造成。
也正基于此,阿里云接连推出 Prometheus 监控服务、Grafana 服务等可观测产品,并于 6 月推出阿里云可观测套件 ACOS,进一步整合阿里云相干可观测产品与场景,帮忙企业提供更丰盛、更残缺的可观测能力,共事大幅节俭搭建可观测零碎的资源和运维开销。
目前应用阿里云可观测产品套件的具体落地场景有哪些?
周小帆:得益于云原生开源生态蓬勃发展,工程师能够轻而易举地建设一套监控体系,比方应用 Prometheus+Grafana 搭建根底监控,或应用 SkyWalking 或 Jaeger 搭建追踪零碎,亦或应用 ELK 或 Loki 搭建日志零碎。可观测技术百花齐放,导致目前面临最大问题不在于性能缺失,而在于数据的割裂。对运维团队而言,不同类型可观测数据扩散存储在不同后端,排查问题仍需在多零碎之间跳转,效率得不到保障。
明天的客户,不得不在商业化可观测产品、开源自建与存量的可观测资产之间做出艰巨抉择。
解决这种割裂的形式有两种,一种形式是打造全自研的一站式可观测产品,替换客户现有计划。但历史实际通知咱们,一站式的计划往往会造成另一座数据孤岛。
因而,咱们走了另一条路线:向下,提供标准化数据接口,整合阿里云上碎片化的可观测产品,并做到能够连贯客户存量的可观测数据资产;向上,提供可自在定制的产品界面,帮忙客户造成本人独有的、1+1+1>3、无厂商锁定的可观测解决方案。阿里云可观测套件,从可观测体系设计视角,全面满足企业不同观测场景:
- 针对于基础设施层
Prometheus 监控服务对包含云服务器 ECS、容器 Kubernetes、VPC 在内的各类云服务以及音讯队列等三方中间件进行观测。并与各种云服务疾速联动,迅速进行扩缩容或负载平衡,从而更快的解决问题。
- 针对应用层
基于阿里云自研 Java 探针的利用监控全面满足利用监控需要。相较于开源工具,在数据品质、探针性能、剖析能力等方面具备大幅强化。即便应用开源 SDK 或探针,也能够通过 Opentelemetry 将数据上报到利用监控平台。
- 针对用户体验层
通过挪动监控、前端监控、云拨测等模块,全面笼罩用户在不同终端上的体验与性能。
- 对立告警与治理
对于各层采集的数据、告警信息进行对立告警以及根因剖析,间接通过 Insight 出现发现后果。并集成钉钉、企业微信等合作平台更加高效地进行问题发现并解决跟踪。
- 对立界面
不论是利用实时监控服务 ARMS、Prometheus 监控的上报数据,还是日志服务、Elasticsearch、MongoDB 等各种数据源,都能够通过全托管 Grafana 服务进行对立的数据可观测数据出现,建设对立的监控大盘。
阿里云对可观测的思考
阿里云可观测产品相较市场上的同类产品,独创性和差异化劣势在哪里?
Gartner 曾预测,2023 年寰球可观测市场规模预计将达到 164.94 亿美元。2024 年将有 30% 企业会通过可观测技术来晋升数字化业务运行性能。热潮之下,不论是老牌厂商、初创公司都在可观测畛域迸发出强劲的产品能力。相较市场上的同类产品,阿里云也有着本人思考与差异化劣势。与泛滥第三方服务或开源自建计划不同,阿里云可观测套件实现多层次连贯,全面突破数据孤岛,开掘数据背地的业务价值。
第一,向上造成兼容开源规范的对立观测界面
与利用实时监控服务 ARMS 的应用层监控(APM)、前端体验监控(RUM)、基于 eBPF 技术的 K8s 监控、云监控等阿里云自研可观测产品双向连贯,将可观测数据与剖析能力以凋谢规范(PromQL)、对立凋谢界面(Grafana)的模式提供给用户,便于用户的再集成与二次加工。ARMS 也全面反对 OpenTelemetry SDK 进行自定义埋点的加强。
第二,向下连贯阿里云可观测数据存储类产品
对立诸如日志服务 SLS、Elasticsearch 服务等可观测数据存储,以及散落在异构数据存储设施中(如 Clickhouse、Lindorm、RDS)的可观测数据,实现可观测数据源治理与异构数据间无缝摸索。
第三,横向连贯阿里云所有利用管控产品与中间件产品
阿里云所有利用管控(Serverless 利用引擎 SAE、容器服务 ACK、函数计算 FC、企业级分布式应用服务 EDAS 等)与中间件产品全面拥抱开源可观测规范,并与可观测套件进行连贯。目前,已有超过 50 款阿里云云服务通过 Prometheus 规范进行观测。
第四、全面拥抱开源
阿里云作为国内可观测畛域的引领者,踊跃拥抱开源生态,提供 Prometheus 监控服务、Grafana 服务、兼容 OpenTelemetry、Skywalking 等支流开源协定的链路追踪服务,独特造成新一代阿里云可观测套件。应用标准化技术向下连贯存量、碎片化可观测数据,向上帮忙客户造成本人独有、无厂商锁定的可观测解决方案,实现真正的客户胜利。
第五、打造可观测数据生态
自 2017 年与 Elastic 公司单干打造 Elasticserach 服务后,阿里云先后与 Grafana Labs、博睿数据、谐云、袋鼠云等企业达成策略单干,与阿里云自研可观测体系无缝集成,把引领业界规范的优良产品与技术服务带给阿里云的海量客户,提供更丰盛、优质、低门槛的可观测服务与能力。
是否联合具体用户案例对于阿里云可观测产品的部署和实际成果予以阐明
以 2022 年北京冬奥会举例,作为历史上第一届外围零碎全面上云的奥运会。依靠阿里云的政务云与私有云的 40 多款产品与服务,实现冬奥会官网 App 冬奥通、新闻发布会零碎、较量记时记分零碎、运动员评论零碎等 30+ 利用全面上云。为了对云上资源进行多维度采集与观测,满足北京冬奥会赛事期间现场值班人员对云上资源整体运行危险的提前预知,以及故障时疾速定位、诊断问题需要。阿里云根据冬奥组委业务特点,从三个档次对观测指标进行选取:
- 应用层监控
服务每秒接管的申请数、每个申请的耗时、失败的申请数等应用层技术参数。
- 根底资源监控
云服务器 ECS CPU 利用率、内存利用率、磁盘空间,POD CPU 利用率、内存利用率、磁盘空间,RDS CPU 使用率、内存使用率、IOPS 使用率、磁盘空间,Redis CPU 使用率、内存使用率, CSG 前端读写速率、共享缓存使用率、用户态空间使用率、Trottling 状态。
- 网络层监控
带宽状况、沉闷连接数、限速丢包率、专线健康检查丢包率等外围网络参数。
基于以上需要,冬奥组委抉择阿里云可观测套件来构建整个可观测体系。北京冬奥组委业务零碎分为生产环境和测试环境,重点对生产环境进行监控。在构建信息系统总体监控大盘时,首先基于 Tag 编写 PromSQL 语法提取出生产环境的资源;同时思考到 ECS、RDS、Redis、SLB 等资源数量很多,再重点对 TOP 10 资源应用状况进行观测以便更好的发现危险,晋升服务的可用性。同时,对于北京冬奥会赛事运行期间重要的业务零碎,像问题零碎、评论员讲解零碎等每个要害信息系统都构建独自 Grafana 监控大盘。对 SLB 流量、QPS 使用率、HTTP 申请不同返回状态码重点监控。
因为冬奥通后盾利用为 Java 系微服务架构,且蕴含近千个 Kubernetes Deployment 利用实例,为了更好对容器服务集群及其下面运行的利用进行一体化监控,冬奥组委基于利用实时监控服务 ARMS 的 Prometheus 构建容器集群监控大盘。在同一张大盘上看到多个数据源,包含集群事件日志、基于 eBPF 无侵入式的利用指标、网络指标等。冬奥组委通过一张大盘的关联剖析逻辑,从总览到细节,通过多数据源、多角度的可观测能力进行不同维度的排查。
基于阿里云可观测套件,冬奥组委在最短时间内疾速搭建一套残缺的可观测体系,为奥林匹克国内官网、奥林匹克频道 OCS、奥林匹克播送服务公司 OBS 等,涵盖较量场馆票务、新闻发布会零碎、冬奥会官网 App 冬奥通、播送数据推送、自动化媒体标注、国内实时信号转播、数据仓库、人员抵离 ADS、网约车出行 RHP 等泛滥业务场景保驾护航,保障北京冬奥会顺利举办。
在历经寰球级我的项目大考之外,阿里云可观测产品矩阵凭借其齐备的性能、良好的生态集成能力以及杰出的老本劣势,播种了行业的认可。阿里云利用实时监控服务 ARMS 在往年取得了中国信通院的可观测产品先进级认证,阿里云间断两年进入 Gartner APM 与可观测魔力象限,往年更是成为了惟一入选的中国企业。在 Forrester 的容器、Serverless 产品能力评测中,可观测相干的产品能力分数也失去了满分认证。
可观测畛域七大技术与利用趋势
可观测能力未来有标准化的可能吗?从监控到可观测性,运维转型的整体趋势出现什么样的态势?
在可预感的将来,可观测畛域将造成肯定意义的标准化。各大厂商、开源我的项目都在推动规范的对立。首先是指标,Prometheus 作为云原生时代指标数据规范曾经造成共识;链路规范也随着 OpenTracing 和 OpenTelemetry 的推广而逐步占据支流;在日志畛域,尽管其数据结构化水平较低难以造成数据规范,但采集存储剖析侧涌现出 Fluentd、Loki 等开源新秀;另一方面,Grafana 作为可观测数据展现规范也更加清朗。但规范尽管对立,但咱们也要看到基于统一标准的开源撕裂水平比设想得更为惨烈。
同时,在标准化之外,咱们看到可观测畛域可预感的七大技术与利用趋势:
- 构建以利用为核心的观测视角:以利用为单位关联指标、链路与日志。利用逐步成熟的 eBPF 探针技术疾速实现全局利用可观测,无侵入利用探针为主 + OpenTelemetry 为辅实现代码级可观测能力。
- 聚焦业务成败与用户体验:精准度量用户体验,关联业务成败。前后端可观测数据买通,实现业务全链路疾速问题定位。
- 连贯利用管控链路:与运维变更管控体系严密连接,实现监 - 管 - 控一体化能力。交融平安治理与可观测技术,全面升高 IT 危险。集成混沌工程、性能测试,数据驱动稳定性治理常态化。
- 突破部门墙,建设高效协同机制:建设以 SLO 驱动的应急响应体系,引入 ChatOps 机制,实现去中心化协同。借助数据标签体系疾速构建团队及集体可观测视图。
- 标准化指标监测体系建设:围绕 Prometheus 生态构建新一代可观测基础设施,拥抱分布式云架构,建设全局指标监控体系。聚焦指标品质而非数量,继续治理监控体系的有效性。
- 对立可观测界面:“Unify your data, not your database”,借力 Grafana 可视化体系实现异构存储的对立出现。
展望未来,阿里云认为“观测力”将成为云计算时代每个工程师的外围竞争力。阿里云上越来越多云服务通过支流开源规范将本身运行状态充沛白盒化,更好地被云服务使用者集成。工程师们将逐渐驳回 Monitoring as code 的形式,实现可观测左移。相比以往,可观测能力构建将成为编写业务逻辑与施行运维自动化的关键环节。
作为管理者,通过可观测技术辅助研发运维的效力治理、IT 老本剖析将逐步成为必备技能;同时管理者也会逐渐借力可观测数据,数字化驱动团队成员之间的合作与沟通,以及用于辨认企业平安危险。
万物皆可云的时代,可观测性让云变得更易用。可观测的微小价值正在逐渐兑现,咱们从监控走进可观测,但不仅仅止步于观测,剖析、洞察并实现高质量的决策与业务翻新才是观测的最终目标,阿里云也将一直提供这个畛域优质的产品与服务。
嘉宾介绍:阿里云资深技术专家,目前就任于阿里云云原生利用平台,负责阿里团体 APM 零碎鹰眼 (EagleEye) 与阿里云利用实时监控服务 (ARMS) 等技术产品。在可观测相干畛域有超过九年的实战经验,在分布式链路追踪、日志解决平台和监控告警零碎的建设与利用有丰盛教训。其余技术相干的教训蕴含微服务治理、分布式数据处理、利用 PaaS 等。