写点什么

可观测性与原生云监控

  • 2017-11-22
  • 本文字数:1299 字

    阅读完需:约 4 分钟

在近日发表的一篇文章中,Cindy Sridharan概括介绍了可观测性及其与原生云应用程序监控的关系。可观测性是一种理念,包括监控、日志聚合、指标和分布式跟踪,可以实时更深入地观察系统。

Sridharan 的文章基于她就同一个主题所做的 Velocity 演讲。随着微服务、云和容器化架构的出现,我们构建系统的方式变了。在后一种情况下,应用程序是分布式的,而且瞬息万变。底层的基础设施和网络服务愈加健壮,应用程序层需要跟上技术的发展步伐。将来,大多数的故障都将来自应用程序层或者是不同应用程序之间的复杂交互。

这种复杂性增加了把系统状态可视化的难度。虽然出现了新的工具,但尚处于发展阶段。Sridharan 探讨了可观测性的概念以及如何选择恰当的工具洞察现如今的系统。

可观测性是一个最近几年开始在监控社区流行的术语,然而,它并不是一个新事物,而且似乎和它真正的意思有些出入。据Sridharan之前的文章,可以将可观测性视为监控的超集。Twitter 工程团队的文章将可观测性总结为监控、预警/ 可视化、分布式系统跟踪、日志聚合和分析。谷歌致力于简化工具,降低数据聚合成本,标准化整个栈的格式和框架,从而便于跟踪。谷歌最上层的抽象是上下文传播,他们针对每一种语言提供了一个库,或者使用该语言的内置特性。上下文用于在整个栈中传播被称为标签的键- 值对,后续可以把它们用于过滤特定的请求。

预警和统一管理面板是监控的组成部分。按照Sridharan 的说法,可观测性是所有这些再加上(应用程序)性能分析、调试和依赖分析。与监控不同,可观测性和数据挖掘有关,是为了寻找问题的答案,简化信息的访问。监控和故障检测有关,有定义好的故障路径。随着故障模式的增加,确定真正的原因变得非常困难,这是由日益复杂的架构所导致的。而后者已成常态。定义可观测性有不同的方法。例如,白盒监控是指,有一个数据源,可观测性可以视为从数据中挖掘相关信息的能力。

日志、指标和请求跟踪是可观测性的基础。日志为数据(如指标)提供额外的上下文。不过,日志对性能的影响也很大。相比之下,指标的开销是不变的,而且有利于预警。总而言之,日志和指标可以为观察单独的系统提供方便,但是对于穿过多个系统的请求,很难提供其生命周期的信息。跟踪提供了跟踪在各个系统之间传递的请求的能力。后者很难实施,一个原因是应用程序使用的第三方库也需要检测。抽样被用于减少跟踪的开销和存储成本。这里的抽样是指减少收集的信息的数量。其中,磁盘配额及动态调整日志生成速度就是日志记录的一些最佳实践。

关于跟踪技术的发展近况。谷歌发布了 Dapper 论文, Open Zipkin 是以此为基础的开源实现,并导致 OpenTracing 标准的产生。如果应用程序使用了类似 Envoy 项目这样的网格技术,跟踪就简单些。服务网格是一个位于TCP/IP 层之上的网络基础设施层,可以处理可靠请求交付,有时候也实现为一系列网络代理。它简化了动态环境中的服务通信,如使用Kubernetes 编排的容器集群。

在原生云环境中,软件开发和交付可以从采用类似预生产测试、生产测试、有效监控、原始数据(如指标和日志事件)挖掘和动态检测这样的实践收益。

查看英文原文 Observability and the Monitoring of Cloud-Native Applications

2017-11-22 18:002055
用户头像

发布了 1008 篇内容, 共 373.6 次阅读, 收获喜欢 340 次。

关注

评论

发布
暂无评论
发现更多内容

要想后期修改少,代码重构要趁早

华为云开发者联盟

云计算 后端 华为云

异常捕获中finally和return的用法

自由呼吸

Java 11月月更

React源码分析1-jsx转换及React.createElement

goClient1992

React

信息论与编码:随参信道特性

timerring

11月月更 信息论 移动通信

DDD与EDA-核心逻辑提炼方法论

胖子笑西风

Java 架构 DDD 事件驱动 EDA

华夏天信携手华为云开天aPaaS,打造安全、高效、节能的主煤流运输系统

华为云开发者联盟

云计算 后端 华为云

如何在几百万qps的网关服务中实现灵活调度策略

百度Geek说

网关 调度 动态配置 12 月 PK 榜

我们为什么喜欢看疯狂科学家开飞艇?

脑极体

React源码分析3-render阶段(穿插scheduler和reconciler)

goClient1992

React

React源码分析2-深入理解fiber

goClient1992

React

KVC原理与数据筛选

京东科技开发者

后端 数据处理 KV存储引擎 KV查询

React源码解读之React Fiber

flyzz177

React

规则引擎Drools在贷后催收业务中的应用

vivo互联网技术

drools 规则引擎

跨境电商ERP也爆单,分布式新型数据库迎战

OceanBase 数据库

数据库 oceanbase

【React技术】JSX在企业级项目的运用and一个元素渲染demo

恒山其若陋兮

前端 11月月更

JXcore 打包在企业级项目里的合理运用和模块系统以及网络的配置详解【node.js】

恒山其若陋兮

前端 11月月更

EasyRcovery2023绿色免费版U盘数据恢复软件

茶色酒

EasyRcovery2023

2023年 DevOps 七大趋势

SEAL安全

PGL图学习之基于GNN模型新冠疫苗任务[系列九]

汀丶人工智能

图神经网络 GNN 11月月更

云原生微服务治理技术朝无代理架构的演进之路

华为云开发者联盟

云计算 云原生 后端 华为云 微服务治理

Gradle入门了解

派大星

Gradle

Python操作XML文件

度假的小鱼

11月月更 Python操作xml xml与html区别

React源码解读之更新的创建

flyzz177

React

CDH5部署三部曲之三:问题总结

程序员欣宸

大数据 hadoop CDH 11月月更

「Go工具箱」gorilla/sessions包的使用及原理分析

Go学堂

golang 深度思考 个人成长 Web 11月月更

React源码解读之任务调度

flyzz177

React

1000 种兴趣和 1000 个兴趣小组 | 学点战略

赵新龙

TGO鲲鹏会 CTO 战略

1亿条数据批量插入 MySQL,哪种方式最快?

小小怪下士

Java MySQL 程序员

Python基础库-json库

度假的小鱼

11月月更 Python操作json json语法规则

CrossOver2023免费版虚拟机软件安装包下载

茶色酒

CrossOver2023

盘点入职时,那些常见但不合规的操作

石云升

职场 入职 11月月更

可观测性与原生云监控_DevOps & 平台工程_Hrishikesh Barua_InfoQ精选文章