前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Kelemetry-Kubernetes全局可观测

Kelemetry-Kubernetes全局可观测

作者头像
tunsuy
发布2023-12-11 13:05:06
1380
发布2023-12-11 13:05:06
举报

背景

作为分布式异步声明式 API,与传统的基于 RPC 的服务相比,Kubernetes 的可解释性较低,因为事件之间没有明确的因果关系;一个对象的变化会间接影响其他对象的变化,过去在 Kubernetes 中进行可观测的尝试要么仅限于单个组件,要么过度侵入单个组件。

于是诞生了kelemetry项目,用于对Kubernetes进行全局的观测监控。

原理

kelemetry以对象操作为监控粒度,区别于传统的以请求操作链路为粒度。因为kelemetry以对象操作为粒度进行span的链接,但是对象的一个操作行为涉及到很多分离的事件操作,因此,kelemetry的可观测数据来源当前主要是两个部分:

  • apiserver的审计日志:Kubernetes apiserver的审计日志以两种不同的方式暴露:日志文件和webhook。一些云提供商实现了自己的审计日志收集方式。为了简化自助提供的集群的部署过程,Kelemetry提供了一个审计webhook,用于接收原生的审计信息,也暴露了插件API以实现从特定厂商的消息队列中消费审计日志。
  • 对象事件:Kelemetry运行一个控制器来监视对象的创建、更新和删除事件,并在接收到审计事件时将其与审计跨度关联起来。

Span链

kelemetry有一个聚合器接受来自数据源的“事件”,其中事件与 K8S 对象关联。递归地调用“链接器”以确定关联对象的“父”对象,从而将跨度放置在与同一祖先对象下的其他事件相同的跟踪下

  • 将审计日志数据转换为相应的span
  • 将事件数据转换为相应的span

最后会聚合所有跨度链接,并将它们发送到可观测server中。

https://github.com/kubewharf/kelemetry/blob/main/docs/DEV.md

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2023-12-05,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 有文化的技术人 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 背景
  • 原理
  • Span链
相关产品与服务
容器服务
腾讯云容器服务(Tencent Kubernetes Engine, TKE)基于原生 kubernetes 提供以容器为核心的、高度可扩展的高性能容器管理服务,覆盖 Serverless、边缘计算、分布式云等多种业务部署场景,业内首创单个集群兼容多种计算节点的容器资源管理模式。同时产品作为云原生 Finops 领先布道者,主导开源项目Crane,全面助力客户实现资源优化、成本控制。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档