无法在Windows Kubernetes节点上获取cAdvisor容器指标

时间:2020-03-16 18:51:08

标签: windows prometheus cadvisor

我已经配置了混合节点Kubernetes集群。两个工作程序节点是Unbuntu Server 18.04.4,两个工作程序节点是Windows Server 2019 Standard。我已经为每个工作节点集(Ubuntu上的.NET Core应用程序和Windows上的旧版WCF应用程序)部署/部署了多个Docker容器。一切似乎都如广告所示。

我现在要监视吊舱/容器的资源。我已经部署了Prometheus,kube-state-metrics,metrics-server。我让Prometheus报废了节点。对于容器指标,kubelet / cAdvisor从Ubunutu节点返回我需要的所有内容,例如“ container_cpu_usage_seconds_total,container_cpu_cfs_throttled_seconds_total等”。但是Windows节点的kubelet / cAdvisor仅给我一些基本信息:

http://localhost:8001/api/v1/nodes/[WINDOWS_NODE]/proxy/metrics/cadvisor

# HELP cadvisor_version_info A metric with a constant '1' value labeled by kernel version, OS version, docker version, cadvisor version & cadvisor revision.
# TYPE cadvisor_version_info gauge
cadvisor_version_info{cadvisorRevision="",cadvisorVersion="",dockerVersion="",kernelVersion="10.0.17763.1012",osVersion="Windows Server 2019 Standard"} 1
# HELP container_scrape_error 1 if there was an error while getting container metrics, 0 otherwise
# TYPE container_scrape_error gauge
container_scrape_error 0
# HELP machine_cpu_cores Number of CPU cores on the machine.
# TYPE machine_cpu_cores gauge
machine_cpu_cores 2
# HELP machine_memory_bytes Amount of memory installed on the machine.
# TYPE machine_memory_bytes gauge
machine_memory_bytes 1.7179398144e+10

因此,尽管Ubuntu节点上的cAdvisor提供了我想要的有关容器的更多信息,但Windows节点上的cAdvisor仅提供了我上面的信息。

我已经检查了在Windows节点上安装/配置kubelet的Powershell脚本,但是看不到/不了解如果缺少一个神奇的设置(可以使容器指标能够进行配置)时如何配置开关或配置文件。在废弃kubelet / cAdvisor时发布。有什么建议吗?

1 个答案:

答案 0 :(得分:3)

有metrics / resource / v1alpha1端点。但它仅提供4个基本指标。 Documentation

我认为cAdvisor不能正确支持Windows节点,您看到的只是n个模拟界面,指标有限 Github issue