• /
  • EnglishEspañolFrançais日本語한국어Português
  • EntrarComeçar agora

Esta tradução de máquina é fornecida para sua comodidade.

Caso haja alguma divergência entre a versão em inglês e a traduzida, a versão em inglês prevalece. Acesse esta página para mais informações.

Criar um problema

Adaptador métrico New Relic

|View as Markdown (English)

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.

Você pode usar a métrica da sua conta New Relic para dimensionar automaticamente aplicativos e serviços em seu cluster do Kubernetes implantando o Adaptador métrica New Relic . Este adaptador busca os valores de métrica do New Relic e os disponibiliza para os escalonadores automáticos horizontais de pods.

O newrelic-k8s-metrics-adapter implementa a external.metrics.k8s.io API para dar suporte ao uso de New Relic NRQL resultados de consulta baseados em métricas externas. Uma vez implantado, o valor de cada métrica configurada é obtido através da API NerdGraph com base na consulta NRQL configurada.

O adaptador métrico expõe a métrica em um endpoint seguro com TLS.

Diagram showing the New Relic metrics adapter in a cluster

Adaptador métrico New Relic em cluster.

Requisitos

instalação

Para instalar o New Relic adaptador métrico , fornecemos o newrelic-k8s-metrics-adapter gráfico Helm , que também está incluído no nri-bundle gráfico usado para implantar todos os New Relic Kubernetes componentes .

  1. Se ainda não estiver instalado, instale nossa integração Kubernetes.

  2. Atualize a instalação para incluir o Adaptador métrico New Relic com o seguinte comando:

    bash
    $
    helm upgrade --install newrelic newrelic/nri-bundle \
    >
    --namespace newrelic --create-namespace --reuse-values \
    >
    --set metrics-adapter.enabled=true \
    >
    --set newrelic-k8s-metrics-adapter.personalAPIKey=YOUR_NEW_RELIC_PERSONAL_API_KEY \
    >
    --set newrelic-k8s-metrics-adapter.config.accountID=YOUR_NEW_RELIC_ACCOUNT_ID \
    >
    --set newrelic-k8s-metrics-adapter.config.externalMetrics.external_metric_name.query=NRQL query

Observe e ajuste os seguintes sinalizadores:

  • metrics-adapter.enabled: Deve ser configurado como true para que o gráfico do adaptador métrico seja instalado.

  • newrelic-k8s-metrics-adapter.personalAPIKey: Deve ser definido como uma chave de API pessoal válida do New Relic.

  • newrelic-k8s-metrics-adapter.config.accountID: Deve ser definido para uma conta New Relic válida de onde as métricas serão obtidas.

  • newrelic-k8s-metrics-adapter.config.externalMetrics.external_metric_name.query: adiciona uma nova métrica externa onde:

    • external_metric_name: o nome da métrica.
    • query: a consulta NRQL base usada para obter o valor da métrica.

Dica

Como alternativa, você pode usar um arquivo values.yaml que pode ser transmitido ao comando helm com a sinalização --values . Os arquivos de valores podem conter todos os parâmetros necessários para configurar a métrica explicada na seção de configuração .

Configuração

Você pode configurar múltiplas métricas no adaptador métrica e alterar alguns parâmetros para modificar o comportamento do cache métrico e da filtragem. Para ver a lista completa e as descrições de todos os parâmetros que podem ser modificados, consulte os arquivos do gráfico README.md e values.yaml .

Como funciona

O exemplo a seguir é um arquivo de valores do Helm que habilita o adaptador métrica na instalação do gráfico nri-bundle e configura a métrica nginx_average_requests :

newrelic-k8s-metrics-adapter:
enabled: true
personalAPIKey: <Personal API Key>
config:
accountID: <Account ID>
externalMetrics:
nginx_average_requests:
query: "FROM Metric SELECT average(nginx.server.net.requestsPerSecond) SINCE 2 MINUTES AGO"

Cuidado

O intervalo de tempo padrão para métrica é 1h. Portanto, você deve definir consulta com a cláusula SINCE para ajustar o intervalo de tempo de acordo com seu ambiente e necessidades.

Existe um HPA consumindo a métrica externa da seguinte forma:

kind: HorizontalPodAutoscaler
apiVersion: autoscaling/v2
metadata:
name: nginx-scaler
spec:
scaleTargetRef:
apiVersion: apps/v1
kind: Deployment
name: nginx
minReplicas: 1
maxReplicas: 10
metrics:
- type: External
external:
metric:
name: nginx_average_requests
selector:
matchLabels:
k8s.namespaceName: nginx
target:
type: Value
value: 10000

Com base na definição do HPA, o gerenciador do controlador busca a métrica da API métrica externa que é atendida pelo adaptador métrica New Relic .

O adaptador métrico New Relic recebe a consulta incluindo o nome da métrica nginx_average_requests e todos os seletores, e procura um nome de métrica correspondente na memória interna com base na métrica configurada. Em seguida, ele adiciona os seletores à consulta para formar uma consulta final que é executada usando o NerdGraph para buscar o valor do New Relic. O exemplo acima irá gerar uma consulta como a seguinte:

FROM Metric SELECT average(nginx.server.net.requestsPerSecond)
WHERE clusterName=CLUSTER_NAME AND `k8s.namespaceName`='nginx' SINCE 2 MINUTES AGO

Observe que um filtro clusterName foi adicionado automaticamente à consulta para excluir métricas de outros clusters na mesma conta. Você pode removê-lo usando o parâmetro de configuração removeClusterFilter . Além disso, o valor é armazenado em cache por um período de tempo definido pelo parâmetro de configuração cacheTTLSeconds , cujo padrão é 30 segundos.

Resolução de problemas

Copyright © 2026 New Relic Inc.

This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.