Как сбросить использование ресурсов (ЦП, памяти) на пространство имен в k8s? - PullRequest
0 голосов
/ 25 января 2019

У меня есть список пространств имен, созданных в том же кластере k8s, и я хотел бы выяснить использование ресурсов (ЦП, памяти) для каждого пространства имен.Есть ли какая-нибудь команда, которую я могу использовать?

Ответы [ 3 ]

0 голосов
/ 25 января 2019

Спасибо, Рико, ответ хороший, но как дополнение:

Вы можете указать квоты ресурсов, а затем просмотреть их как указано здесь . Помимо этого, есть внешние инструменты мониторинга, такие как Прометей. Также есть Resource Explorer , который может:

Отображение исторического статистического использования ресурсов из StackDriver.

https://github.com/kubernetes/kubernetes/issues/55046

Список распределения ресурсов QoS для модулей в кластере. Вдохновлен:

https://github.com/kubernetes/kubernetes/issues/1751

Дело все еще открыто на GitHub , но, похоже, со временем должны произойти некоторые изменения, так как один из участников утверждает, что есть план по удалению kubectl top и использованию некоторых нативных решений, поэтому я советую следуйте этой теме.

0 голосов
/ 27 января 2019

Напишите скрипт оболочки, чтобы получить все пространства имен в кластере. Итерация по каждому пространству имен. Запустите kubectl верхний модуль. Сложите процессор и память всех модулей в пространстве имен.

0 голосов
/ 25 января 2019

Да.Вы можете использовать

$ kubectl -n <nampespace> top pod

Например:

$ kubectl top pod -n kube-system
NAME                                                                 CPU(cores)   MEMORY(bytes)
calico-node-xxxxx                                                    17m          166Mi
coredns-xxxxxxxxxx-xxxxx                                             2m           11Mi
coredns-xxxxxxxxxx-xxxxx                                             3m           11Mi
etcd-ip-x-x-x-x.us-west-2.compute.internal                           19m          149Mi
kube-apiserver-ip-x-x-x-x.us-west-2.compute.internal                 39m          754Mi
kube-controller-manager-ip-x-x-x-x.us-west-2.compute.internal        20m          138Mi
kube-proxy-xxxxx                                                     5m           12Mi
kube-scheduler-ip-x-x-x-x.us-west-2.compute.internal                 6m           17Mi
metrics-server-xxxxxxxxxx-xxxxx                                      0m           15Mi

Вам нужно сложить все записи в столбцах CPU и MEMORY, если вы хотите получить сумму.

Обратите внимание, что для работы kubectl top необходимо, чтобы metrics-server был настроен и настроен соответствующим образом.(Старые кластеры используют heapster )

...