登录
首页 >  Golang >  Go问答

计算 Kubernetes 服务对象的点击次数

来源:stackoverflow

时间:2024-03-18 19:33:28 415浏览 收藏

为了追踪 Kubernetes 服务对象的调用次数,开发者希望在服务资源中添加一个“hitcount”字段,并在每次调用服务时更新该字段。然而,Kubernetes API 中的状态对象在类型中定义,Pod 对象中无法扩展,因此无法直接在 Pod 对象中存储指标。因此,开发者需要考虑使用指标收集和可视化工具,如 Prometheus/Grafana,或由 pod 中的软件直接公开指标的方式来实现这一目标。

问题内容

我正在编写一个自定义 Kubernetes 控制器和资源来跟踪服务对象被调用的次数。这背后的想法是向资源添加一个“hitcount”字段,并在每次调用服务时更新它。 (意味着每次向属于服务一部分的 pod 发出请求时都会更新计数)

这可能吗? kubernetes API 是否可以选择执行此操作?


解决方案


听起来您实际上是在尝试在 kubernetes api 中实现一个指标。但它几乎不是一个控制器。简而言之,控制器是一个在现实世界中持续实现 kubernetes API 中声明的意图的软件。

撇开语义不谈,kubernetes API 中的状态对象是在其类型中定义的。对于 Pod,在撰写此答案时,它是 here,并且它不是可扩展的。因此,您无法真正将指标放入 Pod 对象中。

这自然提出的问题是为什么不使用像 prometheus/grafana 这样的指标收集和可视化所需的东西?

除此之外,您还面临如何公开/收集该指标的问题。 Istio 可以在这里提供帮助,或者 pod 中的软件本身可以公开它的指标(如果可能的话,在我看来这是最好的途径)

到这里,我们也就讲完了《计算 Kubernetes 服务对象的点击次数》的内容了。个人认为,基础知识的学习和巩固,是为了更好的将其运用到项目中,欢迎关注golang学习网公众号,带你了解更多关于的知识点!

声明:本文转载于:stackoverflow 如有侵犯,请联系study_golang@163.com删除
相关阅读
更多>
最新阅读
更多>
课程推荐
更多>