Repolode
kubernetes

kubernetes/kube-state-metrics

Um serviço complementar do Kubernetes que monitora o servidor da API e expõe métricas do Prometheus sobre o estado de objetos como pods, deployments e nodes.

Estrelas
6,228
Forks
2,199
Issues abertas
117
Último commit
há 5 dias

O que é?

kube-state-metrics (KSM) monitora o servidor da API do Kubernetes e gera métricas sobre o estado de objetos como deployments, nodes e pods. O foco é a integridade dos objetos dentro de um cluster, e não a integridade interna dos componentes do Kubernetes. Além disso, expõe dados brutos da API sem aplicar as heurísticas que o kubectl usa para exibir informações.

As métricas são disponibilizadas em texto puro no endpoint HTTP /metrics, para serem coletadas pelo Prometheus ou por um scraper compatível. Elas refletem o estado atual do cluster, então objetos excluídos deixam de aparecer na saída. O consumo de recursos aumenta conforme o tamanho do cluster, e o projeto oferece orientações sobre sharding, filtragem de recursos e restrição de acesso por RBAC para ambientes grandes ou com acesso limitado.

O projeto é mantido pelo SIG Instrumentation, e o chart oficial do Helm é mantido no repositório helm-charts da prometheus-community.

Recursos principais

  • 01Gera métricas a partir de objetos da API do Kubernetes, sem modificá-los.
  • 02Expõe métricas no endpoint HTTP /metrics no formato do Prometheus.
  • 03Oferece suporte a sharding horizontal por UID de objeto ou a sharding automatizado com StatefulSet.
  • 04Permite filtrar os recursos coletados usando os parâmetros de consulta resources e exclude_resources.
  • 05Converte labels do Kubernetes em labels do Prometheus e resolve conflitos de nomes com sufixos.
  • 06Disponibiliza os endpoints de integridade /healthz, /livez e /readyz.

Casos de uso

  • Criar dashboards e alertas no Prometheus sobre a contagem de réplicas de deployments, as fases dos pods ou as condições dos nodes.
  • Monitorar a integridade das cargas de trabalho em um cluster sem alterar as aplicações em execução.
  • Distribuir a coleta de métricas entre várias instâncias quando um único cluster gera grandes volumes de métricas.

Início rápido

  1. 1

    Baixe a imagem do contêiner de registry.k8s.io

  2. 2

    Implante-a no cluster seguindo as instruções de Kubernetes Deployment ou Helm Chart no README

Antes de usar

  • Ele só é executado dentro de um cluster Kubernetes e precisa de acesso ao servidor de API.
  • Ele mantém um snapshot completo do estado do cluster na memória e, como orientação geral, precisa de cerca de 250MiB de memória e 0,1 núcleo.
  • As métricas de eventos padrão podem gerar altos custos de ingestão em alguns provedores de nuvem.
  • O recurso custom-resource-state está congelado em favor de resource-state-metrics.

Em coleções

Tópicos

Perguntas frequentes

O que é kube-state-metrics?
Um serviço complementar do Kubernetes que monitora o servidor da API e expõe métricas do Prometheus sobre o estado de objetos como pods, deployments e nodes. kube-state-metrics (KSM) monitora o servidor da API do Kubernetes e gera métricas sobre o estado de objetos como deployments, nodes e pods. O foco é a integridade dos objetos dentro de um cluster, e não a integridade interna dos componentes do Kubernetes. Além disso, expõe dados brutos da API sem aplicar as heurísticas que o kubectl usa para exibir informações.
kube-state-metrics é gratuito? Qual é a licença?
kube-state-metrics é open source sob a licença Apache-2.0. Confira os termos da licença antes de usá-lo em produtos comerciais.
kube-state-metrics ainda é mantido?
Manutenção ativa. O último commit de kube-state-metrics foi em 19 de out. de 2026.
Para que posso usar kube-state-metrics?
Criar dashboards e alertas no Prometheus sobre a contagem de réplicas de deployments, as fases dos pods ou as condições dos nodes. Monitorar a integridade das cargas de trabalho em um cluster sem alterar as aplicações em execução. Distribuir a coleta de métricas entre várias instâncias quando um único cluster gera grandes volumes de métricas.
Como instalar kube-state-metrics?
Baixe a imagem do contêiner de registry.k8s.io Implante-a no cluster seguindo as instruções de Kubernetes Deployment ou Helm Chart no README
Onde consigo kube-state-metrics?
O código-fonte e as instruções de instalação estão no GitHub: https://github.com/kubernetes/kube-state-metrics

Resumo gerado por IA a partir do README do projeto. As estatísticas do GitHub são atualizadas diariamente.

Projetos relacionados