Графана для Kubernettes показывает использование процессора выше, чем 100% - PullRequest
0 голосов
/ 22 апреля 2020

У меня есть 10 узлов Kubernetes (считайте их виртуальными машинами), которые имеют от 7 до 14 выделяемых ядер ЦП, которые могут запрашиваться модулями Kubernetes. Поэтому я хотел бы показать использование ЦП кластера.

Это мой текущий запрос

sum(kube_pod_container_resource_requests_cpu_cores{node=~"$node"}) / sum(kube_node_status_allocatable_cpu_cores{node=~"$node"})

Этот запрос показывает странные результаты, например, более 400%.

I Я хотел бы добавить фильтр, чтобы рассчитать это только для узлов, которые имеют запущенные модули, поскольку могут существовать некоторые старые определения узлов, которые не являются пользовательскими. Я унаследовал эту настройку, поэтому мне не так легко обернуть ее вокруг.

Есть предложения с запросом, который я могу попробовать?

1 Ответ

0 голосов
/ 22 апреля 2020

Ваш текущий запрос суммирует загрузку ЦП каждого узла, поэтому он может показывать неверные данные.

Вы можете проверить загрузку ЦП всех модулей в кластере, выполнив:

sum(rate(container_cpu_usage_seconds_total{container_name!="POD",pod_name!=""}[5m]))

Если вы хотите проверить загрузку процессора для каждого запущенного модуля, вы можете использовать:

sum(rate(container_cpu_usage_seconds_total{container_name!="POD",pod_name!=""}[5m])) by (pod_name)
...