Дані метрик вузла
kubelet збирає статистичні дані метрик на рівні вузла, томів, pod та контейнерів, і надає цю інформацію через Summary API.
Ви можете надіслати запит з проксі до Summary API через сервер API Kubernetes.
Ось приклад запиту до Summary API для вузла з іменем minikube
:
kubectl get --raw "/api/v1/nodes/minikube/proxy/stats/summary"
Ось той самий виклик API за допомогою curl
:
# Спочатку потрібно запустити "kubectl proxy"
# Змініть 8080 на порт, який призначає "kubectl proxy"
curl http://localhost:8080/api/v1/nodes/minikube/proxy/stats/summary
Примітка:
Починаючи зmetrics-server
версії 0.6.x, metrics-server
запитує кінцеву точку kubelet /metrics/resource
, а не /stats/summary
.Джерело метрик Summary API
Стандартно, Kubernetes отримує дані метрик вузлів, використовуючи вбудований cAdvisor, який працює в kubelet. Якщо ви увімкнете функціональну можливість PodAndContainerStatsFromCRI
у вашому кластері та використовуєте середовище виконання контейнерів, яке підтримує доступ до статистики через Інтерфейс Виконання Контейнерів (CRI), тоді kubelet отримує дані метрик на рівні Pod та контейнерів за допомогою CRI, а не через cAdvisor.
Pressure Stall Information (PSI)
Kubernetes v1.33 [alpha]
У альфа-версії Kubernetes ви можете налаштувати kubelet для збору інформації про використання ядром Linux Pressure Stall Information (PSI) щодо використання CPU, памʼяті та вводу-виводу. Інформація збирається на рівні вузлів, podʼів та контейнерів. Докладну схему див. у Summary API. Щоб скористатися цією можливістю, вам слід увімкнути функціональну можливість KubeletPSI
. Інформацію також наведено у Prometheus metrics.
Вимоги
Pressure Stall Information вимагає:
Що далі
На сторінках завдань для Виправлення неполадок у кластерах обговорюється, як використовувати конвеєр метрик, який залежить від цих даних.