从 Kubernetes 获取自定义指标 pods
Geting custom metrics from Kubernetes pods
我正在研究 Kubernetes Heapster 和 Metrics-server 以从 运行 pods 获取指标。但问题是,我需要一些自定义指标,这些指标可能因 pod 而异,显然 Heapster 仅提供 cpu 和内存相关指标。是否已经有任何工具可以提供我想要的功能,或者我是否需要从头开始构建一个?
您正在寻找的是特定于应用程序和基础架构的指标。为此,TICK 堆栈可能会有所帮助!具体来说,Telegraf 可以设置为收集详细的基础设施指标,例如内存和 CPU 压力,甚至是单个 docker 容器使用的资源、网络和 IO 指标等...但它也可以抓取 Prometheus 指标来自 pods。然后将这些指标发送到 influxdb,并使用 chronograph 或 grafana 进行可视化。
不确定这是否仍然开放。
我会将指标分为 3 种类型。
事件或日志 - 发送到日志的系统和应用程序事件。这些是不确定的。
指标 - CPU 和托管应用程序的节点上的内存利用率。这是确定性的,会定期收集。
APM - 应用程序性能监控指标 - 这些是应用程序级别的指标,例如收到的请求、失败的请求和已响应的请求等。
并非所有平台都可以做所有事情。例如,ELK 同时执行指标和日志监控,但不执行 APM。其中一些工具有收集节点性能指标的收集守护进程的插件。
APM 是一个完全不同的领域,因为它需要开发人员工具来提供指标,就像 Springboot 提供 Actuator、Nodejs 提供 AppMetrics 等一样。这承载了请求级别的数据。 Statsd 是一个开源库,应用程序可以使用它来提供 APM 指标,也可以在节点中安装 Statsd 代理。
AWS 提供用于日志传送和接收器的 CloudWatch 代理以及用于分布式跟踪的 Xray,可用于 APM。
我正在研究 Kubernetes Heapster 和 Metrics-server 以从 运行 pods 获取指标。但问题是,我需要一些自定义指标,这些指标可能因 pod 而异,显然 Heapster 仅提供 cpu 和内存相关指标。是否已经有任何工具可以提供我想要的功能,或者我是否需要从头开始构建一个?
您正在寻找的是特定于应用程序和基础架构的指标。为此,TICK 堆栈可能会有所帮助!具体来说,Telegraf 可以设置为收集详细的基础设施指标,例如内存和 CPU 压力,甚至是单个 docker 容器使用的资源、网络和 IO 指标等...但它也可以抓取 Prometheus 指标来自 pods。然后将这些指标发送到 influxdb,并使用 chronograph 或 grafana 进行可视化。
不确定这是否仍然开放。
我会将指标分为 3 种类型。
事件或日志 - 发送到日志的系统和应用程序事件。这些是不确定的。
指标 - CPU 和托管应用程序的节点上的内存利用率。这是确定性的,会定期收集。
APM - 应用程序性能监控指标 - 这些是应用程序级别的指标,例如收到的请求、失败的请求和已响应的请求等。
并非所有平台都可以做所有事情。例如,ELK 同时执行指标和日志监控,但不执行 APM。其中一些工具有收集节点性能指标的收集守护进程的插件。
APM 是一个完全不同的领域,因为它需要开发人员工具来提供指标,就像 Springboot 提供 Actuator、Nodejs 提供 AppMetrics 等一样。这承载了请求级别的数据。 Statsd 是一个开源库,应用程序可以使用它来提供 APM 指标,也可以在节点中安装 Statsd 代理。
AWS 提供用于日志传送和接收器的 CloudWatch 代理以及用于分布式跟踪的 Xray,可用于 APM。