Repolode
kubernetes

kubernetes/kube-state-metrics

Дополнительный сервис Kubernetes, который отслеживает API server и предоставляет метрики Prometheus о состоянии объектов, таких как поды, деплойменты и узлы.

Звёзды
6,228
Форки
2,199
Открытые issues
117
Последний коммит
5 дней назад

Что это?

kube-state-metrics (KSM) отслеживает Kubernetes API server и формирует метрики о состоянии объектов, например деплойментов, узлов и подов. Он показывает состояние объектов внутри кластера, а не внутреннее состояние компонентов Kubernetes, и предоставляет исходные данные из API без эвристик, которые kubectl применяет при отображении.

Метрики доступны в текстовом формате по HTTP-эндпоинту /metrics и предназначены для сбора Prometheus или совместимым сборщиком. Они отражают текущее состояние кластера, поэтому удалённые объекты исчезают из выдачи. Потребление ресурсов растёт вместе с размером кластера; для крупных кластеров и сред с ограниченным доступом проект предлагает рекомендации по шардингу, фильтрации ресурсов и ограничению доступа с помощью RBAC.

Проект развивается под руководством SIG Instrumentation, а официальный Helm chart поддерживается в репозитории prometheus-community helm-charts.

Ключевые возможности

  • 01Формирует метрики по объектам Kubernetes API без изменений исходных данных.
  • 02Предоставляет метрики в формате Prometheus по HTTP-эндпоинту /metrics.
  • 03Поддерживает горизонтальный шардинг по UID объектов и автоматический шардинг через StatefulSet.
  • 04Позволяет фильтровать собираемые ресурсы с помощью параметров запроса resources и exclude_resources.
  • 05Преобразует метки Kubernetes в метки Prometheus, устраняя конфликты имён с помощью суффиксов.
  • 06Предоставляет health-эндпоинты /healthz, /livez и /readyz.

Сценарии использования

  • Создание дашбордов и алертов Prometheus по числу реплик деплойментов, фазам подов или состоянию узлов.
  • Мониторинг состояния рабочих нагрузок во всём кластере без изменений запущенных в нём приложений.
  • Распределение сбора метрик между несколькими экземплярами, когда один кластер генерирует большой объём метрик.

Быстрый старт

  1. 1

    Загрузите образ контейнера из registry.k8s.io

  2. 2

    Разверните его в кластере, следуя инструкциям по Kubernetes Deployment или Helm Chart в README

Что важно знать

  • Он работает только внутри кластера Kubernetes и требует доступа к API-серверу.
  • Он хранит в памяти полный снимок состояния кластера, поэтому, согласно общим рекомендациям, ему требуется около 250MiB памяти и 0,1 ядра.
  • Метрики событий по умолчанию могут привести к высоким затратам на сбор данных у некоторых облачных провайдеров.
  • Разработка функции custom-resource-state заморожена в пользу resource-state-metrics.

В подборках

Темы

Частые вопросы

Что такое kube-state-metrics?
Дополнительный сервис Kubernetes, который отслеживает API server и предоставляет метрики Prometheus о состоянии объектов, таких как поды, деплойменты и узлы. kube-state-metrics (KSM) отслеживает Kubernetes API server и формирует метрики о состоянии объектов, например деплойментов, узлов и подов. Он показывает состояние объектов внутри кластера, а не внутреннее состояние компонентов Kubernetes, и предоставляет исходные данные из API без эвристик, которые kubectl применяет при отображении.
kube-state-metrics можно использовать бесплатно? Какая у него лицензия?
kube-state-metrics распространяется с открытым исходным кодом под лицензией Apache-2.0. Перед использованием в коммерческих продуктах проверьте условия лицензии.
kube-state-metrics всё ещё поддерживается?
Активно поддерживается. Последний коммит в kube-state-metrics — 19 окт. 2026 г..
Для чего можно использовать kube-state-metrics?
Создание дашбордов и алертов Prometheus по числу реплик деплойментов, фазам подов или состоянию узлов. Мониторинг состояния рабочих нагрузок во всём кластере без изменений запущенных в нём приложений. Распределение сбора метрик между несколькими экземплярами, когда один кластер генерирует большой объём метрик.
Как установить kube-state-metrics?
Загрузите образ контейнера из registry.k8s.io Разверните его в кластере, следуя инструкциям по Kubernetes Deployment или Helm Chart в README
Где скачать kube-state-metrics?
Исходный код и инструкции по установке — на GitHub: https://github.com/kubernetes/kube-state-metrics

Описание создано ИИ на основе README проекта. Статистика GitHub обновляется ежедневно.

Похожие проекты