问题标签 [metrics-server]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
11 浏览

kubernetes - 核心管道与服务管道。Kubernetes 监控哪个更好?

我同时使用核心管道和服务管道来监控 Kubernetes 集群资源以进行测试。但是我注意到 2 个管道公开的指标之间存在差异。与 Prometheus 公开的指标相比,指标服务器公开的核心管道指标的值相对较低。还有一个类似的事件,我之前在使用节点导出器时注意到,指标服务器显示的值低于实时值,但节点导出器的值更准确。

核心管道 vs 服务管道 Metrics-server 计算

我参考了这 2 份文件和其他一些文件,但没有找到任何原因说明为什么会发生这种情况。

  1. 这是否意味着度量服务器不可靠?
  2. 什么是更好的监控方法?核心管道还是服务管道?
0 投票
2 回答
132 浏览

kubernetes - 如何以 2 秒的轮询间隔获取实时的 kubernetes pod 指标?

我的用例是让 kubernetes pod 的指标每 2 秒可供使用一次。需要在此时间间隔轮询 Pod 以维护健康的控制平面(确定可能阻塞的 Pod 并避免将流量路由到这些端点)。

我现在正在使用 metrics-server,但它并不最适合我的用例。我在这里看到了下面的注释。

Metrics Server 不适用于非自动缩放目的。例如,不要使用它来将指标转发给监控解决方案,或作为监控解决方案指标的来源。在这种情况下,请直接从 Kubelet /metrics/resource 端点收集指标。

多久抓取一次指标?默认 60 秒,可以使用 metric-resolution 标志进行更改。我们不建议将值设置为低于 15s,因为这是 Kubelet 计算的指标的分辨率。

  1. 应该如何直接使用 kubelet 指标端点?我遇到的所有示例 use metrics.k8s.io
  2. 另一种方法是/sys/fs/cgroup/cpu/cpuacct.usage直接从 docker 容器中读取数据,但需要有一个聚合层。应该如何设计这个统计聚合层?

还有其他方法吗?解决我的要求的最佳推荐方法是什么?谢谢。

0 投票
1 回答
243 浏览

kubernetes - Kubernetes 监控指标服务器未启动

我有一个kubeadm带有一个主节点和工作节点的 Kubernetes 集群。

我正在尝试安装 Kubernetes 指标服务器,但不会收集任何内容。指标服务器内的消息是:

如果我正在尝试kubectl top node,那么我会遇到以下问题:

这些是我的 kubernetes 文件:

0 投票
1 回答
38 浏览

kubernetes - 无法在 minikube 上安装 metrics-server

我正在尝试在我的 Kubernetes 集群上安装 metrics-server。但它不会进入 READY 模式。

我是用这种方法安装metrics-server

在此处输入图像描述

安装后,我尝试了其中一些命令,kubectl top pods,kubectl top nodes。但我有一个错误

来自服务器的错误(ServiceUnavailable):服务器当前无法处理请求(获取 pods.metrics.k8s.io)

指标服务器启动失败

在此处输入图像描述

0 投票
1 回答
39 浏览

kubernetes - Kubernetes 指标服务器无法与 Linkerd 一起使用

我有一个指标服务器和一个使用此服务器的水平 pod 自动缩放器,在我的集群上运行。
这工作得很好,直到我将 linkerd-proxies 注入到我的应用程序正在运行的命名空间的部署中。在该命名空间中运行kubectl top pod会导致error: Metrics not available for pod <name>错误。但是,metrics-server pod 的日志中没有任何内容。
metrics-server 显然在其他命名空间中工作正常,因为 top 在每个命名空间中都可以工作,但网格化的命名空间除外。

起初我认为这可能是因为代理的资源请求/限制未设置,但在使用它们运行注入后(kubectl get -n <namespace> deploy -o yaml | linkerd inject - --proxy-cpu-request "10m" --proxy-cpu-limit "1" --proxy-memory-request "64Mi" --proxy-memory-limit "256Mi" | kubectl apply -f -),问题仍然存在。

这是一个已知问题,是否有任何可能的解决方案?

PS:我有一个kube-prometheus-stack在不同的命名空间中运行,这似乎能够从网格 pod 中抓取 pod 指标就好了显示 prometheus 可以收集数据的 grafana 仪表板图像