Адаптер Prometheus возвращает пустые пользовательские метрики

Настроив правило метрики в адаптере prometheus, я вижу ресурсы следующим образом.

kubectl get --raw="/apis/custom.metrics.k8s.io/v1beta1" | jq .
{
  "kind": "APIResourceList",
  "apiVersion": "v1",
  "groupVersion": "custom.metrics.k8s.io/v1beta1",
  "resources": [
    {
      "name": "pods/istio_ai_retry_per_second",
      "singularName": "",
      "namespaced": true,
      "kind": "MetricValueList",
      "verbs": [
        "get"
      ]
    },
    {
      "name": "namespaces/istio_ai_retry_per_second",
      "singularName": "",
      "namespaced": false,
      "kind": "MetricValueList",
      "verbs": [
        "get"
      ]
    }
  ]
}

Но когда я пытаюсь получить значения метрик. Предметы пустые.

kubectl get --raw="/apis/custom.metrics.k8s.io/v1beta1/namespaces/aiservice-test/pods/*/istio_ai_retry_per_second" | jq .
{
  "kind": "MetricValueList",
  "apiVersion": "custom.metrics.k8s.io/v1beta1",
  "metadata": {
    "selfLink": "/apis/custom.metrics.k8s.io/v1beta1/namespaces/aiservice-test/pods/%2A/istio_ai_retry_per_second"
  },
  "items": []
}

Это правило,

 10   - seriesQuery: 'istio_ai_retry_count{destination_workload="cpuporncheck-default-k8s",reporter="destination"}'
 11     resources:
 12       overrides:
 13         destination_workload: {resource: "pod"}
 14         destination_workload_namespace: {resource: "namespace"}
 15     name:
 16       matches: "^(.*)_count"
 17       as: "${1}_per_second"
 18     metricsQuery: "sum(rate(istio_ai_retry_count{<<.LabelMatchers>>}[2m])) by (<<.GroupBy>>)"

Может ли кто-нибудь помочь мне проверить, что с ним не так?


person hackergodness    schedule 26.03.2020    source источник
comment
Что это за показатели istio_ai_retry_count? Кроме того, доступна ли эта метрика из панели управления Promethus?   -  person Matt    schedule 26.03.2020
comment
Привет, HelloWorld, что вы имеете в виду под «добрым», например, развертыванием, обслуживанием? Я могу получить значения показателей через панель управления. Запрос istio_ai_retry_count{destination_workload="cpuporncheck-default-k8s",reporter="destination"}   -  person hackergodness    schedule 27.03.2020
comment
Нет, я имею в виду, что выставляет этот показатель? Поиск в Google не помогает. Я хотел бы повторить вашу настройку.   -  person Matt    schedule 27.03.2020
comment
Собирается миксером istio. Я могу найти некоторые подсказки здесь. Но я не знаю, полезно ли это.   -  person hackergodness    schedule 30.03.2020
comment
Какой результат istio_ai_retry_count{destination_workload="cpuporncheck-default-k8s",reporter="destination"}   -  person Matt    schedule 30.03.2020
comment
Привет, HelloWorld, проблема решена. Я изменил "pod" на "deployment" в правилах. Также api доступа должен иметь вид · / apis / custom.metrics.k8s.io / v1beta1 / namespaces / {namespace_name} / deployment / {deployment_name} / {metric} `   -  person hackergodness    schedule 07.04.2020
comment
Не могли бы вы опубликовать это как ответ?   -  person Matt    schedule 07.04.2020
comment
Нет, все в порядке.   -  person hackergodness    schedule 15.04.2020


Ответы (1)


ОП подтвердил, что проблема связана с правилами.

Изменение pod на deployment и путь доступа api на sth, например:

 /apis/custom.metrics.k8s.io/v1beta1/namespaces/{namespace_name}/deployment/{deployment_name}/{metric}

решил вопрос.

person Community    schedule 21.04.2020