Список всех модулей kubernetes, работающих на рабочем узле, отсортированных по использованию дискового пространства

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

Приведенная ниже команда помогает мне составить список модулей на основе заданного узла, но мое требование состоит в том, чтобы перечислить те модули, которые вызывают высокое использование дискового пространства, как часть расследования и решения состояния вытеснения DiskPressure.

kubectl get pods --all-namespaces -o wide --field-selector spec.nodeName=<NODE_NAME>

Мне удалось найти команды для вывода списка использования ЦП и памяти узлами (ссылка: https://github.com/kubernetes/kubernetes/issues/17512#issuecomment-317757388), но ничего, связанного с использованием диска узла.

alias util='kubectl get nodes --no-headers | awk '\''{print $1}'\'' | xargs -I {} sh -c '\''echo {} ; kubectl describe node {} | grep Allocated -A 5 | grep -ve Event -ve Allocated -ve percent -ve -- ; echo '\'''

# Get CPU request total (we x20 because because each m3.large has 2 vcpus (2000m) )
alias cpualloc='util | grep % | awk '\''{print $1}'\'' | awk '\''{ sum += $1 } END { if (NR > 0) { print sum/(NR*20), "%\n" } }'\'''

# Get mem request total (we multiply by 75 because because each m3.large has 7.5G ram )
alias memalloc='util | grep % | awk '\''{print $5}'\'' | awk '\''{ sum += $1 } END { if (NR > 0) { print sum/(NR*75), "%\n" } }'\'''

Я не думаю, что вы можете получить использование диска с помощью kubectl. Вы можете найти использование диска только с помощью exec в модуле и использовать команду linux du.

Bala 20.12.2020 23:00

Инструменты файловой системы лучше подходят для решения вашей проблемы. Проверьте этот ответ для примера. serverfault.com/a/994413/405997 Также может помочь распространенное du.

Olesya Bolobova 21.12.2020 00:27
Развертывание модели машинного обучения с помощью Flask - Angular в Kubernetes
Развертывание модели машинного обучения с помощью Flask - Angular в Kubernetes
Kubernetes - это портативная, расширяемая платформа с открытым исходным кодом для управления контейнерными рабочими нагрузками и сервисами, которая...
3
2
1 102
2
Перейти к ответу Данный вопрос помечен как решенный

Ответы 2

К сожалению, вы не сможете добиться этого с помощью kubectl, так как он не имеет такой функциональности. Один из способов — войти в узел и использовать docker ps -s.

Еще один способ, который я могу придумать, — это предоставить метрики kubelet/cadvisor и использовать их с парсером метрик, таким как Prometheus.

Kubelet предоставляет все свои метрики времени выполнения и все метрики cAdvisor на конечной точке /metrics в формате представления Prometheus. Обратите внимание, что kubelet также предоставляет метрики в конечных точках /metrics/cadvisor, /metrics/resource и /metrics/probes. Метрики диска обычно доступны на конечной точке /stats/summary.

Дополнительная информация:

Ответ принят как подходящий

нашел ответ на мое требование - список использования дисковых модулей, работающих на данном узле

kubectl get --raw /api/v1/nodes/<NODE_NAME>/proxy/stats/summary | jq '.pods[0] | "PodName: ", .podRef.name, "usedBytes: ", .containers[].rootfs.usedBytes'

Некоторые другие статистические данные:

получить использование файловой системы узла

kubectl get --raw /api/v1/nodes/<NODE_NAME>/proxy/stats/summary | jq '.node.fs.usedBytes'

получить использование node imageFs

kubectl get --raw /api/v1/nodes/<NODE_NAME>/proxy/stats/summary | jq '.node.runtime.imageFs.usedBytes'

получить статистику узла iNodes

kubectl get --raw /api/v1/nodes/<NODE_NAME>/proxy/stats/summary | jq '.node.fs.inodesFree'

kubectl get --raw /api/v1/nodes/<NODE_NAME>/proxy/stats/summary | jq '.node.runtime.imageFs.inodesFree'

Использование Rootfs + журналы + тома: kubectl get --raw /api/v1/nodes/k8s-w1/proxy/stats/summary | jq '.pods[] | "PodName: ", .podRef.name, "usedBytes:", .containers[].rootfs.usedBytes, "Logs:", .containers[].logs.usedBytes, "Volume:", .volume[].usedBytes'

VAS 12.01.2021 11:42

Другие вопросы по теме