Почему загрузка ЦП рабочей нагрузки GKE не равна сумме использования ЦП его модулей? - PullRequest
0 голосов
/ 18 февраля 2020

Я пытаюсь выяснить, почему загрузка ЦП GKE "Workload" не эквивалентна сумме использования процессором его модулей.

На следующем рисунке показано использование ЦП рабочей нагрузки.

Загрузка ЦП рабочей нагрузки службы

На следующих изображениях показано использование ЦП модулей для вышеуказанной рабочей нагрузки.

Загрузка ЦП модуля №1

Загрузка ЦП Pod 2

Например, в 9:45 загрузка ЦП рабочей нагрузки составляла около 3,7 ядра, но в то же время загрузка ЦП Pod 1 составляла около 0,9 ядра, а Загрузка процессора под №2 тоже составляла около 0,9 ядра. Это означает, что загрузка ЦП службы должна была составлять около 1,8 ядер, но это не так.

Кто-нибудь имеет представление о таком поведении?

Спасибо.

Ответы [ 3 ]

0 голосов
/ 19 февраля 2020

Я подозреваю, что это ошибка в пользовательском интерфейсе. Фактического показателя c для использования ЦП развертывания не существует. Stackdriver Monitoring собирает данные только по метрикам уровня контейнера, модуля и узла , поэтому единственными действительно надежными показателями в этом случае являются показатели использования ЦП модуля.

График общего использования ЦП развертывания, скорее всего, представляет собой сумму всех показателей модуля, рассчитанных и затем представленных вам. Он не так надежен, как показатели для контейнера или контейнера, поскольку он не является прямым показателем c.

. Если вы постоянно видите это несоответствие, я рекомендую открыть отчет об ошибке пользовательского интерфейса через Google Publi. c Issue Tracker , чтобы сообщить об этом инженерам GCP.

0 голосов
/ 20 февраля 2020

Дэнни,

Диаграмма ЦП на странице «Рабочие нагрузки» представляет собой совокупную загрузку ЦП для управляемых модулей. Значения берутся из метрики c контейнера / процессора / времени использования Stackdriver Monitoring, проверьте эту ссылку . Этот показатель c представляет собой «совокупное использование ЦП всеми ядрами в секундах. Это число, деленное на истекшее время, представляет собой использование количества ядер, независимо от того, какое ограничение ядра может быть установлено».

Пожалуйста, Я знаю, если у вас есть дополнительные вопросы по этому поводу.

0 голосов
/ 18 февраля 2020

На вашей виртуальной машине, узле, управляемом Kubernetes, у вас есть развернутые модули (которыми вы управляете), а также несколько служб, которые работают на ней для наблюдения, управления, приема журналов, ... Основы c описание здесь

Все эти базовые службы c можно просмотреть, выполнив эту команду kubctl get all --namespace kube-system.

Если вы установили дополнительные компоненты, такие как Istio или Knative, у вас есть дополнительные услуги и пространства имен. Все они получают часть ресурсов узла.

...