首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何检查Kubernetes中的外部度量数据?

如何检查Kubernetes中的外部度量数据?
EN

Stack Overflow用户
提问于 2020-02-29 22:25:13
回答 2查看 1.6K关注 0票数 1

我使用DirectXMan12/k8s-prometheus-adapte将外部度量从Prometheus推送到Kubernetes。

在推送外部度量之后,如何验证数据是否为k8s?

当我点击kubectl get --raw /api/exexal.emeics.k8s.io/v1beta1\ jq时,我得到了以下结果,但在那之后,我不知道如何获取实际的度量值。

代码语言:javascript
复制
{
  "kind": "APIResourceList",
  "apiVersion": "v1",
  "groupVersion": "external.metrics.k8s.io/v1beta1",
  "resources": [
   {
     "name": "subscription_back_log",
     "singularName": "",
     "namespaced": true,
     "kind": "ExternalMetricValueList",
     "verbs": [
       "get"
     ]
  }]
}
EN

回答 2

Stack Overflow用户

发布于 2020-02-29 22:35:29

例如,您所附加的度量是namespaced: true,假设度量是用于pods的,则可以在

代码语言:javascript
复制
kubectl get --raw "/apis/external.metrics.k8s.io/v1beta1/namespaces/wanted_namepsace/pods/*/subscription_back_log" | jq '.'

(或指定荚名而不是*)

如果您希望HPA读取您的度量,则配置如下(例如)

代码语言:javascript
复制
apiVersion: autoscaling/v2beta1
kind: HorizontalPodAutoscaler
metadata:
  name: your-hpa
spec:
  scaleTargetRef:
    apiVersion: apps/v1
    kind: Deployment
    name: your-pod
  minReplicas: 1
  maxReplicas: 10
  metrics:
  - pods:
      metricName: subscription_back_log
      targetAverageValue: 10000
    type: Pods
票数 1
EN

Stack Overflow用户

发布于 2021-10-07 09:21:03

度量是名称空间的,因此您需要将名称空间添加到URL中。与另一个答案相反,我相信你不需要在URL中包含豆荚。这是一个外部度量。外部度量不与任何kubernetes对象相关联,因此只有名称空间应该足够:

  • /apis/external.metrics.k8s.io/v1beta1/namespaces/<namespace>/<metric_name>

下面是一个适用于我的示例,在我的设置中使用外部度量:

代码语言:javascript
复制
$ kubectl get --raw /apis/external.metrics.k8s.io/v1beta1 | jq                                               
{
  "kind": "APIResourceList",
  "apiVersion": "v1",
  "groupVersion": "external.metrics.k8s.io/v1beta1",
  "resources": [
    {
      "name": "redis_key_size",
      "singularName": "",
      "namespaced": true,
      "kind": "ExternalMetricValueList",
      "verbs": [
        "get"
      ]
    }
  ]
}
代码语言:javascript
复制
$ kubectl get --raw /apis/external.metrics.k8s.io/v1beta1/namespaces/default/redis_key_size

{
  "kind": "ExternalMetricValueList",
  "apiVersion": "external.metrics.k8s.io/v1beta1",
  "metadata": {},
  "items": [
    {
      "metricName": "redis_key_size",
      "metricLabels": {
        "key": "..."
      },
      "timestamp": "2021-10-07T09:00:01Z",
      "value": "0"
    },
    ...
  ]
}
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/60470162

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档