Запрос PromQL для получения информации об использовании ЦП в пространстве имен - PullRequest
0 голосов
/ 28 октября 2019

Я использую разные версии нашего приложения в разных пространствах имен, и я настроил стек prometheus и grafana для их мониторинга. Я использую ниже promql для получения использования процессором различных модулей (в процентах от 1 ядра), и возвращаемое значение соответствует значениям, которые я получаю из kubectl top pods -n namespace:

sum (rate (container_cpu_usage_seconds_total{id!="/",namespace=~"$Namespace",pod=~"^$Deployment.*$"}[1m])) by (pod)*100

Проблемая хочу получить общее использование ЦП всеми модулями в пространстве имен для всего кластера, и я пробовал разные запросы, но возвращаемые ими значения не соответствуют общему использованию ЦП, полученному из приведенного выше Promql или kubectl top pods -n namespace.

Promql-запросы, которые я пытался:

sum (rate (container_cpu_usage_seconds_total{namespace=~"$Namespace",pod=~"^$Deployment.*$"}[1m])) by (namespace)
sum (rate (container_cpu_usage_seconds_total{namespace=~"$Namespace",pod=~"^$Deployment.*$"}[1m]))

Я использую Singlestat для этого, а также в visualization из Value секции Я пробовал различные show методы, такие как Среднее, итого, текущее, но не вернуло правильное значение.

У меня вопрос, как я могу получить общее использование ЦП всеми модулями в пространстве имен всего кластера?

1 Ответ

0 голосов
/ 28 октября 2019

Я провел некоторое исследование и нашел несколько ответов, которые могли бы удовлетворить ваши потребности:

  1. Чтобы просто отслеживать использование ЦП на уровне кластера, используйте: sum (rate (container_cpu_usage_seconds_total{id="/"}[1m])) / sum (machine_cpu_cores) * 100

  2. Если вы хотите увидеть% использования ЦП для пространства имен, вам нужно сначала рассчитать использование ЦП пространства имен, а затем разделить его на доступный ЦП в кластере. Это выглядело бы так: sum (rate (container_cpu_usage_seconds_total{namespace="$Namespace"}[1m])) / sum(machine_cpu_cores) * 100

  3. Вы также можете использовать произвольные метки Прометея для вычисления использования ЦП пространства имен. Более подробную информацию можно найти здесь .

  4. Наконец, вы можете попробовать Экспортер Прометея .

Пожалуйста, дайте мне знать, если это помогло.

...