visualização
Ainda estamos trabalhando nesse recurso, mas adoraríamos que você experimentasse!
Atualmente, esse recurso é fornecido como parte de um programa de visualização de acordo com nossas políticas de pré-lançamento.
A observabilidade do OpenTelemetry para Kubernetes fornece uma configuração completa e de código aberto, combinada com uma interface de usuário Kubernetes de alto nível que já é compatível com nossa instrumentação Kubernetes proprietária. Nossa interface Kubernetes foi projetada para ser independente de provedor, permitindo que você selecione a instrumentação OpenTelemetry ou New Relic com base em suas necessidades.
Este documento descreve o processo de monitoramento de um cluster do Kubernetes usando OpenTelemetry. Envolve a instalação do gráfico Helm nr-k8s-otel-collector
dentro do cluster e a implantação do coletor necessário para permitir uma observabilidade de primeira classe.
Ao integrar componentes Kubernetes ao coletor OpenTelemetry , podemos transmitir métrica, evento e log diretamente para o New Relic. Esses sinais de telemetria aprimoram automaticamente nossas experiências prontas para uso, como o Kubernetes Navigator, dashboardvisão geral, o eventoKubernetes ou a página de resumoKubernetes APM .
Como funciona?
O gráfico Helm nr-k8s-otel-collector
implanta esses coletores OpenTelemetry :
Deamonset Collector: implantado em cada nó de trabalho e responsável por coletar métricas do host subjacente no nó, o
cAdvisor
, oKubelet
e coletar logs do contêiner.Coletor de implantação: implantar no nó do plano de controle e responsável pela coleta de métricas da métrica do estado de Kube e cluster do evento Kubernetes .
Requisitos
Para enviar dados de telemetria Kubernetes para New Relic, precisamos de um coletor OpenTelemetry . Nossa distribuição New Relic do OpenTelemetry (NRDOT) já está configurada para monitor automaticamente um cluster do Kubernetes. Ele faz isso implantando todos os componentes necessários por meio do nosso gráfico Helm nr-k8s-otel-collector
.
Se você mudar para um coletor OpenTelemetry diferente, certifique-se de que ele tenha todos os componentes principais necessários:
- Processador de atributos
- Processador de filtro
- Receptor de log de arquivos
- Processador GroupByAttrs
- Receptor Hostmetrics
- Processador K8sAttributes
- Receptor K8sevents
- Receptor Kubelet
- Processador MetricsTransform
- Receptor Prometheus
- Processador de detecção de recursos
- Processador de recursos
- Processador de transformação
Dica
Interessado em usar nossa observabilidade do Kubernetes OpenTelemetry, mas não quer instalar nosso gráfico Helm?
- Certifique-se de que seu coletor inclua os componentes destacados anteriormente.
- Siga as instruções de configuração fornecidas neste documento para configurar seu coletor adequadamente.
Instale seu cluster do Kubernetes com OpenTelemetry
Para colocar o OpenTelemetry em funcionamento em seu cluster, siga estas etapas:
Baixe o arquivo de valores do gráfico Helm e adapte-o para atender aos seus requisitos específicos.
O nome do cluster e são obrigatórios.
Confira a lista completa de parâmetros de configuração.
Instale o gráfico Helm junto com o arquivo de valores.
bash$helm repo add newrelic https://helm-charts.newrelic.com$helm upgrade nr-k8s-otel-collector newrelic/nr-k8s-otel-collector -f your-custom-values.yaml -n newrelic --create-namespace --installCertifique-se de que o pod tenha sido ativado com sucesso.
bash$kubectl get pods -n newrelic --watchCertifique-se de que New Relic esteja obtendo os dados necessários, incluindo métricas, eventos e log, executando a consulta correta. Consulte Introdução ao criador de consulta para obter mais informações.
FROM Metric SELECT * WHERE k8s.cluster.name='<CLUSTER_NAME>'FROM InfrastructureEvent SELECT * WHERE k8s.cluster.name='<CLUSTER_NAME>'FROM Log SELECT * WHERE k8s.cluster.name='<CLUSTER_NAME>'Se você estiver usando um cluster do GKE AutoPilot, será necessário aplicar a seguinte configuração no seu arquivo
values.yaml
para garantir a compatibilidade e a funcionalidade adequada do coletor OpenTelemetry .privileged: falsereceivers:filelog:enabled: falsedaemonset:containerSecurityContext:privileged: false
Desinstale seu cluster do Kubernetes com OpenTelemetry
Para interromper o monitoramento de um cluster do Kubernetes com OpenTelemetry, execute este comando:
$helm uninstall nr-k8s-otel-collector -n newrelic
Reduza a ingestão de dados
A opção LowDataMode
está habilitada por padrão para ingerir apenas as métricas exigidas pela nossa interface Kubernetes.
Se você precisar reduzir ainda mais a ingestão de dados, aumente o intervalo de raspagem nos valores do gráficonr-k8s-otel-collector
para cada componente implantado.
Métrica
Encontre e use dados
Confira estes documentos para saber mais sobre como encontrar dados:
Explore seu cluster do Kubernetes para saber o status do seu cluster, desde o plano de controle até os nós e pod.
Página de resumo doKubernetes APM que oferece insights sobre sua integração Kubernetes junto com seu aplicativo de monitor.
Resolução de problemas
Confira o log do pod coletor que está apresentando problemas. Execute este comando:
$kubectl logs <otel-pod-name> -n newrelic
Você também pode definir o parâmetro verboseLog
como true
no gráfico do Helm nr-k8s-otel-collector
.
Erros comuns
Confira a seção Erros comuns em nosso repositório GitHub.
Apoiar
Se você tiver problemas com a observabilidade do OpenTelemetry para Kubernetes:
Dê uma olhada na seção de problemas no GitHub para problemas semelhantes ou considere abrir um novo problema.
Entre em contato com o suporte da New Relic para obter assistência.