Hpa 未获取现有自定义指标?

2023-11-29

我在用着mongodb-exporter用于存储/查询指标prometheus。我已经设置了一个自定义指标服务器并为其存储值。

这就是证据prometheus-exporter and custom-metric-server作品兼容。

Query:

kubectl get --raw "/apis/custom.metrics.k8s.io/v1beta1/namespaces/monitoring/pods/*/mongodb_mongod_wiredtiger_cache_bytes"

Result:

{"kind":"MetricValueList","apiVersion":"custom.metrics.k8s.io/v1beta1","metadata":{"selfLink":"/apis/custom.metrics.k8s.io/v1beta1/namespaces/monitoring/pods/%2A/mongodb_mongod_wiredtiger_cache_bytes"},"items":[{"describedObject":{"kind":"Pod","namespace":"monitoring","name":"mongo-exporter-2-prometheus-mongodb-exporter-68f95fd65d-dvptr","apiVersion":"/v1"},"metricName":"mongodb_mongod_wiredtiger_cache_bytes","timestamp":"TTTTT","value":"0"}]}

就我而言,当我从 mongo 导出器为此自定义指标创建 hpa 时,hpa 会向我返回此错误:

failed to get mongodb_mongod_wiredtiger_cache_bytes utilization: unable to get metrics for resource mongodb_mongod_wiredtiger_cache_bytes: no metrics returned from resource metrics API

我的案件的主要问题是什么?我已经检查了所有配置,流程看起来不错,但我的错误在哪里。

Help

谢谢 :)


在评论中您写道您已启用external.metrics,但是在最初的问题中你遇到了问题custom.metrics

简而言之:

  • metrics仅支持基本指标,如 CPU 或内存。
  • custom.metrics允许您将基本指标扩展到所有 Kubernetes 对象(http_requests、pod 数量等)。
  • external.metrics允许收集不是 Kubernetes 对象的指标:

外部指标允许您根据任何情况自动缩放集群 您的监控系统中可用的指标。只需提供一个指标 具有名称和选择器的块,如上所述,并使用外部指标 类型而不是对象

更详细的描述请查看this doc.

Minikube

验证是否custom.metrics已启用,您需要执行下面的命令并检查是否可以看到任何metrics-server... pod.

$ kubectl get pods -n kube-system
...
metrics-server-587f876775-9qrtc    1/1     Running   4          5d1h

第二种方法是检查是否minikube已启用metrics-server by

$ minikube addons list
...
- metrics-server: enabled

如果它被禁用,只需执行

$ sudo minikube addons enable metrics-server
✅  metrics-server was successfully enabled

GKE

目前在 GKEheapster and metrics-server默认打开,但是custom.metrics默认不支持。 你必须安装prometheus adapter or stackdriver.

Kubeadm

Kubeadm 不包括heapster or metrics server一开始。为了方便安装,您可以使用这个 YAML.

稍后你必须安装prometheus adapter.

应用自定义指标

对于Minikube, Kubeadm, GKE.

最简单的申请方式custom.metrics是安装普罗米修斯适配器 via Helm.

安装helm后你将可以看到注释:

NOTES:
my-release-prometheus-adapter has been deployed.
In a few minutes you should be able to list metrics using the following command(s):

  kubectl get --raw /apis/custom.metrics.k8s.io/v1beta1

作为附加信息,您可以使用jq获得更用户友好的输出。

kubectl get --raw /apis/custom.metrics.k8s.io/v1beta1 | jq .

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Hpa 未获取现有自定义指标? 的相关文章

随机推荐